eli-video-interview 1.2.23 → 1.2.26

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.
Files changed (108) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/esm/assets/icons/AI.svg +1 -0
  3. package/esm/components/AiHeaderTitle/index.d.ts +4 -0
  4. package/esm/components/AiHeaderTitle/index.js +19 -0
  5. package/esm/components/AiHeaderTitle/interface.d.ts +4 -0
  6. package/esm/components/AiHeaderTitle/interface.js +1 -0
  7. package/esm/components/Charts/Chart.d.ts +1 -1
  8. package/esm/components/Charts/Chart.js +8 -8
  9. package/esm/components/Charts/ReportPie.js +1 -1
  10. package/esm/modules/ai-ability/interface.d.ts +1 -0
  11. package/esm/modules/ai-question/components/AiAnalysis/AnalysisItem.d.ts +1 -1
  12. package/esm/modules/ai-question/components/AiAnalysis/AnalysisItem.js +12 -7
  13. package/esm/modules/ai-question/components/AiAnalysis/index.js +9 -17
  14. package/esm/modules/ai-question/components/AiAssessmentCriteria/const.d.ts +6 -0
  15. package/esm/modules/ai-question/components/AiAssessmentCriteria/const.js +7 -0
  16. package/esm/modules/ai-question/components/AiAssessmentCriteria/index.d.ts +1 -1
  17. package/esm/modules/ai-question/components/AiAssessmentCriteria/index.js +27 -26
  18. package/esm/modules/ai-question/components/AiAssessmentCriteria/interface.d.ts +6 -0
  19. package/esm/modules/ai-question/components/QuestionModel/index.js +6 -6
  20. package/esm/modules/ai-question/components/QuestionUpdate/Form.d.ts +1 -1
  21. package/esm/modules/ai-question/components/QuestionUpdate/Form.js +19 -10
  22. package/esm/modules/ai-question/components/QuestionUpdate/index.js +60 -11
  23. package/esm/modules/ai-question/interface.d.ts +2 -0
  24. package/esm/modules/ai-report/Root.js +7 -5
  25. package/esm/modules/ai-report/components/AIEvaluate/index.js +10 -9
  26. package/esm/modules/ai-report/components/ScoreReport/Bar.js +3 -3
  27. package/esm/modules/ai-report/components/ScoreReport/Report.js +13 -5
  28. package/esm/modules/ai-report/components/Suggestion/Suggestion.d.ts +4 -0
  29. package/esm/modules/ai-report/components/Suggestion/Suggestion.js +29 -0
  30. package/esm/modules/ai-report/components/Suggestion/index.d.ts +2 -0
  31. package/esm/modules/ai-report/components/Suggestion/index.js +27 -0
  32. package/esm/modules/ai-report/components/VideoQuestion/Abilities.d.ts +1 -1
  33. package/esm/modules/ai-report/components/VideoQuestion/Abilities.js +5 -5
  34. package/esm/modules/ai-report/components/VideoQuestion/QuestionItem.d.ts +1 -1
  35. package/esm/modules/ai-report/components/VideoQuestion/QuestionItem.js +9 -9
  36. package/esm/modules/ai-report/components/VideoQuestion/index.js +4 -3
  37. package/esm/modules/ai-report/components/WorkPlaces/ScoreSlider.d.ts +4 -0
  38. package/esm/modules/ai-report/components/WorkPlaces/ScoreSlider.js +24 -0
  39. package/esm/modules/ai-report/components/WorkPlaces/WorkPlace.d.ts +11 -0
  40. package/esm/modules/ai-report/components/WorkPlaces/WorkPlace.js +55 -0
  41. package/esm/modules/ai-report/components/WorkPlaces/index.d.ts +2 -0
  42. package/esm/modules/ai-report/components/WorkPlaces/index.js +67 -0
  43. package/esm/modules/ai-report/components/WorkPlaces/interface.d.ts +7 -0
  44. package/esm/modules/ai-report/components/WorkPlaces/interface.js +1 -0
  45. package/esm/modules/ai-report/components/WorkPlaces/styled.d.ts +62 -0
  46. package/esm/modules/ai-report/components/WorkPlaces/styled.js +27 -0
  47. package/esm/modules/ai-report/interface.d.ts +38 -0
  48. package/esm/services/ai-ability.d.ts +1 -0
  49. package/esm/services/ai-report.d.ts +5 -0
  50. package/esm/services/ai-report.js +4 -0
  51. package/esm/store/ai-ability/question-ability-store.d.ts +12 -0
  52. package/esm/store/ai-ability/question-ability-store.js +10 -0
  53. package/esm/store/ai-question/ai-analysis-store.d.ts +5 -1
  54. package/esm/store/ai-question/ai-analysis-store.js +36 -11
  55. package/lib/assets/icons/AI.svg +1 -0
  56. package/lib/components/AiHeaderTitle/index.d.ts +4 -0
  57. package/lib/components/AiHeaderTitle/index.js +24 -0
  58. package/lib/components/AiHeaderTitle/interface.d.ts +4 -0
  59. package/lib/components/AiHeaderTitle/interface.js +2 -0
  60. package/lib/components/Charts/Chart.d.ts +1 -1
  61. package/lib/components/Charts/Chart.js +8 -8
  62. package/lib/components/Charts/ReportPie.js +1 -1
  63. package/lib/modules/ai-ability/interface.d.ts +1 -0
  64. package/lib/modules/ai-question/components/AiAnalysis/AnalysisItem.d.ts +1 -1
  65. package/lib/modules/ai-question/components/AiAnalysis/AnalysisItem.js +12 -7
  66. package/lib/modules/ai-question/components/AiAnalysis/index.js +8 -16
  67. package/lib/modules/ai-question/components/AiAssessmentCriteria/const.d.ts +6 -0
  68. package/lib/modules/ai-question/components/AiAssessmentCriteria/const.js +8 -1
  69. package/lib/modules/ai-question/components/AiAssessmentCriteria/index.d.ts +1 -1
  70. package/lib/modules/ai-question/components/AiAssessmentCriteria/index.js +27 -26
  71. package/lib/modules/ai-question/components/AiAssessmentCriteria/interface.d.ts +6 -0
  72. package/lib/modules/ai-question/components/QuestionModel/index.js +6 -6
  73. package/lib/modules/ai-question/components/QuestionUpdate/Form.d.ts +1 -1
  74. package/lib/modules/ai-question/components/QuestionUpdate/Form.js +19 -10
  75. package/lib/modules/ai-question/components/QuestionUpdate/index.js +60 -11
  76. package/lib/modules/ai-question/interface.d.ts +2 -0
  77. package/lib/modules/ai-report/Root.js +7 -5
  78. package/lib/modules/ai-report/components/AIEvaluate/index.js +9 -8
  79. package/lib/modules/ai-report/components/ScoreReport/Bar.js +3 -3
  80. package/lib/modules/ai-report/components/ScoreReport/Report.js +13 -5
  81. package/lib/modules/ai-report/components/Suggestion/Suggestion.d.ts +4 -0
  82. package/lib/modules/ai-report/components/Suggestion/Suggestion.js +31 -0
  83. package/lib/modules/ai-report/components/Suggestion/index.d.ts +2 -0
  84. package/lib/modules/ai-report/components/Suggestion/index.js +32 -0
  85. package/lib/modules/ai-report/components/VideoQuestion/Abilities.d.ts +1 -1
  86. package/lib/modules/ai-report/components/VideoQuestion/Abilities.js +5 -5
  87. package/lib/modules/ai-report/components/VideoQuestion/QuestionItem.d.ts +1 -1
  88. package/lib/modules/ai-report/components/VideoQuestion/QuestionItem.js +9 -9
  89. package/lib/modules/ai-report/components/VideoQuestion/index.js +4 -3
  90. package/lib/modules/ai-report/components/WorkPlaces/ScoreSlider.d.ts +4 -0
  91. package/lib/modules/ai-report/components/WorkPlaces/ScoreSlider.js +26 -0
  92. package/lib/modules/ai-report/components/WorkPlaces/WorkPlace.d.ts +11 -0
  93. package/lib/modules/ai-report/components/WorkPlaces/WorkPlace.js +57 -0
  94. package/lib/modules/ai-report/components/WorkPlaces/index.d.ts +2 -0
  95. package/lib/modules/ai-report/components/WorkPlaces/index.js +72 -0
  96. package/lib/modules/ai-report/components/WorkPlaces/interface.d.ts +7 -0
  97. package/lib/modules/ai-report/components/WorkPlaces/interface.js +2 -0
  98. package/lib/modules/ai-report/components/WorkPlaces/styled.d.ts +62 -0
  99. package/lib/modules/ai-report/components/WorkPlaces/styled.js +30 -0
  100. package/lib/modules/ai-report/interface.d.ts +38 -0
  101. package/lib/services/ai-ability.d.ts +1 -0
  102. package/lib/services/ai-report.d.ts +5 -0
  103. package/lib/services/ai-report.js +6 -1
  104. package/lib/store/ai-ability/question-ability-store.d.ts +12 -0
  105. package/lib/store/ai-ability/question-ability-store.js +13 -0
  106. package/lib/store/ai-question/ai-analysis-store.d.ts +5 -1
  107. package/lib/store/ai-question/ai-analysis-store.js +36 -11
  108. package/package.json +1 -7
