You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
NewEduCoderBuild/p__Problemset__Preview__ind...

1792 lines
71 KiB

"use strict";
(self["webpackChunk"] = self["webpackChunk"] || []).push([[11581],{
/***/ 66023:
/*!*******************************************************************!*\
!*** ./node_modules/@ant-design/icons-svg/es/asn/DownOutlined.js ***!
\*******************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__) {
// This icon file is generated automatically.
var DownOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z" } }] }, "name": "down", "theme": "outlined" };
/* harmony default export */ __webpack_exports__["Z"] = (DownOutlined);
/***/ }),
/***/ 99953:
/*!************************************************************!*\
!*** ./src/pages/Problemset/Preview/index.tsx + 1 modules ***!
\************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
"default": function() { return /* binding */ Problemset_Preview; },
"formatTypeNameToDefaultScore": function() { return /* binding */ formatTypeNameToDefaultScore; }
});
// EXTERNAL MODULE: ./node_modules/antd/es/breadcrumb/style/index.js + 1 modules
var style = __webpack_require__(63102);
// EXTERNAL MODULE: ./node_modules/antd/es/breadcrumb/index.js + 3 modules
var breadcrumb = __webpack_require__(58492);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/regeneratorRuntime.js
var regeneratorRuntime = __webpack_require__(17061);
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/asyncToGenerator.js
var asyncToGenerator = __webpack_require__(17156);
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
// EXTERNAL MODULE: ./node_modules/antd/es/input-number/style/index.js + 1 modules
var input_number_style = __webpack_require__(25359);
// EXTERNAL MODULE: ./node_modules/antd/es/input-number/index.js + 9 modules
var input_number = __webpack_require__(87799);
// EXTERNAL MODULE: ./node_modules/antd/es/modal/style/index.js + 1 modules
var modal_style = __webpack_require__(35611);
// EXTERNAL MODULE: ./node_modules/antd/es/modal/index.js + 7 modules
var modal = __webpack_require__(85402);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectSpread2.js
var objectSpread2 = __webpack_require__(42122);
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/slicedToArray.js
var slicedToArray = __webpack_require__(27424);
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectWithoutProperties.js
var objectWithoutProperties = __webpack_require__(70215);
var objectWithoutProperties_default = /*#__PURE__*/__webpack_require__.n(objectWithoutProperties);
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__(67294);
// EXTERNAL MODULE: ./src/.umi-production/exports.ts + 8 modules
var _umi_production_exports = __webpack_require__(89214);
// EXTERNAL MODULE: ./node_modules/react-beautiful-dnd/dist/react-beautiful-dnd.esm.js + 27 modules
var react_beautiful_dnd_esm = __webpack_require__(66012);
// EXTERNAL MODULE: ./src/components/EcListItems/Problemset/Card/index.tsx + 1 modules
var Card = __webpack_require__(45983);
;// CONCATENATED MODULE: ./src/pages/Problemset/Preview/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var Previewmodules = ({"bg":"bg___uBTSf","wrap":"wrap___u47s7","flexRow":"flexRow___QK3mq","flexColumn":"flexColumn___IEH4c","flexJustifyBetween":"flexJustifyBetween___VROqY","relative":"relative___iGg_n","questionNumber":"questionNumber___CYWUo","score":"score___pHhZR","selectTopicButton":"selectTopicButton___aNhaw","line":"line___zzL1y","dragTip":"dragTip___eJpug","typeActive":"typeActive___cHbxQ","mouseTypeActive":"mouseTypeActive___THFkb","typeName":"typeName___PsYTO","typeNumber":"typeNumber___IW6t9","typeAction":"typeAction___gdIEg","setScore":"setScore___ftbgZ","delete":"delete___d1fFi","modal":"modal___COzbG","modalColumn":"modalColumn___Z8nDu","shixunModal":"shixunModal___xxSWV","shixunScore":"shixunScore___zrpkw"});
// EXTERNAL MODULE: ./src/components/FixedButton/index.tsx + 1 modules
var FixedButton = __webpack_require__(36845);
// EXTERNAL MODULE: ./node_modules/lodash/lodash.js
var lodash = __webpack_require__(96486);
var lodash_default = /*#__PURE__*/__webpack_require__.n(lodash);
// EXTERNAL MODULE: ./src/service/problemset.ts
var problemset = __webpack_require__(75968);
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__(85893);
;// CONCATENATED MODULE: ./src/pages/Problemset/Preview/index.tsx
var _excluded = ["problemsetPreview", "user", "globalSetting", "loading", "dispatch"];
var formatTypeNameToDefaultScore = function formatTypeNameToDefaultScore(typeName) {
var mapping = {
'单选题': 2,
'多选题': 5,
'填空题': 2,
'判断题': 2,
'简答题': 10,
'编程题': 10,
'实训题': 5,
'组合题': 10
};
return mapping[typeName] || 0;
};
var Preview = function Preview(_ref) {
var _problemsetPreview$pa, _problemsetPreview$pa2, _problemsetPreview$pa3, _problemsetPreview$pa4;
var problemsetPreview = _ref.problemsetPreview,
user = _ref.user,
globalSetting = _ref.globalSetting,
loading = _ref.loading,
dispatch = _ref.dispatch,
props = objectWithoutProperties_default()(_ref, _excluded);
var _useState = (0,react.useState)(),
_useState2 = slicedToArray_default()(_useState, 2),
inMouseId = _useState2[0],
setInMouseId = _useState2[1];
var _useState3 = (0,react.useState)(),
_useState4 = slicedToArray_default()(_useState3, 2),
inMouseBatchType = _useState4[0],
setInMouseBatchType = _useState4[1];
var score = (0,react.useRef)();
console.log(problemsetPreview, 'problemsetPreview');
(0,react.useEffect)(function () {
dispatch({
type: 'globalSetting/footerToggle',
payload: false
});
return function () {
dispatch({
type: 'globalSetting/footerToggle',
payload: true
});
};
}, []);
(0,react.useEffect)(function () {
getPaperData();
}, []);
var getPaperData = function getPaperData() {
dispatch({
type: 'problemsetPreview/getPaperData'
});
};
var handleSetScore = function handleSetScore(id, typeName) {
var shixun = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
var originScore = arguments.length > 3 ? arguments[3] : undefined;
var param = arguments.length > 4 ? arguments[4] : undefined;
var cloneData = lodash_default().cloneDeep(param);
var shixunData = lodash_default().cloneDeep(shixun).map(function (item) {
return objectSpread2_default()(objectSpread2_default()({}, item), {}, {
challenge_score: item.challenge_score || 5
});
});
score.current = originScore || formatTypeNameToDefaultScore(typeName);
if (typeName === "实训题") {
return modal/* default.confirm */.Z.confirm({
centered: true,
width: 530,
title: '设置分数',
content: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Previewmodules.shixunModal,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: "\u5173\u5361\uFF1A"
}), shixunData === null || shixunData === void 0 ? void 0 : shixunData.map(function (item, index) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Previewmodules.shixunScore,
children: [index + 1, "\u3001", item.challenge_name, /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
style: {
minWidth: '130px'
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {
defaultValue: item.challenge_score,
min: 1,
onChange: function onChange(value) {
item.challenge_score = value;
}
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "ml5",
children: "\u5206/\u9898"
})]
})]
});
})]
}),
okText: '确认',
cancelText: '取消',
onOk: function () {
var _onOk = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return (0,problemset/* setChallengeScore */.Cc)({
id: id,
challenge_scores: shixunData.map(function (item) {
return {
challenge_id: item.challenge_id,
score: item.challenge_score
};
})
});
case 2:
score.current = null;
getPaperData();
case 4:
case "end":
return _context.stop();
}
}, _callee);
}));
function onOk() {
return _onOk.apply(this, arguments);
}
return onOk;
}()
});
}
if (typeName === "组合题") {
var _cloneData$sub_questi;
return modal/* default.confirm */.Z.confirm({
centered: true,
width: 530,
title: '设置分数',
content: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Previewmodules.shixunModal,
style: {
maxHeight: 200,
overflow: 'auto'
},
children: cloneData === null || cloneData === void 0 ? void 0 : (_cloneData$sub_questi = cloneData.sub_questions) === null || _cloneData$sub_questi === void 0 ? void 0 : _cloneData$sub_questi.map(function (item, index) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Previewmodules.shixunScore,
children: ["\u7B2C", index + 1, "\u5C0F\u9898", /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
style: {
minWidth: '130px'
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {
defaultValue: item.score,
min: 1,
onChange: function onChange(value) {
item.score = value;
}
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "ml5",
children: "\u5206"
})]
})]
});
})
}),
okText: '确认',
cancelText: '取消',
onOk: function () {
var _onOk2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
var _cloneData$sub_questi2;
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return (0,problemset/* setCombinationScore */.Vl)({
id: id,
subs: cloneData === null || cloneData === void 0 ? void 0 : (_cloneData$sub_questi2 = cloneData.sub_questions) === null || _cloneData$sub_questi2 === void 0 ? void 0 : _cloneData$sub_questi2.map(function (item) {
return {
basket_id: item.basket_id,
score: item.score
};
})
});
case 2:
score.current = null;
getPaperData();
case 4:
case "end":
return _context2.stop();
}
}, _callee2);
}));
function onOk() {
return _onOk2.apply(this, arguments);
}
return onOk;
}()
});
}
modal/* default.confirm */.Z.confirm({
centered: true,
title: '设置分数',
content: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: '',
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u672C\u9898\u5206\u503C\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {
min: 1,
defaultValue: score.current,
onChange: function onChange(value) {
score.current = value;
}
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "ml5",
children: "\u5206/\u9898"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), typeName === "填空题" && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: {
color: 'rgb(255, 0, 0)'
},
children: "\u6BCF\u7A7A\u5206\u503C\u6309\u6BCF\u9898\u5206\u503C\u53D6\u5E73\u5747\u5206\u8BA1\u7B97"
})]
}),
okText: '确认',
cancelText: '取消',
onOk: function () {
var _onOk3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3() {
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
while (1) switch (_context3.prev = _context3.next) {
case 0:
_context3.next = 2;
return dispatch({
type: 'problemsetPreview/setScore',
payload: {
id: id,
score: score.current
}
});
case 2:
score.current = null;
getPaperData();
case 4:
case "end":
return _context3.stop();
}
}, _callee3);
}));
function onOk() {
return _onOk3.apply(this, arguments);
}
return onOk;
}()
});
};
var handleDelete = function handleDelete(id) {
modal/* default.confirm */.Z.confirm({
centered: true,
title: '提示',
content: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Previewmodules.modal,
children: "\u786E\u8BA4\u5220\u9664\u8BE5\u8BD5\u9898\uFF1F"
}),
okText: '确认',
cancelText: '取消',
onOk: function () {
var _onOk4 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee4() {
return regeneratorRuntime_default()().wrap(function _callee4$(_context4) {
while (1) switch (_context4.prev = _context4.next) {
case 0:
_context4.next = 2;
return dispatch({
type: 'problemsetPreview/handleDelete',
payload: {
id: id
}
});
case 2:
getPaperData();
case 3:
case "end":
return _context4.stop();
}
}, _callee4);
}));
function onOk() {
return _onOk4.apply(this, arguments);
}
return onOk;
}()
});
};
var handleBatchSetScore = function handleBatchSetScore(type, typeName) {
score.current = formatTypeNameToDefaultScore(typeName);
modal/* default.confirm */.Z.confirm({
centered: true,
title: '批量设置分数',
content: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: '',
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
children: [typeName === "组合题" ? '组合题中的每小题' : typeName, "\uFF1A"]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {
min: 1,
defaultValue: score.current,
onChange: function onChange(value) {
score.current = value;
}
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "ml5",
children: "\u5206/\u9898"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), typeName === "填空题" && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: {
color: 'rgb(255, 0, 0)'
},
children: "\u6BCF\u7A7A\u5206\u503C\u6309\u6BCF\u9898\u5206\u503C\u53D6\u5E73\u5747\u5206\u8BA1\u7B97"
})]
}),
okText: '确认',
cancelText: '取消',
onOk: function () {
var _onOk5 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee5() {
return regeneratorRuntime_default()().wrap(function _callee5$(_context5) {
while (1) switch (_context5.prev = _context5.next) {
case 0:
_context5.next = 2;
return dispatch({
type: 'problemsetPreview/batchSetScore',
payload: {
item_type: type,
score: score.current
}
});
case 2:
score.current = null;
getPaperData();
case 4:
case "end":
return _context5.stop();
}
}, _callee5);
}));
function onOk() {
return _onOk5.apply(this, arguments);
}
return onOk;
}()
});
};
var handleBatchDelete = function handleBatchDelete(type) {
modal/* default.confirm */.Z.confirm({
centered: true,
title: '提示',
content: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Previewmodules.modalColumn,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
children: "\u5220\u9664\u5927\u9898\uFF0C\u5C06\u5220\u9664\u8BE5\u5927\u9898\u4E0B\u6240\u6709\u5C0F\u9898"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
children: "\u786E\u8BA4\u5220\u9664\u8BE5\u5927\u9898\uFF1F"
})]
}),
okText: '确认',
cancelText: '取消',
onOk: function () {
var _onOk6 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee6() {
return regeneratorRuntime_default()().wrap(function _callee6$(_context6) {
while (1) switch (_context6.prev = _context6.next) {
case 0:
_context6.next = 2;
return dispatch({
type: 'problemsetPreview/batchDelete',
payload: {
item_type: type
}
});
case 2:
getPaperData();
case 3:
case "end":
return _context6.stop();
}
}, _callee6);
}));
function onOk() {
return _onOk6.apply(this, arguments);
}
return onOk;
}()
});
};
var handleDragEnd = /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee7(data, paperItem) {
var id, position, res;
return regeneratorRuntime_default()().wrap(function _callee7$(_context7) {
while (1) switch (_context7.prev = _context7.next) {
case 0:
if (!(!data.destination || !data.source)) {
_context7.next = 2;
break;
}
return _context7.abrupt("return");
case 2:
id = paperItem.questions[data.source.index].id;
position = data.destination.index + 1;
_context7.next = 6;
return dispatch({
type: 'problemsetPreview/adjustPosition',
payload: {
id: id,
position: position
}
});
case 6:
res = _context7.sent;
if (!(res.status === -1)) {
_context7.next = 9;
break;
}
return _context7.abrupt("return");
case 9:
getPaperData();
case 10:
case "end":
return _context7.stop();
}
}, _callee7);
}));
return function handleDragEnd(_x, _x2) {
return _ref2.apply(this, arguments);
};
}();
return /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
className: Previewmodules.bg,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(breadcrumb/* default */.Z, {
className: "mt30",
separator: ">",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(breadcrumb/* default.Item */.Z.Item, {
children: "\u8BD5\u9898\u5E93"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(breadcrumb/* default.Item */.Z.Item, {
href: "/problemset",
children: "\u4EBA\u5DE5\u7EC4\u5377"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(breadcrumb/* default.Item */.Z.Item, {
children: "\u8BD5\u5377\u9884\u89C8"
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Previewmodules.wrap,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "pt20 pb20",
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "".concat(Previewmodules.flexRow, " ").concat(Previewmodules.flexJustifyBetween),
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: Previewmodules.questionNumber,
children: ["\u9898\u6570\uFF1A", (_problemsetPreview$pa = problemsetPreview.paperData) === null || _problemsetPreview$pa === void 0 ? void 0 : _problemsetPreview$pa.all_questions_count]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: Previewmodules.score,
children: ["\u603B\u5206\uFF1A", (_problemsetPreview$pa2 = problemsetPreview.paperData) === null || _problemsetPreview$pa2 === void 0 ? void 0 : _problemsetPreview$pa2.all_score]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Previewmodules.selectTopicButton,
onClick: function onClick() {
return _umi_production_exports.history.push('/problemset/preview_select');
},
children: "\u7EE7\u7EED\u9009\u9898"
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Previewmodules.line
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Previewmodules.dragTip,
children: "\u5C0F\u9898\u4E4B\u95F4\u53EF\u4EE5\u62D6\u52A8\u6392\u5E8F"
}), (_problemsetPreview$pa3 = problemsetPreview.paperData) === null || _problemsetPreview$pa3 === void 0 ? void 0 : (_problemsetPreview$pa4 = _problemsetPreview$pa3.questionList) === null || _problemsetPreview$pa4 === void 0 ? void 0 : _problemsetPreview$pa4.map(function (paperItem, paperKey) {
var inMouseBatch = paperItem.type === inMouseBatchType;
console.log(paperItem, 'paperItem');
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "".concat(Previewmodules.relative, " mt20 mb20"),
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "".concat(Previewmodules.typeActive, " ").concat(inMouseBatch ? Previewmodules.mouseTypeActive : ''),
onMouseEnter: function onMouseEnter() {
setInMouseBatchType(paperItem.type);
setInMouseId(null);
},
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "".concat(Previewmodules.typeName, " ").concat(inMouseBatch ? 'ml20' : ''),
children: [paperItem.number, "\u3001", paperItem.name]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: Previewmodules.typeNumber,
children: ["\uFF08\u5171", paperItem.questions_count, "\u9898\uFF0C", (paperItem === null || paperItem === void 0 ? void 0 : paperItem.type) === "COMBINATION" ? "\u5305\u542B".concat(paperItem === null || paperItem === void 0 ? void 0 : paperItem.sub_questions_count, "\u5C0F\u9898\uFF0C") : '', "\u5171", paperItem.questions_score, "\u5206\uFF09"]
})]
}), inMouseBatch && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "".concat(Previewmodules.typeAction, " ").concat(Previewmodules.flexRow),
children: [paperItem.type !== 'PRACTICAL' && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Previewmodules.setScore,
onClick: function onClick() {
return handleBatchSetScore(paperItem.type, paperItem.name);
},
children: "\u6279\u91CF\u8BBE\u7F6E\u5F97\u5206"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Previewmodules["delete"],
onClick: function onClick() {
return handleBatchDelete(paperItem.type);
},
children: "\u5220\u9664"
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(react_beautiful_dnd_esm/* DragDropContext */.Z5, {
onDragEnd: function onDragEnd(result) {
return handleDragEnd(result, paperItem);
},
children: /*#__PURE__*/(0,jsx_runtime.jsx)(react_beautiful_dnd_esm/* Droppable */.bK, {
droppableId: paperKey.toString(),
children: function children(provided, snapshot) {
var _paperItem$questions;
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", objectSpread2_default()(objectSpread2_default()({
className: "mt20",
ref: provided.innerRef
}, provided.droppableProps), {}, {
onScroll: function onScroll() {},
children: (_paperItem$questions = paperItem.questions) === null || _paperItem$questions === void 0 ? void 0 : _paperItem$questions.map(function (questionItem, qeustionKey) {
return /*#__PURE__*/(0,jsx_runtime.jsx)(react_beautiful_dnd_esm/* Draggable */._l, {
draggableId: questionItem.id.toString(),
index: qeustionKey,
children: function children(provided) {
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", objectSpread2_default()(objectSpread2_default()(objectSpread2_default()({
ref: provided.innerRef
}, provided.draggableProps), provided.dragHandleProps), {}, {
children: /*#__PURE__*/(0,jsx_runtime.jsx)(Card/* default */.Z, {
index: qeustionKey,
typeName: paperItem.name,
type: paperItem.type,
data: questionItem,
inMouseId: inMouseId,
onSetScore: handleSetScore,
onDelete: handleDelete,
onMouseEnter: function onMouseEnter(id) {
setInMouseId(id);
setInMouseBatchType(null);
}
})
}));
}
}, questionItem.id);
})
}));
}
})
})]
}, paperKey);
})]
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(FixedButton/* FixedButton */.t, {
okText: "\u4FDD\u5B58\u8BD5\u5377",
onCancel: function onCancel() {
return _umi_production_exports.history.replace('/problemset');
},
onOk: function onOk() {
return _umi_production_exports.history.push('/problemset/preview_new');
}
})]
});
};
/* harmony default export */ var Problemset_Preview = ((0,_umi_production_exports.connect)(function (_ref3) {
var problemsetPreview = _ref3.problemsetPreview,
user = _ref3.user,
loading = _ref3.loading,
globalSetting = _ref3.globalSetting;
return {
problemsetPreview: problemsetPreview,
user: user,
globalSetting: globalSetting,
loading: loading.effects
};
})(Preview));
/***/ }),
/***/ 9708:
/*!***************************************************!*\
!*** ./node_modules/antd/es/_util/statusUtils.js ***!
\***************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "F": function() { return /* binding */ getMergedStatus; },
/* harmony export */ "Z": function() { return /* binding */ getStatusClassNames; }
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/esm/defineProperty */ 4942);
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! classnames */ 94184);
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _type__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./type */ 93355);
var InputStatuses = (0,_type__WEBPACK_IMPORTED_MODULE_1__/* .tuple */ .b)('warning', 'error', '');
function getStatusClassNames(prefixCls, status, hasFeedback) {
var _classNames;
return classnames__WEBPACK_IMPORTED_MODULE_0___default()((_classNames = {}, (0,_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z)(_classNames, "".concat(prefixCls, "-status-success"), status === 'success'), (0,_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z)(_classNames, "".concat(prefixCls, "-status-warning"), status === 'warning'), (0,_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z)(_classNames, "".concat(prefixCls, "-status-error"), status === 'error'), (0,_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z)(_classNames, "".concat(prefixCls, "-status-validating"), status === 'validating'), (0,_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z)(_classNames, "".concat(prefixCls, "-has-feedback"), hasFeedback), _classNames));
}
var getMergedStatus = function getMergedStatus(contextStatus, customStatus) {
return customStatus || contextStatus;
};
/***/ }),
/***/ 58492:
/*!**************************************************************!*\
!*** ./node_modules/antd/es/breadcrumb/index.js + 3 modules ***!
\**************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
"Z": function() { return /* binding */ breadcrumb; }
});
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
var defineProperty = __webpack_require__(4942);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
var esm_extends = __webpack_require__(87462);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
var toConsumableArray = __webpack_require__(74902);
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__(94184);
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./node_modules/rc-util/es/Children/toArray.js
var toArray = __webpack_require__(50344);
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__(67294);
// EXTERNAL MODULE: ./node_modules/antd/es/config-provider/context.js
var context = __webpack_require__(53124);
// EXTERNAL MODULE: ./node_modules/antd/es/menu/index.js + 5 modules
var menu = __webpack_require__(66516);
// EXTERNAL MODULE: ./node_modules/antd/es/_util/reactNode.js
var reactNode = __webpack_require__(96159);
// EXTERNAL MODULE: ./node_modules/antd/node_modules/@ant-design/icons/es/icons/DownOutlined.js
var DownOutlined = __webpack_require__(13622);
// EXTERNAL MODULE: ./node_modules/antd/es/dropdown/dropdown.js + 1 modules
var dropdown = __webpack_require__(18562);
;// CONCATENATED MODULE: ./node_modules/antd/es/breadcrumb/BreadcrumbItem.js
var __rest = undefined && undefined.__rest || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
}
return t;
};
var BreadcrumbItem = function BreadcrumbItem(props) {
var customizePrefixCls = props.prefixCls,
_props$separator = props.separator,
separator = _props$separator === void 0 ? '/' : _props$separator,
children = props.children,
menu = props.menu,
overlay = props.overlay,
dropdownProps = props.dropdownProps,
restProps = __rest(props, ["prefixCls", "separator", "children", "menu", "overlay", "dropdownProps"]);
var _React$useContext = react.useContext(context/* ConfigContext */.E_),
getPrefixCls = _React$useContext.getPrefixCls;
var prefixCls = getPrefixCls('breadcrumb', customizePrefixCls);
// Warning for deprecated usage
if (false) {}
/** If overlay is have Wrap a Dropdown */
var renderBreadcrumbNode = function renderBreadcrumbNode(breadcrumbItem) {
if (menu || overlay) {
return /*#__PURE__*/react.createElement(dropdown/* default */.Z, (0,esm_extends/* default */.Z)({
menu: menu,
overlay: overlay,
placement: "bottom"
}, dropdownProps), /*#__PURE__*/react.createElement("span", {
className: "".concat(prefixCls, "-overlay-link")
}, breadcrumbItem, /*#__PURE__*/react.createElement(DownOutlined/* default */.Z, null)));
}
return breadcrumbItem;
};
var link;
if ('href' in restProps) {
link = /*#__PURE__*/react.createElement("a", (0,esm_extends/* default */.Z)({
className: "".concat(prefixCls, "-link")
}, restProps), children);
} else {
link = /*#__PURE__*/react.createElement("span", (0,esm_extends/* default */.Z)({
className: "".concat(prefixCls, "-link")
}, restProps), children);
}
// wrap to dropDown
link = renderBreadcrumbNode(link);
if (children !== undefined && children !== null) {
return /*#__PURE__*/react.createElement("li", null, link, separator && /*#__PURE__*/react.createElement("span", {
className: "".concat(prefixCls, "-separator")
}, separator));
}
return null;
};
BreadcrumbItem.__ANT_BREADCRUMB_ITEM = true;
/* harmony default export */ var breadcrumb_BreadcrumbItem = (BreadcrumbItem);
;// CONCATENATED MODULE: ./node_modules/antd/es/breadcrumb/BreadcrumbSeparator.js
var BreadcrumbSeparator = function BreadcrumbSeparator(_ref) {
var children = _ref.children;
var _React$useContext = react.useContext(context/* ConfigContext */.E_),
getPrefixCls = _React$useContext.getPrefixCls;
var prefixCls = getPrefixCls('breadcrumb');
return /*#__PURE__*/react.createElement("span", {
className: "".concat(prefixCls, "-separator")
}, children || '/');
};
BreadcrumbSeparator.__ANT_BREADCRUMB_SEPARATOR = true;
/* harmony default export */ var breadcrumb_BreadcrumbSeparator = (BreadcrumbSeparator);
;// CONCATENATED MODULE: ./node_modules/antd/es/breadcrumb/Breadcrumb.js
var Breadcrumb_rest = undefined && undefined.__rest || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
}
return t;
};
function getBreadcrumbName(route, params) {
if (!route.breadcrumbName) {
return null;
}
var paramsKeys = Object.keys(params).join('|');
var name = route.breadcrumbName.replace(new RegExp(":(".concat(paramsKeys, ")"), 'g'), function (replacement, key) {
return params[key] || replacement;
});
return name;
}
function defaultItemRender(route, params, routes, paths) {
var isLastItem = routes.indexOf(route) === routes.length - 1;
var name = getBreadcrumbName(route, params);
return isLastItem ? /*#__PURE__*/react.createElement("span", null, name) : /*#__PURE__*/react.createElement("a", {
href: "#/".concat(paths.join('/'))
}, name);
}
var getPath = function getPath(path, params) {
path = (path || '').replace(/^\//, '');
Object.keys(params).forEach(function (key) {
path = path.replace(":".concat(key), params[key]);
});
return path;
};
var addChildPath = function addChildPath(paths, childPath, params) {
var originalPaths = (0,toConsumableArray/* default */.Z)(paths);
var path = getPath(childPath || '', params);
if (path) {
originalPaths.push(path);
}
return originalPaths;
};
var Breadcrumb = function Breadcrumb(_a) {
var customizePrefixCls = _a.prefixCls,
_a$separator = _a.separator,
separator = _a$separator === void 0 ? '/' : _a$separator,
style = _a.style,
className = _a.className,
routes = _a.routes,
children = _a.children,
_a$itemRender = _a.itemRender,
itemRender = _a$itemRender === void 0 ? defaultItemRender : _a$itemRender,
_a$params = _a.params,
params = _a$params === void 0 ? {} : _a$params,
restProps = Breadcrumb_rest(_a, ["prefixCls", "separator", "style", "className", "routes", "children", "itemRender", "params"]);
var _React$useContext = react.useContext(context/* ConfigContext */.E_),
getPrefixCls = _React$useContext.getPrefixCls,
direction = _React$useContext.direction;
var crumbs;
var prefixCls = getPrefixCls('breadcrumb', customizePrefixCls);
if (routes && routes.length > 0) {
// generated by route
var paths = [];
crumbs = routes.map(function (route) {
var path = getPath(route.path, params);
if (path) {
paths.push(path);
}
// generated overlay by route.children
var overlay;
if (route.children && route.children.length) {
overlay = /*#__PURE__*/react.createElement(menu/* default */.Z, {
items: route.children.map(function (child) {
return {
key: child.path || child.breadcrumbName,
label: itemRender(child, params, routes, addChildPath(paths, child.path, params))
};
})
});
}
var itemProps = {
separator: separator
};
if (overlay) {
itemProps.overlay = overlay;
}
return /*#__PURE__*/react.createElement(breadcrumb_BreadcrumbItem, (0,esm_extends/* default */.Z)({}, itemProps, {
key: path || route.breadcrumbName
}), itemRender(route, params, routes, paths));
});
} else if (children) {
crumbs = (0,toArray/* default */.Z)(children).map(function (element, index) {
if (!element) {
return element;
}
false ? 0 : void 0;
return (0,reactNode/* cloneElement */.Tm)(element, {
separator: separator,
key: index
});
});
}
var breadcrumbClassName = classnames_default()(prefixCls, (0,defineProperty/* default */.Z)({}, "".concat(prefixCls, "-rtl"), direction === 'rtl'), className);
return /*#__PURE__*/react.createElement("nav", (0,esm_extends/* default */.Z)({
className: breadcrumbClassName,
style: style
}, restProps), /*#__PURE__*/react.createElement("ol", null, crumbs));
};
Breadcrumb.Item = breadcrumb_BreadcrumbItem;
Breadcrumb.Separator = breadcrumb_BreadcrumbSeparator;
/* harmony default export */ var breadcrumb_Breadcrumb = (Breadcrumb);
;// CONCATENATED MODULE: ./node_modules/antd/es/breadcrumb/index.js
/* harmony default export */ var breadcrumb = (breadcrumb_Breadcrumb);
/***/ }),
/***/ 63102:
/*!********************************************************************!*\
!*** ./node_modules/antd/es/breadcrumb/style/index.js + 1 modules ***!
\********************************************************************/
/***/ (function(__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) {
// EXTERNAL MODULE: ./node_modules/antd/es/style/default.less
var style_default = __webpack_require__(43146);
;// CONCATENATED MODULE: ./node_modules/antd/es/breadcrumb/style/index.less
// extracted by mini-css-extract-plugin
// EXTERNAL MODULE: ./node_modules/antd/es/dropdown/style/index.js + 1 modules
var style = __webpack_require__(68018);
// EXTERNAL MODULE: ./node_modules/antd/es/menu/style/index.js + 1 modules
var menu_style = __webpack_require__(83736);
;// CONCATENATED MODULE: ./node_modules/antd/es/breadcrumb/style/index.js
// style dependencies
/***/ }),
/***/ 13622:
/*!***********************************************************************************!*\
!*** ./node_modules/antd/node_modules/@ant-design/icons/es/icons/DownOutlined.js ***!
\***********************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* harmony import */ var _babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/esm/objectSpread2 */ 1413);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ 67294);
/* harmony import */ var _ant_design_icons_svg_es_asn_DownOutlined__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @ant-design/icons-svg/es/asn/DownOutlined */ 66023);
/* harmony import */ var _components_AntdIcon__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../components/AntdIcon */ 93771);
// GENERATE BY ./scripts/generate.ts
// DON NOT EDIT IT MANUALLY
var DownOutlined = function DownOutlined(props, ref) {
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_AntdIcon__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, (0,_babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z)((0,_babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z)({}, props), {}, {
ref: ref,
icon: _ant_design_icons_svg_es_asn_DownOutlined__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z
}));
};
DownOutlined.displayName = 'DownOutlined';
/* harmony default export */ __webpack_exports__["Z"] = (/*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.forwardRef(DownOutlined));
/***/ }),
/***/ 34243:
/*!**********************************************************!*\
!*** ./node_modules/rc-overflow/es/index.js + 4 modules ***!
\**********************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
"Z": function() { return /* binding */ rc_overflow_es; }
});
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
var esm_extends = __webpack_require__(87462);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectSpread2.js
var objectSpread2 = __webpack_require__(1413);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
var slicedToArray = __webpack_require__(97685);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js
var objectWithoutProperties = __webpack_require__(45987);
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__(67294);
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__(94184);
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./node_modules/rc-resize-observer/es/index.js + 4 modules
var es = __webpack_require__(48555);
// EXTERNAL MODULE: ./node_modules/rc-util/es/hooks/useLayoutEffect.js
var useLayoutEffect = __webpack_require__(8410);
;// CONCATENATED MODULE: ./node_modules/rc-overflow/es/Item.js
var _excluded = ["prefixCls", "invalidate", "item", "renderItem", "responsive", "responsiveDisabled", "registerSize", "itemKey", "className", "style", "children", "display", "order", "component"];
// Use shared variable to save bundle size
var UNDEFINED = undefined;
function InternalItem(props, ref) {
var prefixCls = props.prefixCls,
invalidate = props.invalidate,
item = props.item,
renderItem = props.renderItem,
responsive = props.responsive,
responsiveDisabled = props.responsiveDisabled,
registerSize = props.registerSize,
itemKey = props.itemKey,
className = props.className,
style = props.style,
children = props.children,
display = props.display,
order = props.order,
_props$component = props.component,
Component = _props$component === void 0 ? 'div' : _props$component,
restProps = (0,objectWithoutProperties/* default */.Z)(props, _excluded);
var mergedHidden = responsive && !display; // ================================ Effect ================================
function internalRegisterSize(width) {
registerSize(itemKey, width);
}
react.useEffect(function () {
return function () {
internalRegisterSize(null);
};
}, []); // ================================ Render ================================
var childNode = renderItem && item !== UNDEFINED ? renderItem(item) : children;
var overflowStyle;
if (!invalidate) {
overflowStyle = {
opacity: mergedHidden ? 0 : 1,
height: mergedHidden ? 0 : UNDEFINED,
overflowY: mergedHidden ? 'hidden' : UNDEFINED,
order: responsive ? order : UNDEFINED,
pointerEvents: mergedHidden ? 'none' : UNDEFINED,
position: mergedHidden ? 'absolute' : UNDEFINED
};
}
var overflowProps = {};
if (mergedHidden) {
overflowProps['aria-hidden'] = true;
}
var itemNode = /*#__PURE__*/react.createElement(Component, (0,esm_extends/* default */.Z)({
className: classnames_default()(!invalidate && prefixCls, className),
style: (0,objectSpread2/* default */.Z)((0,objectSpread2/* default */.Z)({}, overflowStyle), style)
}, overflowProps, restProps, {
ref: ref
}), childNode);
if (responsive) {
itemNode = /*#__PURE__*/react.createElement(es/* default */.Z, {
onResize: function onResize(_ref) {
var offsetWidth = _ref.offsetWidth;
internalRegisterSize(offsetWidth);
},
disabled: responsiveDisabled
}, itemNode);
}
return itemNode;
}
var Item = /*#__PURE__*/react.forwardRef(InternalItem);
Item.displayName = 'Item';
/* harmony default export */ var es_Item = (Item);
// EXTERNAL MODULE: ./node_modules/rc-util/es/raf.js
var raf = __webpack_require__(75164);
// EXTERNAL MODULE: ./node_modules/rc-util/es/hooks/useState.js
var useState = __webpack_require__(30470);
;// CONCATENATED MODULE: ./node_modules/rc-overflow/es/hooks/useBatchFrameState.js
/**
* State generate. Return a `setState` but it will flush all state with one render to save perf.
* This is not a realization of `unstable_batchedUpdates`.
*/
function useBatchFrameState() {
var _useState = (0,useState/* default */.Z)({}),
_useState2 = (0,slicedToArray/* default */.Z)(_useState, 2),
forceUpdate = _useState2[1];
var statesRef = (0,react.useRef)([]);
var walkingIndex = 0;
var beforeFrameId = 0;
function createState(defaultValue) {
var myIndex = walkingIndex;
walkingIndex += 1; // Fill value if not exist yet
if (statesRef.current.length < myIndex + 1) {
statesRef.current[myIndex] = defaultValue;
} // Return filled as `setState`
var value = statesRef.current[myIndex];
function setValue(val) {
statesRef.current[myIndex] = typeof val === 'function' ? val(statesRef.current[myIndex]) : val;
raf/* default.cancel */.Z.cancel(beforeFrameId); // Flush with batch
beforeFrameId = (0,raf/* default */.Z)(function () {
forceUpdate({}, true);
});
}
return [value, setValue];
}
return createState;
}
;// CONCATENATED MODULE: ./node_modules/rc-overflow/es/RawItem.js
var RawItem_excluded = ["component"],
_excluded2 = ["className"],
_excluded3 = ["className"];
var InternalRawItem = function InternalRawItem(props, ref) {
var context = react.useContext(OverflowContext); // Render directly when context not provided
if (!context) {
var _props$component = props.component,
Component = _props$component === void 0 ? 'div' : _props$component,
_restProps = (0,objectWithoutProperties/* default */.Z)(props, RawItem_excluded);
return /*#__PURE__*/react.createElement(Component, (0,esm_extends/* default */.Z)({}, _restProps, {
ref: ref
}));
}
var contextClassName = context.className,
restContext = (0,objectWithoutProperties/* default */.Z)(context, _excluded2);
var className = props.className,
restProps = (0,objectWithoutProperties/* default */.Z)(props, _excluded3); // Do not pass context to sub item to avoid multiple measure
return /*#__PURE__*/react.createElement(OverflowContext.Provider, {
value: null
}, /*#__PURE__*/react.createElement(es_Item, (0,esm_extends/* default */.Z)({
ref: ref,
className: classnames_default()(contextClassName, className)
}, restContext, restProps)));
};
var RawItem = /*#__PURE__*/react.forwardRef(InternalRawItem);
RawItem.displayName = 'RawItem';
/* harmony default export */ var es_RawItem = (RawItem);
;// CONCATENATED MODULE: ./node_modules/rc-overflow/es/Overflow.js
var Overflow_excluded = ["prefixCls", "data", "renderItem", "renderRawItem", "itemKey", "itemWidth", "ssr", "style", "className", "maxCount", "renderRest", "renderRawRest", "suffix", "component", "itemComponent", "onVisibleChange"];
var OverflowContext = /*#__PURE__*/react.createContext(null);
var RESPONSIVE = 'responsive';
var INVALIDATE = 'invalidate';
function defaultRenderRest(omittedItems) {
return "+ ".concat(omittedItems.length, " ...");
}
function Overflow(props, ref) {
var _props$prefixCls = props.prefixCls,
prefixCls = _props$prefixCls === void 0 ? 'rc-overflow' : _props$prefixCls,
_props$data = props.data,
data = _props$data === void 0 ? [] : _props$data,
renderItem = props.renderItem,
renderRawItem = props.renderRawItem,
itemKey = props.itemKey,
_props$itemWidth = props.itemWidth,
itemWidth = _props$itemWidth === void 0 ? 10 : _props$itemWidth,
ssr = props.ssr,
style = props.style,
className = props.className,
maxCount = props.maxCount,
renderRest = props.renderRest,
renderRawRest = props.renderRawRest,
suffix = props.suffix,
_props$component = props.component,
Component = _props$component === void 0 ? 'div' : _props$component,
itemComponent = props.itemComponent,
onVisibleChange = props.onVisibleChange,
restProps = (0,objectWithoutProperties/* default */.Z)(props, Overflow_excluded);
var createUseState = useBatchFrameState();
var fullySSR = ssr === 'full';
var _createUseState = createUseState(null),
_createUseState2 = (0,slicedToArray/* default */.Z)(_createUseState, 2),
containerWidth = _createUseState2[0],
setContainerWidth = _createUseState2[1];
var mergedContainerWidth = containerWidth || 0;
var _createUseState3 = createUseState(new Map()),
_createUseState4 = (0,slicedToArray/* default */.Z)(_createUseState3, 2),
itemWidths = _createUseState4[0],
setItemWidths = _createUseState4[1];
var _createUseState5 = createUseState(0),
_createUseState6 = (0,slicedToArray/* default */.Z)(_createUseState5, 2),
prevRestWidth = _createUseState6[0],
setPrevRestWidth = _createUseState6[1];
var _createUseState7 = createUseState(0),
_createUseState8 = (0,slicedToArray/* default */.Z)(_createUseState7, 2),
restWidth = _createUseState8[0],
setRestWidth = _createUseState8[1];
var _createUseState9 = createUseState(0),
_createUseState10 = (0,slicedToArray/* default */.Z)(_createUseState9, 2),
suffixWidth = _createUseState10[0],
setSuffixWidth = _createUseState10[1];
var _useState = (0,react.useState)(null),
_useState2 = (0,slicedToArray/* default */.Z)(_useState, 2),
suffixFixedStart = _useState2[0],
setSuffixFixedStart = _useState2[1];
var _useState3 = (0,react.useState)(null),
_useState4 = (0,slicedToArray/* default */.Z)(_useState3, 2),
displayCount = _useState4[0],
setDisplayCount = _useState4[1];
var mergedDisplayCount = react.useMemo(function () {
if (displayCount === null && fullySSR) {
return Number.MAX_SAFE_INTEGER;
}
return displayCount || 0;
}, [displayCount, containerWidth]);
var _useState5 = (0,react.useState)(false),
_useState6 = (0,slicedToArray/* default */.Z)(_useState5, 2),
restReady = _useState6[0],
setRestReady = _useState6[1];
var itemPrefixCls = "".concat(prefixCls, "-item"); // Always use the max width to avoid blink
var mergedRestWidth = Math.max(prevRestWidth, restWidth); // ================================= Data =================================
var isResponsive = maxCount === RESPONSIVE;
var shouldResponsive = data.length && isResponsive;
var invalidate = maxCount === INVALIDATE;
/**
* When is `responsive`, we will always render rest node to get the real width of it for calculation
*/
var showRest = shouldResponsive || typeof maxCount === 'number' && data.length > maxCount;
var mergedData = (0,react.useMemo)(function () {
var items = data;
if (shouldResponsive) {
if (containerWidth === null && fullySSR) {
items = data;
} else {
items = data.slice(0, Math.min(data.length, mergedContainerWidth / itemWidth));
}
} else if (typeof maxCount === 'number') {
items = data.slice(0, maxCount);
}
return items;
}, [data, itemWidth, containerWidth, maxCount, shouldResponsive]);
var omittedItems = (0,react.useMemo)(function () {
if (shouldResponsive) {
return data.slice(mergedDisplayCount + 1);
}
return data.slice(mergedData.length);
}, [data, mergedData, shouldResponsive, mergedDisplayCount]); // ================================= Item =================================
var getKey = (0,react.useCallback)(function (item, index) {
var _ref;
if (typeof itemKey === 'function') {
return itemKey(item);
}
return (_ref = itemKey && (item === null || item === void 0 ? void 0 : item[itemKey])) !== null && _ref !== void 0 ? _ref : index;
}, [itemKey]);
var mergedRenderItem = (0,react.useCallback)(renderItem || function (item) {
return item;
}, [renderItem]);
function updateDisplayCount(count, suffixFixedStartVal, notReady) {
// React 18 will sync render even when the value is same in some case.
// We take `mergedData` as deps which may cause dead loop if it's dynamic generate.
// ref: https://github.com/ant-design/ant-design/issues/36559
if (displayCount === count && (suffixFixedStartVal === undefined || suffixFixedStartVal === suffixFixedStart)) {
return;
}
setDisplayCount(count);
if (!notReady) {
setRestReady(count < data.length - 1);
onVisibleChange === null || onVisibleChange === void 0 ? void 0 : onVisibleChange(count);
}
if (suffixFixedStartVal !== undefined) {
setSuffixFixedStart(suffixFixedStartVal);
}
} // ================================= Size =================================
function onOverflowResize(_, element) {
setContainerWidth(element.clientWidth);
}
function registerSize(key, width) {
setItemWidths(function (origin) {
var clone = new Map(origin);
if (width === null) {
clone.delete(key);
} else {
clone.set(key, width);
}
return clone;
});
}
function registerOverflowSize(_, width) {
setRestWidth(width);
setPrevRestWidth(restWidth);
}
function registerSuffixSize(_, width) {
setSuffixWidth(width);
} // ================================ Effect ================================
function getItemWidth(index) {
return itemWidths.get(getKey(mergedData[index], index));
}
(0,useLayoutEffect/* default */.Z)(function () {
if (mergedContainerWidth && mergedRestWidth && mergedData) {
var totalWidth = suffixWidth;
var len = mergedData.length;
var lastIndex = len - 1; // When data count change to 0, reset this since not loop will reach
if (!len) {
updateDisplayCount(0, null);
return;
}
for (var i = 0; i < len; i += 1) {
var currentItemWidth = getItemWidth(i); // Fully will always render
if (fullySSR) {
currentItemWidth = currentItemWidth || 0;
} // Break since data not ready
if (currentItemWidth === undefined) {
updateDisplayCount(i - 1, undefined, true);
break;
} // Find best match
totalWidth += currentItemWidth;
if ( // Only one means `totalWidth` is the final width
lastIndex === 0 && totalWidth <= mergedContainerWidth || // Last two width will be the final width
i === lastIndex - 1 && totalWidth + getItemWidth(lastIndex) <= mergedContainerWidth) {
// Additional check if match the end
updateDisplayCount(lastIndex, null);
break;
} else if (totalWidth + mergedRestWidth > mergedContainerWidth) {
// Can not hold all the content to show rest
updateDisplayCount(i - 1, totalWidth - currentItemWidth - suffixWidth + restWidth);
break;
}
}
if (suffix && getItemWidth(0) + suffixWidth > mergedContainerWidth) {
setSuffixFixedStart(null);
}
}
}, [mergedContainerWidth, itemWidths, restWidth, suffixWidth, getKey, mergedData]); // ================================ Render ================================
var displayRest = restReady && !!omittedItems.length;
var suffixStyle = {};
if (suffixFixedStart !== null && shouldResponsive) {
suffixStyle = {
position: 'absolute',
left: suffixFixedStart,
top: 0
};
}
var itemSharedProps = {
prefixCls: itemPrefixCls,
responsive: shouldResponsive,
component: itemComponent,
invalidate: invalidate
}; // >>>>> Choice render fun by `renderRawItem`
var internalRenderItemNode = renderRawItem ? function (item, index) {
var key = getKey(item, index);
return /*#__PURE__*/react.createElement(OverflowContext.Provider, {
key: key,
value: (0,objectSpread2/* default */.Z)((0,objectSpread2/* default */.Z)({}, itemSharedProps), {}, {
order: index,
item: item,
itemKey: key,
registerSize: registerSize,
display: index <= mergedDisplayCount
})
}, renderRawItem(item, index));
} : function (item, index) {
var key = getKey(item, index);
return /*#__PURE__*/react.createElement(es_Item, (0,esm_extends/* default */.Z)({}, itemSharedProps, {
order: index,
key: key,
item: item,
renderItem: mergedRenderItem,
itemKey: key,
registerSize: registerSize,
display: index <= mergedDisplayCount
}));
}; // >>>>> Rest node
var restNode;
var restContextProps = {
order: displayRest ? mergedDisplayCount : Number.MAX_SAFE_INTEGER,
className: "".concat(itemPrefixCls, "-rest"),
registerSize: registerOverflowSize,
display: displayRest
};
if (!renderRawRest) {
var mergedRenderRest = renderRest || defaultRenderRest;
restNode = /*#__PURE__*/react.createElement(es_Item, (0,esm_extends/* default */.Z)({}, itemSharedProps, restContextProps), typeof mergedRenderRest === 'function' ? mergedRenderRest(omittedItems) : mergedRenderRest);
} else if (renderRawRest) {
restNode = /*#__PURE__*/react.createElement(OverflowContext.Provider, {
value: (0,objectSpread2/* default */.Z)((0,objectSpread2/* default */.Z)({}, itemSharedProps), restContextProps)
}, renderRawRest(omittedItems));
}
var overflowNode = /*#__PURE__*/react.createElement(Component, (0,esm_extends/* default */.Z)({
className: classnames_default()(!invalidate && prefixCls, className),
style: style,
ref: ref
}, restProps), mergedData.map(internalRenderItemNode), showRest ? restNode : null, suffix && /*#__PURE__*/react.createElement(es_Item, (0,esm_extends/* default */.Z)({}, itemSharedProps, {
responsive: isResponsive,
responsiveDisabled: !shouldResponsive,
order: mergedDisplayCount,
className: "".concat(itemPrefixCls, "-suffix"),
registerSize: registerSuffixSize,
display: true,
style: suffixStyle
}), suffix));
if (isResponsive) {
overflowNode = /*#__PURE__*/react.createElement(es/* default */.Z, {
onResize: onOverflowResize,
disabled: !shouldResponsive
}, overflowNode);
}
return overflowNode;
}
var ForwardOverflow = /*#__PURE__*/react.forwardRef(Overflow);
ForwardOverflow.displayName = 'Overflow';
ForwardOverflow.Item = es_RawItem;
ForwardOverflow.RESPONSIVE = RESPONSIVE;
ForwardOverflow.INVALIDATE = INVALIDATE; // Convert to generic type
/* harmony default export */ var es_Overflow = (ForwardOverflow);
;// CONCATENATED MODULE: ./node_modules/rc-overflow/es/index.js
/* harmony default export */ var rc_overflow_es = (es_Overflow);
/***/ }),
/***/ 48555:
/*!*****************************************************************!*\
!*** ./node_modules/rc-resize-observer/es/index.js + 4 modules ***!
\*****************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
"Z": function() { return /* binding */ es; }
});
// UNUSED EXPORTS: _rs
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
var esm_extends = __webpack_require__(87462);
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__(67294);
// EXTERNAL MODULE: ./node_modules/rc-util/es/Children/toArray.js
var toArray = __webpack_require__(50344);
// EXTERNAL MODULE: ./node_modules/rc-util/es/warning.js
var warning = __webpack_require__(80334);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectSpread2.js
var objectSpread2 = __webpack_require__(1413);
// EXTERNAL MODULE: ./node_modules/rc-util/es/ref.js
var es_ref = __webpack_require__(42550);
// EXTERNAL MODULE: ./node_modules/rc-util/es/Dom/findDOMNode.js
var findDOMNode = __webpack_require__(34203);
// EXTERNAL MODULE: ./node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js
var ResizeObserver_es = __webpack_require__(91033);
;// CONCATENATED MODULE: ./node_modules/rc-resize-observer/es/utils/observerUtil.js
// =============================== Const ===============================
var elementListeners = new Map();
function onResize(entities) {
entities.forEach(function (entity) {
var _elementListeners$get;
var target = entity.target;
(_elementListeners$get = elementListeners.get(target)) === null || _elementListeners$get === void 0 ? void 0 : _elementListeners$get.forEach(function (listener) {
return listener(target);
});
});
}
// Note: ResizeObserver polyfill not support option to measure border-box resize
var resizeObserver = new ResizeObserver_es/* default */.Z(onResize);
// Dev env only
var _el = (/* unused pure expression or super */ null && ( false ? 0 : null)); // eslint-disable-line
var _rs = (/* unused pure expression or super */ null && ( false ? 0 : null)); // eslint-disable-line
// ============================== Observe ==============================
function observe(element, callback) {
if (!elementListeners.has(element)) {
elementListeners.set(element, new Set());
resizeObserver.observe(element);
}
elementListeners.get(element).add(callback);
}
function unobserve(element, callback) {
if (elementListeners.has(element)) {
elementListeners.get(element).delete(callback);
if (!elementListeners.get(element).size) {
resizeObserver.unobserve(element);
elementListeners.delete(element);
}
}
}
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
var classCallCheck = __webpack_require__(15671);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
var createClass = __webpack_require__(43144);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js
var inherits = __webpack_require__(60136);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createSuper.js + 1 modules
var createSuper = __webpack_require__(51630);
;// CONCATENATED MODULE: ./node_modules/rc-resize-observer/es/SingleObserver/DomWrapper.js
/**
* Fallback to findDOMNode if origin ref do not provide any dom element
*/
var DomWrapper = /*#__PURE__*/function (_React$Component) {
(0,inherits/* default */.Z)(DomWrapper, _React$Component);
var _super = (0,createSuper/* default */.Z)(DomWrapper);
function DomWrapper() {
(0,classCallCheck/* default */.Z)(this, DomWrapper);
return _super.apply(this, arguments);
}
(0,createClass/* default */.Z)(DomWrapper, [{
key: "render",
value: function render() {
return this.props.children;
}
}]);
return DomWrapper;
}(react.Component);
;// CONCATENATED MODULE: ./node_modules/rc-resize-observer/es/Collection.js
var CollectionContext = /*#__PURE__*/react.createContext(null);
/**
* Collect all the resize event from children ResizeObserver
*/
function Collection(_ref) {
var children = _ref.children,
onBatchResize = _ref.onBatchResize;
var resizeIdRef = react.useRef(0);
var resizeInfosRef = react.useRef([]);
var onCollectionResize = react.useContext(CollectionContext);
var onResize = react.useCallback(function (size, element, data) {
resizeIdRef.current += 1;
var currentId = resizeIdRef.current;
resizeInfosRef.current.push({
size: size,
element: element,
data: data
});
Promise.resolve().then(function () {
if (currentId === resizeIdRef.current) {
onBatchResize === null || onBatchResize === void 0 ? void 0 : onBatchResize(resizeInfosRef.current);
resizeInfosRef.current = [];
}
});
// Continue bubbling if parent exist
onCollectionResize === null || onCollectionResize === void 0 ? void 0 : onCollectionResize(size, element, data);
}, [onBatchResize, onCollectionResize]);
return /*#__PURE__*/react.createElement(CollectionContext.Provider, {
value: onResize
}, children);
}
;// CONCATENATED MODULE: ./node_modules/rc-resize-observer/es/SingleObserver/index.js
function SingleObserver(props, ref) {
var children = props.children,
disabled = props.disabled;
var elementRef = react.useRef(null);
var wrapperRef = react.useRef(null);
var onCollectionResize = react.useContext(CollectionContext);
// =========================== Children ===========================
var isRenderProps = typeof children === 'function';
var mergedChildren = isRenderProps ? children(elementRef) : children;
// ============================= Size =============================
var sizeRef = react.useRef({
width: -1,
height: -1,
offsetWidth: -1,
offsetHeight: -1
});
// ============================= Ref ==============================
var canRef = !isRenderProps && /*#__PURE__*/react.isValidElement(mergedChildren) && (0,es_ref/* supportRef */.Yr)(mergedChildren);
var originRef = canRef ? mergedChildren.ref : null;
var mergedRef = react.useMemo(function () {
return (0,es_ref/* composeRef */.sQ)(originRef, elementRef);
}, [originRef, elementRef]);
var getDom = function getDom() {
return (0,findDOMNode/* default */.Z)(elementRef.current) || (0,findDOMNode/* default */.Z)(wrapperRef.current);
};
react.useImperativeHandle(ref, function () {
return getDom();
});
// =========================== Observe ============================
var propsRef = react.useRef(props);
propsRef.current = props;
// Handler
var onInternalResize = react.useCallback(function (target) {
var _propsRef$current = propsRef.current,
onResize = _propsRef$current.onResize,
data = _propsRef$current.data;
var _target$getBoundingCl = target.getBoundingClientRect(),
width = _target$getBoundingCl.width,
height = _target$getBoundingCl.height;
var offsetWidth = target.offsetWidth,
offsetHeight = target.offsetHeight;
/**
* Resize observer trigger when content size changed.
* In most case we just care about element size,
* let's use `boundary` instead of `contentRect` here to avoid shaking.
*/
var fixedWidth = Math.floor(width);
var fixedHeight = Math.floor(height);
if (sizeRef.current.width !== fixedWidth || sizeRef.current.height !== fixedHeight || sizeRef.current.offsetWidth !== offsetWidth || sizeRef.current.offsetHeight !== offsetHeight) {
var size = {
width: fixedWidth,
height: fixedHeight,
offsetWidth: offsetWidth,
offsetHeight: offsetHeight
};
sizeRef.current = size;
// IE is strange, right?
var mergedOffsetWidth = offsetWidth === Math.round(width) ? width : offsetWidth;
var mergedOffsetHeight = offsetHeight === Math.round(height) ? height : offsetHeight;
var sizeInfo = (0,objectSpread2/* default */.Z)((0,objectSpread2/* default */.Z)({}, size), {}, {
offsetWidth: mergedOffsetWidth,
offsetHeight: mergedOffsetHeight
});
// Let collection know what happened
onCollectionResize === null || onCollectionResize === void 0 ? void 0 : onCollectionResize(sizeInfo, target, data);
if (onResize) {
// defer the callback but not defer to next frame
Promise.resolve().then(function () {
onResize(sizeInfo, target);
});
}
}
}, []);
// Dynamic observe
react.useEffect(function () {
var currentElement = getDom();
if (currentElement && !disabled) {
observe(currentElement, onInternalResize);
}
return function () {
return unobserve(currentElement, onInternalResize);
};
}, [elementRef.current, disabled]);
// ============================ Render ============================
return /*#__PURE__*/react.createElement(DomWrapper, {
ref: wrapperRef
}, canRef ? /*#__PURE__*/react.cloneElement(mergedChildren, {
ref: mergedRef
}) : mergedChildren);
}
var RefSingleObserver = /*#__PURE__*/react.forwardRef(SingleObserver);
if (false) {}
/* harmony default export */ var es_SingleObserver = (RefSingleObserver);
;// CONCATENATED MODULE: ./node_modules/rc-resize-observer/es/index.js
var INTERNAL_PREFIX_KEY = 'rc-observer-key';
function ResizeObserver(props, ref) {
var children = props.children;
var childNodes = typeof children === 'function' ? [children] : (0,toArray/* default */.Z)(children);
if (false) {}
return childNodes.map(function (child, index) {
var key = (child === null || child === void 0 ? void 0 : child.key) || "".concat(INTERNAL_PREFIX_KEY, "-").concat(index);
return /*#__PURE__*/react.createElement(es_SingleObserver, (0,esm_extends/* default */.Z)({}, props, {
key: key,
ref: index === 0 ? ref : undefined
}), child);
});
}
var RefResizeObserver = /*#__PURE__*/react.forwardRef(ResizeObserver);
if (false) {}
RefResizeObserver.Collection = Collection;
/* harmony default export */ var es = (RefResizeObserver);
/***/ })
}]);