@@ -13,7 +13,9 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
13
13
  import AIEvaluate from './components/AIEvaluate';
14
14
  import NotFinish from './components/NotFinish';
15
15
  import ScoreReport from './components/ScoreReport';
16
+ import Suggestion from './components/Suggestion';
16
17
  import VideoQuestion from './components/VideoQuestion';
18
+ import WorkPlaces from './components/WorkPlaces';
17
19
  import { INTERVIEW_STATUS } from "../../enum/ai-report";
18
20
  import { PostAiInterviewResult } from "../../services/ai-report";
19
21
  import { useAiReportStore } from "../../store/ai-report/global-store";
@@ -25,8 +27,8 @@ var AiReportRoot = forwardRef(function (props, ref) {
25
27
  var token = props.token, reminderSent = props.reminderSent, operableButtons = props.operableButtons, onLoad = props.onLoad, onSendReminderClick = props.onSendReminderClick;
26
28
  var firstLoad = useRef(true);
27
29
  var _a = useAiReportStore(), updateState = _a.updateState, updateReportResult = _a.updateReportResult, reportResult = _a.reportResult;
28
- var _b = (reportResult || {}).collection, collection = _b === void 0 ? [] : _b;
29
- var _c = useRequest(function () { return PostAiInterviewResult([token]); }, {
30
+ var _b = reportResult || {}, _c = _b.collection, collection = _c === void 0 ? [] : _c, _d = _b.suggestion, suggestion = _d === void 0 ? { abilitys: [] } : _d, _e = _b.workplaces, workplaces = _e === void 0 ? [] : _e;
31
+ var _f = useRequest(function () { return PostAiInterviewResult([token]); }, {
30
32
  manual: true,
31
33
  onSuccess: function (_a) {
32
34
  var list = _a.data.list;
@@ -44,7 +46,7 @@ var AiReportRoot = forwardRef(function (props, ref) {
44
46
  onLoad === null || onLoad === void 0 ? void 0 : onLoad(__assign({ pageStepIndexes: pageStepIndexes_1 }, result));
45
47
  }
46
48
  },
47
- }), data = _c.data, loading = _c.loading, postAiInterviewResult = _c.run;
49
+ }), data = _f.data, loading = _f.loading, postAiInterviewResult = _f.run;
48
50
  var status = (data === null || data === void 0 ? void 0 : data.data.list[0].status) || NO_ANSWER;
49
51
  var handleRefreshSuccess = useCallback(function () {
50
52
  postAiInterviewResult();
@@ -66,9 +68,9 @@ var AiReportRoot = forwardRef(function (props, ref) {
66
68
  return (_jsxs(Box, __assign({ width: "100%", display: "flex", alignItems: "center", justifyContent: "center", flexDirection: "column", style: { marginTop: '149px' } }, { children: [_jsx(Box, { children: _jsx("img", { src: "//webcdn.fbmms.cn/web/saas/asset/image/CandidateInfoEmpty.png", alt: "", style: { width: '140px', height: '140px' } }) }), _jsx(Box, __assign({ mt: 2 }, { children: _jsx(Typography, __assign({ variant: "body1", color: "textPrimary", style: { fontWeight: '500' } }, { children: "\u8BE5\u5019\u9009\u4EBA\u5C1A\u672A\u5F00\u59CB\u9762\u8BD5" })) })), (operableButtons === null || operableButtons === void 0 ? void 0 : operableButtons.includes('sendReminder')) && (_jsxs(_Fragment, { children: [_jsx(Box, __assign({ style: { marginTop: '2px' } }, { children: _jsx(Typography, __assign({ variant: "body2", color: "textSecondary" }, { children: "\u82E5\u957F\u65F6\u95F4\u672A\u5F00\u59CB\uFF0C\u5EFA\u8BAE\u4F60\u7ED9\u5019\u9009\u4EBA\u53D1\u9001\u77ED\u4FE1\u63D0\u9192" })) })), _jsx(Box, __assign({ mt: 2 }, { children: _jsx(Button, __assign({ size: "large", variant: "outlined", color: "primary", disabled: reminderSent, onClick: onSendReminderClick }, { children: reminderSent ? '已提醒' : '发送提醒' })) }))] }))] })));
67
69
  }
68
70
  else {
69
- return (_jsxs(Box, { children: [_jsx(NotFinish, {}), (collection === null || collection === void 0 ? void 0 : collection.length) > 0 && _jsx(ScoreReport, { onRefreshSuccess: handleRefreshSuccess }), (collection === null || collection === void 0 ? void 0 : collection.length) > 0 && _jsx(AIEvaluate, {}), _jsx(VideoQuestion, {})] }));
71
+ return (_jsxs(Box, { children: [_jsx(NotFinish, {}), (collection === null || collection === void 0 ? void 0 : collection.length) > 0 && _jsx(ScoreReport, { onRefreshSuccess: handleRefreshSuccess }), (workplaces === null || workplaces === void 0 ? void 0 : workplaces.length) > 0 && _jsx(WorkPlaces, {}), (collection === null || collection === void 0 ? void 0 : collection.length) > 0 && _jsx(AIEvaluate, {}), _jsx(Suggestion, {}), _jsx(VideoQuestion, {})] }));
70
72
  }
71
- }, [handleRefreshSuccess, onSendReminderClick, reminderSent, status, operableButtons, collection]);
73
+ }, [handleRefreshSuccess, onSendReminderClick, reminderSent, status, operableButtons, collection, workplaces, suggestion]);
72
74
  return (_jsx(Box, __assign({ loading: firstLoad.current && loading, sx: { width: '100%', minHeight: '584px', height: '100%', margin: '0 auto', overflow: 'auto' } }, { children: aiReportResult })));
73
75
  });
74
76
  AiReportRoot.displayName = 'AiReportRoot';
@@ -10,30 +10,31 @@ var __assign = (this && this.__assign) || function () {
10
10
  return __assign.apply(this, arguments);
11
11
  };
12
12
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
+ import { rankPercent } from '../../utils';
13
14
  import Evaluate from './Evaluate';
14
15
  import Graph from './Graph';
15
16
  import { useAiReportStore } from "../../../../store/ai-report/global-store";
17
+ import AiHeaderTitle from "../../../../components/AiHeaderTitle";
16
18
  import { InfoOutlineIcon, Link, Tooltip, Typography } from 'fbm-ui';
17
- import { Box, Paper, Stack, Collapse, Divider } from 'fbm-ui/lib/mui';
19
+ import { Box, Collapse, Divider, Paper, Stack } from 'fbm-ui/lib/mui';
18
20
  import { useCallback, useState } from 'react';
19
- import { rankPercent } from '../../utils';
20
21
  var Index = function () {
21
- var _a;
22
- var _b = useAiReportStore(function (store) { return [
22
+ var _a, _b;
23
+ var _c = useAiReportStore(function (store) { return [
23
24
  store.reportResult,
24
25
  store.operableButtons,
25
- ]; }), reportResult = _b.reportResult, showAiDimension = _b.showAiDimension, canEditAiDimension = _b.canEditAiDimension, customInterviewDimRankMap = _b.customInterviewDimRankMap;
26
- var _c = useState(true), expand = _c[0], setExpand = _c[1];
26
+ ]; }), reportResult = _c.reportResult, showAiDimension = _c.showAiDimension, canEditAiDimension = _c.canEditAiDimension, customInterviewDimRankMap = _c.customInterviewDimRankMap;
27
+ var _d = useState(true), expand = _d[0], setExpand = _d[1];
27
28
  var handleExpandChange = useCallback(function () {
28
29
  setExpand(!expand);
29
30
  }, [expand]);
30
- if (!showAiDimension)
31
+ if (!showAiDimension || ((_a = reportResult === null || reportResult === void 0 ? void 0 : reportResult.evaluations) === null || _a === void 0 ? void 0 : _a.length) === 0)
31
32
  return null;
32
- return (_jsxs(Box, __assign({ component: Paper, variant: "outlined", px: 2, mt: 2 }, { children: [_jsxs(Stack, __assign({ direction: "row", height: 56, alignItems: "center", spacing: 1 }, { children: [_jsx(Typography, __assign({ variant: "body1", fontWeight: "medium", sx: { fontWeight: 500 } }, { children: "AI\u7EF4\u5EA6\u8868\u73B0" })), _jsx(Tooltip, __assign({ title: _jsxs("span", { children: ["\u7ED3\u679C\u8BF4\u660E\uFF1A", _jsx("br", {}), "AI\u7EF4\u5EA6\u8868\u73B0\u4ECE\u8BED\u901F\u3001\u666E\u901A\u8BDD\u3001\u8BED\u8A00\u6D41\u7545\u5EA6\u3001\u8981\u70B9\u5206\u6790\u5339\u914D\u5EA6\u3001\u8BED\u8A00\u4E30\u5BCC\u5EA6\u3001\u5F62\u8C61\u516D\u4E2A\u7EF4\u5EA6\u5BF9\u5019\u9009\u4EBA\u5728\u9762\u8BD5\u4E2D\u7684\u56DE\u7B54\u8868\u73B0\u8FDB\u884C\u8BC4\u4EF7\uFF0C\u6BCF\u4E2A\u7EF4\u5EA6\u5206\u4E3A\u4E09\u4E2A\u6863\uFF0C\u5206\u522B\u4E3A\uFF1A\u524D30%\u4EE3\u8868\u4F18\u79C0\u3001\u4E2D\u95F430%~70%\u4EE3\u8868\u9002\u4E2D\u3001\u540E30%\u4EE3\u8868\u6B20\u4F73\u3002", _jsx("br", {}), "\u6BCF\u4E2A\u80FD\u529B\u7684\u4E09\u6863\u7684\u5206\u6570\u503C\u4F9D\u636E\u5168\u56FD\u5927\u6570\u636E\u7EDF\u8BA1\u800C\u5B9A\u3002\u6839\u636E\u5019\u9009\u4EBA\u5F53\u524DAI\u89C6\u9891\u6B65\u9AA4\u4E0B\u7684\u6BCF\u4E2A\u80FD\u529B\u7684\u5E73\u5747\u5206\u6765\u786E\u5B9A\u6BCF\u4E2A\u80FD\u529B\u7684\u8BC4\u4EF7\u3002\u76F8\u540C\u7684\u5F97\u5206\uFF0C\u6210\u7EE9\u5148\u51FA\u7684\u6392\u540D\u9760\u524D\u3002"] }) }, { children: _jsx(Box, __assign({ display: "flex", alignItems: "center" }, { children: _jsx(InfoOutlineIcon, { sx: { fontSize: '16px' } }) })) }))] })), _jsxs(Collapse, __assign({ in: expand }, { children: [(_a = reportResult === null || reportResult === void 0 ? void 0 : reportResult.evaluations) === null || _a === void 0 ? void 0 : _a.map(function (v) {
33
+ return (_jsxs(Box, __assign({ component: Paper, variant: "outlined", px: 2, mt: 2 }, { children: [_jsxs(Stack, __assign({ direction: "row", height: 56, alignItems: "center", spacing: 1, marginBottom: 1 }, { children: [_jsx(AiHeaderTitle, { name: "AI\u57FA\u7840\u80FD\u529B" }), _jsx(Tooltip, __assign({ title: _jsxs("span", { children: ["\u7ED3\u679C\u8BF4\u660E\uFF1A", _jsx("br", {}), "AI\u57FA\u7840\u80FD\u529B\u4ECE\u8BED\u901F\u3001\u666E\u901A\u8BDD\u3001\u8BED\u8A00\u6D41\u7545\u5EA6\u3001\u8981\u70B9\u5206\u6790\u5339\u914D\u5EA6\u3001\u8BED\u8A00\u4E30\u5BCC\u5EA6\u3001\u5F62\u8C61\u516D\u4E2A\u7EF4\u5EA6\u5BF9\u5019\u9009\u4EBA\u5728\u9762\u8BD5\u4E2D\u7684\u56DE\u7B54\u8868\u73B0\u8FDB\u884C\u8BC4\u4EF7\uFF0C\u6BCF\u4E2A\u7EF4\u5EA6\u5206\u4E3A\u4E09\u4E2A\u6863\uFF0C\u5206\u522B\u4E3A\uFF1A\u524D30%\u4EE3\u8868\u4F18\u79C0\u3001\u4E2D\u95F430%~70%\u4EE3\u8868\u9002\u4E2D\u3001\u540E30%\u4EE3\u8868\u6B20\u4F73\u3002", _jsx("br", {}), "\u6BCF\u4E2A\u80FD\u529B\u7684\u4E09\u6863\u7684\u5206\u6570\u503C\u4F9D\u636E\u5168\u56FD\u5927\u6570\u636E\u7EDF\u8BA1\u800C\u5B9A\u3002\u6839\u636E\u5019\u9009\u4EBA\u5F53\u524DAI\u89C6\u9891\u6B65\u9AA4\u4E0B\u7684\u6BCF\u4E2A\u80FD\u529B\u7684\u5E73\u5747\u5206\u6765\u786E\u5B9A\u6BCF\u4E2A\u80FD\u529B\u7684\u8BC4\u4EF7\u3002\u76F8\u540C\u7684\u5F97\u5206\uFF0C\u6210\u7EE9\u5148\u51FA\u7684\u6392\u540D\u9760\u524D\u3002"] }) }, { children: _jsx(Box, __assign({ display: "flex", alignItems: "center" }, { children: _jsx(InfoOutlineIcon, { sx: { fontSize: '16px' } }) })) }))] })), _jsxs(Collapse, __assign({ in: expand }, { children: [(_b = reportResult === null || reportResult === void 0 ? void 0 : reportResult.evaluations) === null || _b === void 0 ? void 0 : _b.map(function (v) {
33
34
  var _a;
34
35
  var c = customInterviewDimRankMap === null || customInterviewDimRankMap === void 0 ? void 0 : customInterviewDimRankMap[v.evaluationToken];
35
36
  var rank = rankPercent((c === null || c === void 0 ? void 0 : c.rank) || (v === null || v === void 0 ? void 0 : v.rank), (c === null || c === void 0 ? void 0 : c.total) || (v === null || v === void 0 ? void 0 : v.total));
36
37
  return (_jsxs(Box, __assign({ component: Paper, elevation: 0, bgcolor: "#f9f9f9", mb: 2, pb: 2 }, { children: [_jsxs(Stack, __assign({ px: 2, pt: 2 }, { children: [_jsxs(Stack, __assign({ direction: "row", alignItems: "center", spacing: 2 }, { children: [_jsx(Typography, __assign({ variant: "h6", fontWeight: "medium", sx: { fontWeight: 500 } }, { children: v.evaluationDimensionName })), !isNaN(rank) && (_jsxs(Typography, __assign({ variant: "body2" }, { children: ["\u51FB\u8D25\u4E86", _jsxs(Typography, __assign({ variant: "body2", fontWeight: "medium", display: "inline", color: "#4caf50" }, { children: [rank.toFixed(2), "%"] })), "\u7684\u5019\u9009\u4EBA"] })))] })), _jsx(Typography, __assign({ mt: 1, mb: 2, variant: "body2", fontWeight: "medium", color: "#4caf50" }, { children: v.impressions.join('、') }))] })), _jsx(Divider, { sx: { borderColor: 'rgba(0,0,0,0.08)' } }), _jsxs(Stack, __assign({ px: 2 }, { children: [((_a = v.items) === null || _a === void 0 ? void 0 : _a.length) > 0 && (_jsx(Box, __assign({ mt: 2 }, { children: _jsx(Graph, { items: v.items }) }))), _jsxs(Stack, __assign({ spacing: 2, mt: 2 }, { children: [_jsx(Evaluate, { canEdit: canEditAiDimension, token: v.evaluationToken, evaluations: v.evaluations, title: "\u8BC4\u4EF7\u5185\u5BB9", field: "evaluations", mode: "show" }), _jsx(Evaluate, { canEdit: canEditAiDimension, token: v.evaluationToken, evaluations: v.suggestions, title: "\u63D0\u9AD8\u5EFA\u8BAE", field: "suggestions", mode: "show" })] }))] }))] }), v.evaluationToken));
37
- }), _jsxs(Stack, __assign({ spacing: 1, mt: 4 }, { children: [_jsx(Typography, __assign({ variant: "body2", fontWeight: "medium", color: "textSecondary" }, { children: "\u7ED3\u679C\u8BF4\u660E" })), _jsxs(Typography, __assign({ variant: "caption", color: "rgba(0,0,0,0.26)" }, { children: ["AI\u7EF4\u5EA6\u8868\u73B0\u4ECE\u8BED\u901F\u3001\u666E\u901A\u8BDD\u3001\u8BED\u8A00\u6D41\u7545\u5EA6\u3001\u8981\u70B9\u5206\u6790\u5339\u914D\u5EA6\u3001\u8BED\u8A00\u4E30\u5BCC\u5EA6\u3001\u5F62\u8C61\u516D\u4E2A\u7EF4\u5EA6\u5BF9\u5019\u9009\u4EBA\u5728\u9762\u8BD5\u4E2D\u7684\u56DE\u7B54\u8868\u73B0\u8FDB\u884C\u8BC4\u4EF7\uFF0C\u6BCF\u4E2A\u7EF4\u5EA6\u5206\u4E3A\u4E09\u4E2A\u6863\uFF0C\u5206\u522B\u4E3A\uFF1A\u524D30%\u4EE3\u8868\u4F18\u79C0\u3001\u4E2D\u95F430%~70%\u4EE3\u8868\u9002\u4E2D\u3001\u540E30%\u4EE3\u8868\u6B20\u4F73\u3002", _jsx("br", {}), "\u6BCF\u4E2A\u80FD\u529B\u7684\u4E09\u6863\u7684\u5206\u6570\u503C\u4F9D\u636E\u5168\u56FD\u5927\u6570\u636E\u7EDF\u8BA1\u800C\u5B9A\u3002\u6839\u636E\u5019\u9009\u4EBA\u5F53\u524DAI\u89C6\u9891\u6B65\u9AA4\u4E0B\u7684\u6BCF\u4E2A\u80FD\u529B\u7684\u5E73\u5747\u5206\u6765\u786E\u5B9A\u6BCF\u4E2A\u80FD\u529B\u7684\u8BC4\u4EF7\u3002\u76F8\u540C\u7684\u5F97\u5206\uFF0C\u6210\u7EE9\u5148\u51FA\u7684\u6392\u540D\u9760\u524D\u3002"] }))] }))] })), _jsx(Box, __assign({ display: "flex", justifyContent: "flex-end", alignItems: "center", mt: 1, mb: 2 }, { children: _jsx(Link, { href: "#", onClick: handleExpandChange, text: expand ? '收起' : '查看详情' }) }))] })));
38
+ }), _jsxs(Stack, __assign({ spacing: 1, mt: 4 }, { children: [_jsx(Typography, __assign({ variant: "body2", fontWeight: "medium", color: "textSecondary" }, { children: "\u7ED3\u679C\u8BF4\u660E" })), _jsxs(Typography, __assign({ variant: "caption", color: "rgba(0,0,0,0.26)" }, { children: ["AI\u57FA\u7840\u80FD\u529B\u4ECE\u8BED\u901F\u3001\u666E\u901A\u8BDD\u3001\u8BED\u8A00\u6D41\u7545\u5EA6\u3001\u8981\u70B9\u5206\u6790\u5339\u914D\u5EA6\u3001\u8BED\u8A00\u4E30\u5BCC\u5EA6\u3001\u5F62\u8C61\u516D\u4E2A\u7EF4\u5EA6\u5BF9\u5019\u9009\u4EBA\u5728\u9762\u8BD5\u4E2D\u7684\u56DE\u7B54\u8868\u73B0\u8FDB\u884C\u8BC4\u4EF7\uFF0C\u6BCF\u4E2A\u7EF4\u5EA6\u5206\u4E3A\u4E09\u4E2A\u6863\uFF0C\u5206\u522B\u4E3A\uFF1A\u524D30%\u4EE3\u8868\u4F18\u79C0\u3001\u4E2D\u95F430%~70%\u4EE3\u8868\u9002\u4E2D\u3001\u540E30%\u4EE3\u8868\u6B20\u4F73\u3002", _jsx("br", {}), "\u6BCF\u4E2A\u80FD\u529B\u7684\u4E09\u6863\u7684\u5206\u6570\u503C\u4F9D\u636E\u5168\u56FD\u5927\u6570\u636E\u7EDF\u8BA1\u800C\u5B9A\u3002\u6839\u636E\u5019\u9009\u4EBA\u5F53\u524DAI\u89C6\u9891\u6B65\u9AA4\u4E0B\u7684\u6BCF\u4E2A\u80FD\u529B\u7684\u5E73\u5747\u5206\u6765\u786E\u5B9A\u6BCF\u4E2A\u80FD\u529B\u7684\u8BC4\u4EF7\u3002\u76F8\u540C\u7684\u5F97\u5206\uFF0C\u6210\u7EE9\u5148\u51FA\u7684\u6392\u540D\u9760\u524D\u3002"] }))] }))] })), _jsx(Box, __assign({ display: "flex", justifyContent: "flex-end", alignItems: "center", mt: 1, mb: 2 }, { children: _jsx(Link, { href: "#", onClick: handleExpandChange, text: expand ? '收起' : '查看详情' }) }))] })));
38
39
  };
39
40
  export default Index;
@@ -10,11 +10,11 @@ var __assign = (this && this.__assign) || function () {
10
10
  return __assign.apply(this, arguments);
11
11
  };
12
12
  import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
13
- import { rankPercent } from '../../utils';
13
+ import { useEffect, useState } from 'react';
14
+ import { Box, Typography } from 'fbm-ui';
14
15
  import { scoreRankIntervalColors } from "../../../../constants/ai-report";
15
16
  import { useAiReportStore } from "../../../../store/ai-report/global-store";
16
- import { Box, Typography } from 'fbm-ui';
17
- import { useEffect, useState } from 'react';
17
+ import { rankPercent } from '../../utils';
18
18
  var Bar = function () {
19
19
  var _a = useState(1), currentRank = _a[0], setCurrentRank = _a[1];
20
20
  var _b = useState(''), text = _b[0], setText = _b[1];
@@ -10,18 +10,26 @@ var __assign = (this && this.__assign) || function () {
10
10
  return __assign.apply(this, arguments);
11
11
  };
12
12
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
13
- import { useMemo } from 'react';
14
- import { Box, InfoOutlineIcon, Tooltip, Typography } from 'fbm-ui';
13
+ import AiHeaderTitle from "../../../../components/AiHeaderTitle";
15
14
  import ReportPie from "../../../../components/Charts/ReportPie";
16
15
  // import ScoreLegend from './ScoreLegend';
17
16
  import ScoreBigBall from "../../../../components/ScoreBigBall";
18
17
  import { useAiReportStore } from "../../../../store/ai-report/global-store";
18
+ import { Box, InfoOutlineIcon, Tooltip, Typography } from 'fbm-ui';
19
+ import { useMemo } from 'react';
19
20
  var Report = function () {
20
21
  var reportResult = useAiReportStore(function (store) { return [store.reportResult]; }).reportResult;
21
- var _a = reportResult || {}, orderToken = _a.orderToken, score = _a.score, status = _a.status, _b = _a.collection, collection = _b === void 0 ? [] : _b;
22
+ var _a = reportResult || {}, orderToken = _a.orderToken, score = _a.score, status = _a.status, _b = _a.collection, collection = _b === void 0 ? [] : _b, _c = _a.summaryText, summaryText = _c === void 0 ? { sprintf: '', variables: [] } : _c;
22
23
  var title = useMemo(function () {
23
- return (_jsxs(_Fragment, { children: [_jsx(Typography, __assign({ fontSize: 12, color: "#fff" }, { children: "\u4F18\u79C0 \u4EE3\u8868\u5019\u9009\u4EBA\u8BE5\u9879\u80FD\u529B\u5728\u672C\u6B65\u9AA4\u6240\u6709\u5019\u9009\u4EBA\u4E2D\u6392\u540D\u5728\u524D30%" })), _jsx(Typography, __assign({ fontSize: 12, color: "#fff" }, { children: "\u9002\u4E2D \u4EE3\u8868\u5019\u9009\u4EBA\u8BE5\u9879\u80FD\u529B\u5728\u672C\u6B65\u9AA4\u6240\u6709\u5019\u9009\u4EBA\u4E2D\u6392\u540D\u572830%~70%" })), _jsx(Typography, __assign({ fontSize: 12, color: "#fff" }, { children: "\u6B20\u4F73 \u4EE3\u8868\u5019\u9009\u4EBA\u8BE5\u9879\u80FD\u529B\u5728\u672C\u6B65\u9AA4\u6240\u6709\u5019\u9009\u4EBA\u4E2D\u6392\u540D\u5728\u540E30%" })), _jsx(Typography, __assign({ fontSize: 12, color: "#fff" }, { children: "\u4EBA\u6570\u5C0F\u4E8E5\u4EBA\u65F6\uFF0C\u8BC4\u4EF7\u4E0D\u751F\u6548" }))] }));
24
+ return (_jsxs(_Fragment, { children: [_jsx(Typography, __assign({ fontSize: 12, color: "#fff" }, { children: "\u804C\u573A\u80FD\u529B\u4EE5\u53CA\u82F1\u6587\u8868\u8FBE\u80FD\u529B\u7684\u8BC4\u4EF7\u6807\u51C6\uFF1A" })), _jsx(Typography, __assign({ fontSize: 12, color: "#fff", style: { textIndent: '2em' } }, { children: "\u5F53\u5019\u9009\u4EBA\u7684\u8BE5\u9879\u80FD\u529B\u7EFC\u5408\u5F97\u5206\u5927\u4E8E\u7B49\u4E8E80\u65F6\u4E3A\u4F18\u79C0\uFF1B" })), _jsx(Typography, __assign({ fontSize: 12, color: "#fff", style: { textIndent: '2em' } }, { children: "\u5F53\u5019\u9009\u4EBA\u7684\u8BE5\u9879\u80FD\u529B\u7EFC\u5408\u5F97\u5206\u5927\u4E8E\u7B49\u4E8E60\u5C0F\u4E8E80\u65F6\u4E3A\u9002\u4E2D\uFF1B" })), _jsx(Typography, __assign({ fontSize: 12, color: "#fff", style: { textIndent: '2em' } }, { children: "\u5F53\u5019\u9009\u4EBA\u7684\u8BE5\u9879\u80FD\u529B\u7EFC\u5408\u5F97\u5206\u5C0F\u4E8E60\u65F6\u4E3A\u6B20\u4F73\uFF1B" })), _jsx(Typography, __assign({ fontSize: 12, color: "#fff" }, { children: "\u5176\u4ED6AI\u57FA\u7840\u80FD\u529B\u7684\u8BC4\u4EF7\u6807\u51C6\uFF1A" })), _jsx(Typography, __assign({ fontSize: 12, color: "#fff", style: { textIndent: '2em' } }, { children: "AI\u57FA\u7840\u80FD\u529B\u7684\u8BC4\u4EF7\u6807\u51C6\u4E3A\uFF1A\u6BCF\u4E2A\u80FD\u529B\u7684\u4E09\u6863\u7684\u5206\u6570\u503C\u4F9D\u636E\u5168\u56FD\u5927\u6570\u636E\u7EDF\u8BA1\u800C\u5B9A\u3002\u4EE5\u5168\u56FD\u6570\u636E\u7684\u524D30%\u4EE3\u8868\u4F18\u79C0\u3001\u4E2D\u95F430%~70%\u4EE3\u8868\u9002\u4E2D\u3001\u540E30%\u4EE3\u8868\u6B20\u4F73\u3002\u6839\u636E\u5019\u9009\u4EBA\u5F53\u524DAI\u89C6\u9891\u6B65\u9AA4\u4E0B\u7684\u6BCF\u4E2AAI\u57FA\u7840\u80FD\u529B\u7684\u6700\u7EC8\u5F97\u5206\u6765\u786E\u5B9A\u6BCF\u4E2A\u80FD\u529B\u7684\u8BC4\u4EF7\u3002" })), _jsx(Typography, __assign({ fontSize: 12, color: "#fff" }, { children: "\u76F8\u540C\u7684\u5F97\u5206\uFF0C\u6210\u7EE9\u5148\u51FA\u7684\u6392\u540D\u9760\u524D\u3002" }))] }));
24
25
  }, []);
25
- return (_jsxs(Box, __assign({ width: "100%" }, { children: [_jsxs(Box, __assign({ display: "flex", alignItems: "center", justifyContent: "space-between", pl: 2, pt: 2, pr: 2 }, { children: [_jsx(Typography, __assign({ variant: "body1", fontWeight: "medium", sx: { fontWeight: 500 } }, { children: "\u804C\u573A\u80FD\u529B\u8868\u73B0" })), _jsxs(Box, __assign({ display: "flex", alignItems: "center" }, { children: [_jsx(Typography, __assign({ variant: "body2" }, { children: "\u80FD\u529B\u6807\u51C6" })), _jsx(Tooltip, __assign({ title: title }, { children: _jsx("span", __assign({ style: { display: 'flex', alignItems: 'center', marginLeft: '4px' } }, { children: _jsx(InfoOutlineIcon, { sx: { fontSize: 14, color: 'RGBA(0, 0, 0, 0.86)' } }) })) }))] }))] })), _jsxs(Box, __assign({ height: 300, sx: { position: 'relative' } }, { children: [_jsx(ReportPie, { id: orderToken || '', source: collection }), _jsx(ScoreBigBall, { score: score || 0, status: status })] }))] })));
26
+ var showSummaryText = useMemo(function () {
27
+ var _a = summaryText.sprintf, sprintf = _a === void 0 ? '' : _a, _b = summaryText.variables, variables = _b === void 0 ? [] : _b;
28
+ var textList = (sprintf === null || sprintf === void 0 ? void 0 : sprintf.split('%s')) || [];
29
+ return textList.map(function (text, index) {
30
+ return (_jsxs(_Fragment, { children: [_jsx("span", __assign({ style: { fontSize: 14, color: 'RGBA(0, 0, 0, 0.56)' } }, { children: text })), _jsx("span", __assign({ style: { fontSize: 14, color: '#4CAF50' } }, { children: variables[index] || '' }))] }));
31
+ });
32
+ }, [summaryText]);
33
+ return (_jsxs(Box, __assign({ width: "100%" }, { children: [_jsxs(Box, __assign({ display: "flex", alignItems: "center", justifyContent: "space-between", pl: 2, pt: 2, pr: 2 }, { children: [_jsx(AiHeaderTitle, { name: "\u7EFC\u5408\u8868\u73B0" }), _jsxs(Box, __assign({ display: "flex", alignItems: "center" }, { children: [_jsx(Typography, __assign({ variant: "body2" }, { children: "\u80FD\u529B\u6807\u51C6" })), _jsx(Tooltip, __assign({ title: title }, { children: _jsx("span", __assign({ style: { display: 'flex', alignItems: 'center', marginLeft: '4px' } }, { children: _jsx(InfoOutlineIcon, { sx: { fontSize: 14, color: 'RGBA(0, 0, 0, 0.86)' } }) })) }))] }))] })), _jsxs(Box, __assign({ height: 300, sx: { position: 'relative' } }, { children: [_jsx(ReportPie, { id: orderToken || '', source: collection }), _jsx(ScoreBigBall, { score: score || 0, status: status })] })), showSummaryText.length > 0 && (_jsx(Box, __assign({ display: "block", width: 498, style: { backgroundColor: '#FAFAFA', padding: 8, margin: '0 auto 16px' } }, { children: showSummaryText })))] })));
26
34
  };
27
35
  export default Report;
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { SuggestionAbility } from '../../interface';
3
+ declare const Suggestion: React.FC<SuggestionAbility>;
4
+ export default Suggestion;
@@ -0,0 +1,29 @@
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
+ width: 100,
17
+ height: 32,
18
+ display: 'inline-block',
19
+ textAlign: 'center',
20
+ color: 'RGBA(0, 0, 0, 0.86)',
21
+ borderLeft: '4px solid #4CAF50',
22
+ backgroundColor: '#E8F5E9',
23
+ margin: '24px 0 16px',
24
+ }); });
25
+ var Suggestion = function (_a) {
26
+ var abilityName = _a.abilityName, interviewQuestion = _a.interviewQuestion, keyPoints = _a.keyPoints;
27
+ return (_jsxs(Stack, { 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)); })] }))] }))] }));
28
+ };
29
+ export default Suggestion;
@@ -0,0 +1,2 @@
1
+ declare const Index: () => JSX.Element | null;
2
+ export default Index;
@@ -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/AiHeaderTitle";
16
+ import { Typography } from 'fbm-ui';
17
+ import { Box, Collapse, Paper, 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({ component: Paper, variant: "outlined", 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;
@@ -1,4 +1,4 @@
1
- import { FC } from 'react';
2
1
  import { AbilitiesProps } from './interface';
2
+ import { FC } from 'react';
3
3
  declare const Abilities: FC<AbilitiesProps>;
4
4
  export default Abilities;
@@ -10,16 +10,16 @@ var __assign = (this && this.__assign) || function () {
10
10
  return __assign.apply(this, arguments);
11
11
  };
12
12
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
- import { useCallback } from 'react';
13
+ import ScoreSlider from './ScoreSlider';
14
+ import { useAiReportStore } from "../../../../store/ai-report/global-store";
14
15
  import { Box, Typography } from 'fbm-ui';
15
16
  import update from 'immutability-helper';
16
- import { useAiReportStore } from "../../../../store/ai-report/global-store";
17
- import ScoreSlider from './ScoreSlider';
17
+ import { useCallback } from 'react';
18
18
  var Abilities = function (_a) {
19
19
  var stepIndex = _a.stepIndex;
20
20
  var _b = useAiReportStore(function (store) { return [store.reportResult]; }), reportResult = _b.reportResult, updateReportResult = _b.updateReportResult, onScoreChange = _b.onScoreChange;
21
21
  var steps = (reportResult || {}).steps;
22
- var handleChangeCommitted = useCallback(function (score, index) {
22
+ var handleChangeCommitted = useCallback(function (score, index, type) {
23
23
  var _a, _b;
24
24
  var newSteps = update(steps, (_a = {}, _a[stepIndex] = { scoreInfo: { abilities: (_b = {}, _b[index] = { finalScore: { $set: score } }, _b) } }, _a));
25
25
  updateReportResult(__assign(__assign({}, reportResult), { steps: newSteps }));
@@ -34,7 +34,7 @@ var Abilities = function (_a) {
34
34
  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 &&
35
35
  steps[stepIndex].scoreInfo.abilities.map(function (_a, index) {
36
36
  var name = _a.name, originScore = _a.originScore, finalScore = _a.finalScore;
37
- return (_jsxs(Box, { children: [_jsx(Typography, __assign({ variant: "body2" }, { children: name })), _jsx(ScoreSlider, { width: 400, isShowLabel: true, originScore: originScore, finalScore: finalScore, valueLabelDisplay: "auto", onChangeCommitted: function (score) { return handleChangeCommitted(score, index); } })] }, name));
37
+ return (_jsxs(Box, { children: [_jsx(Typography, __assign({ variant: "body2" }, { children: name })), _jsx(ScoreSlider, { width: 400, isShowLabel: true, originScore: originScore, finalScore: finalScore, valueLabelDisplay: "auto", onChangeCommitted: function (score) { return handleChangeCommitted(score, index, 'ability'); } })] }, name));
38
38
  }) }))] })));
39
39
  };
40
40
  export default Abilities;
@@ -1,4 +1,4 @@
1
- import { FC } from 'react';
2
1
  import { QuestionItemProps } from './interface';
2
+ import { FC } from 'react';
3
3
  declare const QuestionItem: FC<QuestionItemProps>;
4
4
  export default QuestionItem;
@@ -10,19 +10,19 @@ 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 { useCallback, useMemo, useState } from 'react';
14
- import { Box, Button, Typography } from 'fbm-ui';
15
- import { theme } from 'fbm-ui/lib/components/ThemeProvider';
16
- import { Paper } from 'fbm-ui/lib/mui';
17
- import update from 'immutability-helper';
13
+ import Abilities from './Abilities';
14
+ import ScoreSlider from './ScoreSlider';
15
+ import { QuestionDesc } from './styled';
18
16
  import { QUESTION_TYPE } from "../../../../enum/ai-question";
19
17
  import { INTERVIEW_STEP_STATUS } from "../../../../enum/ai-report";
20
18
  import FormatQuoteIcon from '@mui/icons-material/FormatQuote';
21
19
  import { useAiReportStore } from "../../../../store/ai-report/global-store";
22
20
  import { formatScore, highlighKeywords } from "../../../../utils/utils";
23
- import Abilities from './Abilities';
24
- import ScoreSlider from './ScoreSlider';
25
- import { QuestionDesc } from './styled';
21
+ import { Box, Button, Typography } from 'fbm-ui';
22
+ import { theme } from 'fbm-ui/lib/components/ThemeProvider';
23
+ import { Paper } from 'fbm-ui/lib/mui';
24
+ import update from 'immutability-helper';
25
+ import { useCallback, useMemo, useState } from 'react';
26
26
  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;
27
27
  var QuestionItem = function (props) {
28
28
  var token = props.token, index = props.index, status = props.status, _a = props.answer, analysisResult = _a.analysisResult, videoUrl = _a.videoUrl, _b = props.question, desc = _b.desc, type = _b.type, _c = props.scoreInfo, score = _c.score, weight = _c.weight, originScore = _c.originScore, finalScore = _c.finalScore, abilities = _c.abilities;
@@ -86,6 +86,6 @@ var QuestionItem = function (props) {
86
86
  mt: 2,
87
87
  cursor: videoUrl ? 'pointer' : 'inherit',
88
88
  borderColor: token === stepToken ? theme.palette.primary.main : '',
89
- }, variant: "outlined", onClick: handleClickItem }, { children: [_jsxs(Typography, __assign({ fontSize: 14, color: token === stepToken ? theme.palette.primary.main : theme.palette.text.primary }, { children: [index + 1, ".", desc] })), _jsxs(QuestionDesc, { children: [_jsx(FormatQuoteIcon, {}), status === STEP_IN_CALCULATION ? (_jsx(Typography, __assign({ variant: "caption", color: "secondary" }, { children: "\u89C6\u9891\u5904\u7406\u4E2D\uFF0C\u8BF7\u7A0D\u5019" }))) : (_jsxs(_Fragment, { children: [_jsx(Typography, { variant: "caption", color: "secondary", 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: "caption", color: "secondary", ml: 1 }, { children: ["\u56DE\u7B54\uFF1A", analysisResult === null || analysisResult === void 0 ? void 0 : analysisResult.answer] }))] }))] }))] }), isExistWeight && status === STEP_COMPLETED && (_jsxs(Box, __assign({ mt: 2, display: "flex" }, { children: [_jsxs(Typography, __assign({ variant: "body2", mr: 4 }, { children: ["\u8BC4\u5206\uFF1A", finalScore.toFixed(0), "\u5206"] })), isShowWeight && _jsxs(Typography, __assign({ variant: "body2" }, { children: ["\u5355\u9898\u6743\u91CD\uFF1A", weight, "%"] }))] }))), isExistWeight && (_jsxs(Box, __assign({ width: "100%", display: "flex", alignItems: "center", mt: 2 }, { children: [_jsx(Box, __assign({ flex: "1 0", display: "flex", alignItems: "center" }, { children: status === STEP_COMPLETED && (_jsxs(_Fragment, { children: [_jsx(ScoreSlider, { originScore: originScore, finalScore: finalScore, isShowScoreRank: true, onChangeCommitted: handleChangeCommitted }), isShowAbilitiesButton && (_jsx(Button, __assign({ variant: "text", onClick: function () { return setShowAbilities(!showAbilities); } }, { children: showAbilities ? '收起' : '详情' })))] })) })), _jsx(Box, __assign({ width: 150, textAlign: "right" }, { children: _jsxs(Typography, __assign({ variant: "body1", fontSize: 16, fontWeight: 500 }, { children: ["\u7EFC\u5408\u8BC4\u5206\uFF1A", comprehensiveScore] })) }))] }))), isShowAbilitiesDetails && _jsx(Abilities, { stepIndex: index })] }), token));
89
+ }, variant: "outlined", onClick: handleClickItem }, { children: [_jsxs(Typography, __assign({ fontSize: 14, color: token === stepToken ? theme.palette.primary.main : theme.palette.text.primary }, { children: [index + 1, ".", desc] })), _jsxs(QuestionDesc, { children: [_jsx(FormatQuoteIcon, {}), status === STEP_IN_CALCULATION ? (_jsx(Typography, __assign({ variant: "caption", color: "secondary" }, { children: "\u89C6\u9891\u5904\u7406\u4E2D\uFF0C\u8BF7\u7A0D\u5019" }))) : (_jsxs(_Fragment, { children: [_jsx(Typography, { variant: "caption", color: "secondary", 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: "caption", color: "secondary", ml: 1 }, { children: ["\u56DE\u7B54\uFF1A", analysisResult === null || analysisResult === void 0 ? void 0 : analysisResult.answer] }))] }))] }))] }), isExistWeight && status === STEP_COMPLETED && (_jsxs(Box, __assign({ mt: 2, display: "flex" }, { children: [_jsxs(Typography, __assign({ variant: "body2", mr: 4 }, { children: ["\u8BC4\u5206\uFF1A", finalScore.toFixed(0), "\u5206"] })), isShowWeight && _jsxs(Typography, __assign({ variant: "body2" }, { children: ["\u5355\u9898\u6743\u91CD\uFF1A", weight, "%"] }))] }))), isExistWeight && (_jsxs(Box, __assign({ width: "100%", display: "flex", alignItems: "center", mt: 2 }, { children: [_jsx(Box, __assign({ flex: "1 0", display: "flex", alignItems: "center" }, { children: status === STEP_COMPLETED && (_jsxs(_Fragment, { children: [_jsx(ScoreSlider, { originScore: originScore, finalScore: finalScore, isShowScoreRank: true, onChangeCommitted: handleChangeCommitted }), isShowAbilitiesButton && (_jsx(Button, __assign({ variant: "text", style: { whiteSpace: 'nowrap' }, onClick: function () { return setShowAbilities(!showAbilities); } }, { children: showAbilities ? '收起' : '详情' })))] })) })), _jsx(Box, __assign({ width: 150, textAlign: "right" }, { children: _jsxs(Typography, __assign({ variant: "body1", fontSize: 16, fontWeight: 500 }, { children: ["\u7EFC\u5408\u8BC4\u5206\uFF1A", comprehensiveScore] })) }))] }))), isShowAbilitiesDetails && _jsx(Abilities, { stepIndex: index })] }), token));
90
90
  };
91
91
  export default QuestionItem;
@@ -10,12 +10,13 @@ var __assign = (this && this.__assign) || function () {
10
10
  return __assign.apply(this, arguments);
11
11
  };
12
12
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
- import { Box, Empty, Typography } from 'fbm-ui';
14
- import { useAiReportStore } from "../../../../store/ai-report/global-store";
15
13
  import QuestionItem from './QuestionItem';
14
+ import AiHeaderTitle from "../../../../components/AiHeaderTitle";
15
+ import { useAiReportStore } from "../../../../store/ai-report/global-store";
16
+ import { Box, Empty, Paper } from 'fbm-ui';
16
17
  var VideoQuestion = function () {
17
18
  var reportResult = useAiReportStore(function (store) { return [store.reportResult, store.operableButtons]; }).reportResult;
18
19
  var steps = (reportResult || {}).steps;
19
- return (_jsxs(Box, __assign({ padding: "24px 0" }, { children: [_jsx(Typography, __assign({ variant: "body2", fontWeight: 500 }, { children: "\u89C6\u9891\u9898\uFF1A" })), _jsx(Box, { children: steps && steps.length > 0 ? (steps === null || steps === void 0 ? void 0 : steps.map(function (item, index) { return _jsx(QuestionItem, __assign({ index: index }, item), item.token); })) : (_jsx(Empty, { src: "//public-static-assets.oss-cn-beijing.aliyuncs.com/img/empty.png", desc: "\u6682\u65E0\u9898\u76EE" })) })] })));
20
+ return (_jsxs(Box, __assign({ component: Paper, pl: 2, pt: 2, pr: 2, style: { background: '#fff', border: '1px solid rgb(244, 244, 244)' }, mt: 2 }, { children: [_jsx(AiHeaderTitle, { name: "\u89C6\u9891\u9898" }), _jsx(Box, __assign({ mt: 3 }, { children: steps && steps.length > 0 ? (steps === null || steps === void 0 ? void 0 : steps.map(function (item, index) { return _jsx(QuestionItem, __assign({ index: index }, item), item.token); })) : (_jsx(Empty, { src: "//public-static-assets.oss-cn-beijing.aliyuncs.com/img/empty.png", desc: "\u6682\u65E0\u9898\u76EE" })) }))] })));
20
21
  };
21
22
  export default VideoQuestion;
@@ -0,0 +1,4 @@
1
+ import { ScoreSliderProps } from './interface';
2
+ import { FC } from 'react';
3
+ declare const ScoreSlider: FC<ScoreSliderProps>;
4
+ export default ScoreSlider;
@@ -0,0 +1,24 @@
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 { ScoreSliderRoot, WorkplaceStyledSlider } from './styled';
14
+ import { Box, Typography } from 'fbm-ui';
15
+ var ScoreColorMap = {
16
+ 1: '#4CAF50',
17
+ 2: '#000000',
18
+ 3: '#FF6C6C',
19
+ };
20
+ var ScoreSlider = function (props) {
21
+ var _a = props.width, width = _a === void 0 ? 320 : _a, score = props.score, _b = props.valueLabelDisplay, valueLabelDisplay = _b === void 0 ? 'off' : _b, _c = props.isShowLabel, isShowLabel = _c === void 0 ? false : _c, _d = props.scoreText, scoreText = _d === void 0 ? '' : _d, _e = props.scoreLevel, scoreLevel = _e === void 0 ? 2 : _e;
22
+ return (_jsxs(ScoreSliderRoot, __assign({ width: width }, { children: [_jsxs(Box, __assign({ width: width, display: "flex", justifyContent: "space-between" }, { children: [_jsx(Typography, __assign({ flexShrink: 0, variant: "body2", fontWeight: "medium" }, { children: "\u5019\u9009\u4EBA\u8868\u73B0" })), isShowLabel && (_jsxs(Box, __assign({ display: "flex" }, { children: [_jsxs(Typography, __assign({ color: ScoreColorMap[scoreLevel], variant: "body2", fontWeight: "medium" }, { children: [score, "\u5206"] })), _jsx(Typography, __assign({ color: ScoreColorMap[scoreLevel], variant: "body2", fontWeight: "medium", ml: 1 }, { children: scoreText }))] })))] })), _jsx(WorkplaceStyledSlider, { valueLabelDisplay: valueLabelDisplay, value: score })] })));
23
+ };
24
+ export default ScoreSlider;
@@ -0,0 +1,11 @@
1
+ /// <reference types="react" />
2
+ declare type Mode = 'edit' | 'show';
3
+ interface WorkplaceProps {
4
+ token: string;
5
+ answer: string;
6
+ bgcolor?: string;
7
+ mode?: Mode;
8
+ canEdit?: boolean;
9
+ }
10
+ declare const Evaluate: React.FC<WorkplaceProps>;
11
+ export default Evaluate;
@@ -0,0 +1,55 @@
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 { PostAiInterviewWorkplace } from "../../../../services/ai-report";
14
+ import { Button, confirm, EditIcon, FormItem, IconButton, Typography } from 'fbm-ui';
15
+ import { Box, Stack } from 'fbm-ui/lib/mui';
16
+ import { useCallback, useEffect, useState } from 'react';
17
+ var Evaluate = function (_a) {
18
+ var answer = _a.answer, token = _a.token, bgcolor = _a.bgcolor, _b = _a.mode, mode = _b === void 0 ? 'show' : _b, _c = _a.canEdit, canEdit = _c === void 0 ? 'true' : _c;
19
+ var _d = useState(answer), content = _d[0], setContent = _d[1];
20
+ var _e = useState('show'), internalMode = _e[0], setInternalMode = _e[1];
21
+ var handleChange = useCallback(function (e) {
22
+ var value = e.target.value;
23
+ setContent(value);
24
+ }, []);
25
+ var handleModeChange = useCallback(function () {
26
+ setInternalMode(internalMode === 'show' ? 'edit' : 'show');
27
+ }, [internalMode]);
28
+ var handleSubmit = useCallback(function () {
29
+ confirm({
30
+ header: null,
31
+ content: '确认将评价内容修改吗?该动作无法被撤销。',
32
+ okText: '修改',
33
+ okProps: {
34
+ color: 'error',
35
+ variant: 'contained',
36
+ },
37
+ onOk: function (_a) {
38
+ var onClose = _a.onClose;
39
+ var data = {
40
+ token: token,
41
+ answer: content,
42
+ };
43
+ PostAiInterviewWorkplace(data).then(handleModeChange).then(onClose).catch(console.log);
44
+ },
45
+ });
46
+ }, [token, content, handleModeChange]);
47
+ useEffect(function () {
48
+ setInternalMode(mode);
49
+ }, [mode]);
50
+ return (_jsxs(Stack, { children: [_jsx(Stack, __assign({ direction: "row", alignItems: "center", justifyContent: "flex-end" }, { children: canEdit && (_jsx(IconButton, __assign({ onClick: handleModeChange }, { children: _jsx(EditIcon, {}) }))) })), 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, 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 () {
51
+ handleModeChange();
52
+ setContent(answer);
53
+ } }, { children: "\u53D6\u6D88" })), _jsx(Button, __assign({ size: "medium", onClick: handleSubmit }, { children: "\u4FDD\u5B58" }))] }))] }))), internalMode === 'show' && (_jsx(Box, __assign({ style: { padding: 8, borderRadius: 4, overflow: 'hidden', background: bgcolor } }, { children: _jsx(Typography, __assign({ variant: "body2", sx: { whiteSpace: 'pre-wrap', color: 'RGBA(0, 0, 0, 0.56)' } }, { children: content })) })))] }));
54
+ };
55
+ export default Evaluate;
@@ -0,0 +1,2 @@
1
+ declare const Index: () => JSX.Element | null;
2
+ export default Index;
@@ -0,0 +1,67 @@
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 WorkPlace from './WorkPlace';
15
+ import { useAiReportStore } from "../../../../store/ai-report/global-store";
16
+ import AiHeaderTitle from "../../../../components/AiHeaderTitle";
17
+ import { blue, orange, purple } from '@mui/material/colors';
18
+ import { InfoOutlineIcon, styled, Tooltip, Typography } from 'fbm-ui';
19
+ import { Box, Collapse, Paper, Stack } from 'fbm-ui/lib/mui';
20
+ var TagTitle = styled(Box)(function (bgcolor) { return ({
21
+ position: 'relative',
22
+ width: 100,
23
+ height: 32,
24
+ display: 'inline-block',
25
+ textAlign: 'center',
26
+ backgroundColor: bgcolor[200],
27
+ margin: '8px 0 16px',
28
+ '&:before': {
29
+ position: 'absolute',
30
+ content: '""',
31
+ right: '-16px',
32
+ top: 0,
33
+ width: 0,
34
+ height: 0,
35
+ borderStyle: 'solid',
36
+ borderColor: 'transparent',
37
+ borderTop: 'solid #fff',
38
+ borderWidth: '16px',
39
+ },
40
+ '&:after': {
41
+ position: 'absolute',
42
+ content: '""',
43
+ right: '-16px',
44
+ top: 0,
45
+ width: 0,
46
+ height: 0,
47
+ borderStyle: 'solid',
48
+ borderColor: 'transparent',
49
+ borderBottom: 'solid #fff',
50
+ borderWidth: '16px',
51
+ },
52
+ }); });
53
+ var ColorIndexMap = {
54
+ 0: blue,
55
+ 1: orange,
56
+ 2: purple,
57
+ };
58
+ var Index = function () {
59
+ var _a;
60
+ var _b = useAiReportStore(function (store) { return [store.reportResult, store.operableButtons]; }), reportResult = _b.reportResult, showAiDimension = _b.showAiDimension, canEditAiDimension = _b.canEditAiDimension;
61
+ if (!showAiDimension)
62
+ return null;
63
+ return (_jsxs(Box, __assign({ component: Paper, variant: "outlined", px: 2, mt: 2 }, { children: [_jsx(Stack, __assign({ direction: "row", height: 56, alignItems: "center", spacing: 1, marginBottom: 1 }, { children: _jsx(AiHeaderTitle, { name: "\u804C\u573A\u80FD\u529B\u8868\u73B0" }) })), _jsx(Collapse, __assign({ in: true }, { children: (_a = reportResult === null || reportResult === void 0 ? void 0 : reportResult.workplaces) === null || _a === void 0 ? void 0 : _a.map(function (v, idx) {
64
+ return (_jsxs(Box, __assign({ component: Paper, variant: "outlined", elevation: 0, mb: 2, pb: 2, pr: 2 }, { children: [_jsxs(Box, __assign({ display: "flex", justifyContent: "space-between", alignItems: "center" }, { children: [_jsx(TagTitle, __assign({ bgcolor: ColorIndexMap[idx % 3][200] }, { children: _jsx(Typography, __assign({ variant: "subtitle1", fontWeight: "medium", style: { lineHeight: '32px', color: '#fff' } }, { children: v.dimensionName })) })), _jsx(Tooltip, __assign({ title: _jsxs("span", { children: ["\u9AD8\u5206\u8868\u73B0\uFF1A", v.abilityExpression.good, _jsx("br", {}), "\u4F4E\u5206\u8868\u73B0\uFF1A", v.abilityExpression.bad] }) }, { children: _jsxs(Box, __assign({ display: "flex", alignItems: "center" }, { children: [_jsx(Typography, __assign({ variant: "body2", style: { lineHeight: '32px' }, mr: 1 }, { children: "\u4F18\u6B21\u8868\u73B0" })), _jsx(InfoOutlineIcon, { sx: { fontSize: '16px' } })] })) }))] })), _jsx(Typography, __assign({ variant: "body2", color: "secondary", ml: 2, style: { background: '#F5F5F5', borderRadius: 4, padding: 8 } }, { children: v.define })), _jsxs(Stack, __assign({ pl: 2 }, { children: [_jsx(Box, __assign({ mt: 2 }, { children: _jsx(ScoreSlider, { width: "100%", isShowLabel: true, score: v.score, scoreText: v.scoreText, scoreLevel: v.scoreLevel }) })), _jsx(Stack, __assign({ spacing: 2 }, { children: _jsx(WorkPlace, { token: v.token, canEdit: canEditAiDimension, answer: v.answer, mode: "show", bgcolor: ColorIndexMap[idx % 3][50] }) }))] }))] }), v.token));
65
+ }) }))] })));
66
+ };
67
+ export default Index;
@@ -0,0 +1,7 @@
1
+ import { WorkPlaceScoreInfo } from '../../interface';
2
+ export interface ScoreSliderProps extends Pick<WorkPlaceScoreInfo, 'score' | 'scoreText' | 'scoreLevel'> {
3
+ width?: any;
4
+ valueLabelDisplay?: 'on' | 'off' | 'auto';
5
+ isShowLabel?: boolean;
6
+ onChangeCommitted?: (score: number) => void;
7
+ }
@@ -0,0 +1,62 @@
1
+ /// <reference types="react" />
2
+ export declare const WorkplaceStyledSlider: import("@emotion/styled").StyledComponent<{
3
+ color?: "secondary" | "primary" | undefined;
4
+ classes?: (Partial<import("fbm-ui/lib/mui").SliderUnstyledClasses> & {
5
+ colorPrimary?: string | undefined;
6
+ colorSecondary?: string | undefined;
7
+ sizeSmall?: string | undefined;
8
+ thumbColorPrimary?: string | undefined;
9
+ thumbColorSecondary?: string | undefined;
10
+ thumbSizeSmall?: string | undefined;
11
+ }) | undefined;
12
+ size?: "small" | "medium" | undefined;
13
+ sx?: import("@mui/system").SxProps<import("fbm-ui/lib/mui").Theme> | undefined;
14
+ } & {
15
+ 'aria-label'?: string | undefined;
16
+ 'aria-labelledby'?: string | undefined;
17
+ 'aria-valuetext'?: string | undefined;
18
+ classes?: Partial<import("fbm-ui/lib/mui").SliderUnstyledClasses> | undefined;
19
+ components?: {
20
+ Root?: import("react").ElementType<any> | undefined;
21
+ Track?: import("react").ElementType<any> | undefined;
22
+ Rail?: import("react").ElementType<any> | undefined;
23
+ Thumb?: import("react").ElementType<any> | undefined;
24
+ Mark?: import("react").ElementType<any> | undefined;
25
+ MarkLabel?: import("react").ElementType<any> | undefined;
26
+ ValueLabel?: import("react").ElementType<any> | undefined;
27
+ } | undefined;
28
+ componentsProps?: {
29
+ root?: (import("react").HTMLAttributes<HTMLSpanElement> & import("fbm-ui/lib/mui").SliderUnstyledComponentsPropsOverrides) | undefined;
30
+ track?: (import("react").HTMLAttributes<HTMLSpanElement> & import("fbm-ui/lib/mui").SliderUnstyledComponentsPropsOverrides) | undefined;
31
+ rail?: (import("react").HTMLAttributes<HTMLSpanElement> & import("fbm-ui/lib/mui").SliderUnstyledComponentsPropsOverrides) | undefined;
32
+ thumb?: (import("react").HTMLAttributes<HTMLSpanElement> & import("fbm-ui/lib/mui").SliderUnstyledComponentsPropsOverrides) | undefined;
33
+ mark?: (import("react").HTMLAttributes<HTMLSpanElement> & import("fbm-ui/lib/mui").SliderUnstyledComponentsPropsOverrides) | undefined;
34
+ markLabel?: (import("react").HTMLAttributes<HTMLSpanElement> & import("fbm-ui/lib/mui").SliderUnstyledComponentsPropsOverrides) | undefined;
35
+ valueLabel?: (import("fbm-ui/lib/mui").ValueLabelUnstyledProps & import("fbm-ui/lib/mui").SliderUnstyledComponentsPropsOverrides) | undefined;
36
+ } | undefined;
37
+ defaultValue?: number | number[] | undefined;
38
+ disabled?: boolean | undefined;
39
+ disableSwap?: boolean | undefined;
40
+ getAriaLabel?: ((index: number) => string) | undefined;
41
+ getAriaValueText?: ((value: number, index: number) => string) | undefined;
42
+ isRtl?: boolean | undefined;
43
+ marks?: boolean | import("fbm-ui/lib/mui").Mark[] | undefined;
44
+ max?: number | undefined;
45
+ min?: number | undefined;
46
+ name?: string | undefined;
47
+ onChange?: ((event: Event, value: number | number[], activeThumb: number) => void) | undefined;
48
+ onChangeCommitted?: ((event: Event | import("react").SyntheticEvent<Element, Event>, value: number | number[]) => void) | undefined;
49
+ orientation?: "horizontal" | "vertical" | undefined;
50
+ scale?: ((value: number) => number) | undefined;
51
+ step?: number | null | undefined;
52
+ tabIndex?: number | undefined;
53
+ track?: false | "normal" | "inverted" | undefined;
54
+ value?: number | number[] | undefined;
55
+ valueLabelDisplay?: "on" | "off" | "auto" | undefined;
56
+ valueLabelFormat?: string | ((value: number, index: number) => import("react").ReactNode) | undefined;
57
+ } & Omit<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "key" | keyof import("react").HTMLAttributes<HTMLSpanElement>> & {
58
+ ref?: ((instance: HTMLSpanElement | null) => void) | import("react").RefObject<HTMLSpanElement> | null | undefined;
59
+ }, "track" | "name" | "classes" | "color" | "scale" | "sx" | "defaultValue" | "tabIndex" | "aria-label" | "aria-labelledby" | "aria-valuetext" | "onChange" | "disabled" | "max" | "min" | "orientation" | "size" | "step" | "value" | "components" | "componentsProps" | "disableSwap" | "getAriaLabel" | "getAriaValueText" | "isRtl" | "marks" | "onChangeCommitted" | "valueLabelDisplay" | "valueLabelFormat"> & import("@mui/system").MUIStyledCommonProps<import("fbm-ui/lib/mui").Theme>, {}, {}>;
60
+ export declare const ScoreSliderRoot: import("@emotion/styled").StyledComponent<import("fbm-ui/lib/components/Box").BoxProps & {
61
+ children?: import("react").ReactNode;
62
+ } & import("@mui/system").MUIStyledCommonProps<import("fbm-ui/lib/mui").Theme>, {}, {}>;