(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[190,5,7,8,10],{
/***/ "+vTd":
/*!******************************************************************!*\
!*** ./src/pages/Problemset/components/Topic/index.less?modules ***!
\******************************************************************/
/*! no static exports found */
/*! exports used: default */
/*! ModuleConcatenation bailout: Module is not an ECMAScript module */
/***/ (function(module, exports, __webpack_require__) {
// extracted by mini-css-extract-plugin
module.exports = {"flex_box_center":"flex_box_center___37CPQ","flex_space_between":"flex_space_between___1yzV5","flex_box_vertical_center":"flex_box_vertical_center___2QH_C","flex_box_center_end":"flex_box_center_end___22kLi","flex_box_column":"flex_box_column___1Y3On","list":"list___1gpez","row":"row___3uQSh","typeRow":"typeRow___ADZSj","type":"type___2pfNZ","typeName":"typeName___8ZhPv","typeIcon":"typeIcon___1Xniv","unpublished":"unpublished___dTXTI","private":"private___XQiDx","public":"public___iIFou","reviewFlag":"reviewFlag___YP4vk","typeRightAction":"typeRightAction___1PQjp","actionLink":"actionLink___2E5q_","actionIcon":"actionIcon___GCvNK","topicTitle":"topicTitle___3fJds","topicTitleContent":"topicTitleContent___35cf9","judgmentContent":"judgmentContent___SU5rV","programContent":"programContent___3G6-D","otherContent":"otherContent___1JHnX","combinationContent":"combinationContent___6ZXO-","con":"con___1_qCl","otherContentItem":"otherContentItem___18WrV","otehrContentHtml":"otehrContentHtml___LW3nV","difficultyRow":"difficultyRow___3HvT0","updateTimeRow":"updateTimeRow___1dNd0","updateTimeWrap":"updateTimeWrap___2PKks","updateTimeContent":"updateTimeContent___1mNBy","programLanguage":"programLanguage___3CnaJ","updateTimeRowAction":"updateTimeRowAction___1DaMt","bottomAction":"bottomAction___Y-BNC","borderColorBlue":"borderColorBlue___2Xd-0","borderColorRed":"borderColorRed___2zA_q","borderColorFFF":"borderColorFFF___2R5-5","borderColorGray":"borderColorGray___nZnDe","selectIcon":"selectIcon___2byLd","colorGreen":"colorGreen___1iOKR","parseAnswerBorder":"parseAnswerBorder___1LTYn","answer":"answer___2L9lv","answerHtml":"answerHtml___3zrOk","parse":"parse___3d3dm","parseText":"parseText___1C_VL","parseAnswer":"parseAnswer___QMVPC","parseAnswerHtml":"parseAnswerHtml___2TCVz","actionBar":"actionBar___2ItMN","line":"line___-rzSr","know":"know___y8QKK","title":"title___21uOv","tr":"tr___3kTJL","menu":"menu___SYdg7","bottom":"bottom___2dFIa"};
/***/ }),
/***/ "+z73":
/*!*******************************************************************!*\
!*** ./src/pages/Problemset/components/Crumbs/index.less?modules ***!
\*******************************************************************/
/*! no static exports found */
/*! exports used: default */
/*! ModuleConcatenation bailout: Module is not an ECMAScript module */
/***/ (function(module, exports, __webpack_require__) {
// extracted by mini-css-extract-plugin
module.exports = {"flex_box_center":"flex_box_center___3WSrc","flex_space_between":"flex_space_between___1fpCp","flex_box_vertical_center":"flex_box_vertical_center___3Wy8W","flex_box_center_end":"flex_box_center_end___3YIs2","flex_box_column":"flex_box_column___3CNwR","pWrap":"pWrap___2jVbQ","few":"few___3Eebn"};
/***/ }),
/***/ "1ZF9":
/*!*****************************************!*\
!*** ./src/assets/images/Authorize.png ***!
\*****************************************/
/*! no static exports found */
/*! exports used: default */
/*! ModuleConcatenation bailout: Module is not an ECMAScript module */
/***/ (function(module, exports, __webpack_require__) {
module.exports = __webpack_require__.p + "static/Authorize.cc9c212f.png";
/***/ }),
/***/ "6+eU":
/*!************************************************************!*\
!*** ./node_modules/rc-pagination/es/index.js + 4 modules ***!
\************************************************************/
/*! exports provided: default */
/*! exports used: default */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@babel/runtime/helpers/esm/createClass.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@babel/runtime/helpers/esm/createSuper.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@babel/runtime/helpers/esm/defineProperty.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@babel/runtime/helpers/esm/extends.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@babel/runtime/helpers/esm/inherits.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@babel/runtime/helpers/esm/objectSpread2.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/classnames/index.js (<- Module is not an ECMAScript module) */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/rc-pagination/es/locale/zh_CN.js */
/*! ModuleConcatenation bailout: Cannot concat with external "window.React" (<- Module is not an ECMAScript module) */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
// EXPORTS
__webpack_require__.d(__webpack_exports__, "a", function() { return /* reexport */ es_Pagination; });
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
var esm_extends = __webpack_require__("wx14");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
var defineProperty = __webpack_require__("rePB");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectSpread2.js
var objectSpread2 = __webpack_require__("VTBJ");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
var classCallCheck = __webpack_require__("1OyB");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
var createClass = __webpack_require__("vuIU");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js
var inherits = __webpack_require__("Ji7U");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createSuper.js + 1 modules
var createSuper = __webpack_require__("LK+K");
// EXTERNAL MODULE: external "window.React"
var external_window_React_ = __webpack_require__("cDcd");
var external_window_React_default = /*#__PURE__*/__webpack_require__.n(external_window_React_);
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("TSYQ");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// CONCATENATED MODULE: ./node_modules/rc-pagination/es/Pager.js
/* eslint react/prop-types: 0 */
var Pager_Pager = function Pager(props) {
var _classNames;
var prefixCls = "".concat(props.rootPrefixCls, "-item");
var cls = classnames_default()(prefixCls, "".concat(prefixCls, "-").concat(props.page), (_classNames = {}, Object(defineProperty["a" /* default */])(_classNames, "".concat(prefixCls, "-active"), props.active), Object(defineProperty["a" /* default */])(_classNames, props.className, !!props.className), Object(defineProperty["a" /* default */])(_classNames, "".concat(prefixCls, "-disabled"), !props.page), _classNames));
var handleClick = function handleClick() {
props.onClick(props.page);
};
var handleKeyPress = function handleKeyPress(e) {
props.onKeyPress(e, props.onClick, props.page);
};
return /*#__PURE__*/external_window_React_default.a.createElement("li", {
title: props.showTitle ? props.page : null,
className: cls,
onClick: handleClick,
onKeyPress: handleKeyPress,
tabIndex: "0"
}, props.itemRender(props.page, 'page', /*#__PURE__*/external_window_React_default.a.createElement("a", {
rel: "nofollow"
}, props.page)));
};
/* harmony default export */ var es_Pager = (Pager_Pager);
// CONCATENATED MODULE: ./node_modules/rc-pagination/es/KeyCode.js
/* harmony default export */ var KeyCode = ({
ZERO: 48,
NINE: 57,
NUMPAD_ZERO: 96,
NUMPAD_NINE: 105,
BACKSPACE: 8,
DELETE: 46,
ENTER: 13,
ARROW_UP: 38,
ARROW_DOWN: 40
});
// CONCATENATED MODULE: ./node_modules/rc-pagination/es/Options.js
/* eslint react/prop-types: 0 */
var Options_Options = /*#__PURE__*/function (_React$Component) {
Object(inherits["a" /* default */])(Options, _React$Component);
var _super = Object(createSuper["a" /* default */])(Options);
function Options() {
var _this;
Object(classCallCheck["a" /* default */])(this, Options);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
_this = _super.call.apply(_super, [this].concat(args));
_this.state = {
goInputText: ''
};
_this.buildOptionText = function (value) {
return "".concat(value, " ").concat(_this.props.locale.items_per_page);
};
_this.changeSize = function (value) {
_this.props.changeSize(Number(value));
};
_this.handleChange = function (e) {
_this.setState({
goInputText: e.target.value
});
};
_this.handleBlur = function (e) {
var _this$props = _this.props,
goButton = _this$props.goButton,
quickGo = _this$props.quickGo,
rootPrefixCls = _this$props.rootPrefixCls;
var goInputText = _this.state.goInputText;
if (goButton || goInputText === '') {
return;
}
if (e.relatedTarget && (e.relatedTarget.className.indexOf("".concat(rootPrefixCls, "-prev")) >= 0 || e.relatedTarget.className.indexOf("".concat(rootPrefixCls, "-next")) >= 0)) {
return;
}
_this.setState({
goInputText: ''
});
quickGo(_this.getValidValue());
};
_this.go = function (e) {
var goInputText = _this.state.goInputText;
if (goInputText === '') {
return;
}
if (e.keyCode === KeyCode.ENTER || e.type === 'click') {
_this.setState({
goInputText: ''
});
_this.props.quickGo(_this.getValidValue());
}
};
return _this;
}
Object(createClass["a" /* default */])(Options, [{
key: "getValidValue",
value: function getValidValue() {
var _this$state = this.state,
goInputText = _this$state.goInputText,
current = _this$state.current; // eslint-disable-next-line no-restricted-globals
return !goInputText || isNaN(goInputText) ? current : Number(goInputText);
}
}, {
key: "getPageSizeOptions",
value: function getPageSizeOptions() {
var _this$props2 = this.props,
pageSize = _this$props2.pageSize,
pageSizeOptions = _this$props2.pageSizeOptions;
if (pageSizeOptions.some(function (option) {
return option.toString() === pageSize.toString();
})) {
return pageSizeOptions;
}
return pageSizeOptions.concat([pageSize.toString()]).sort(function (a, b) {
// eslint-disable-next-line no-restricted-globals
var numberA = isNaN(Number(a)) ? 0 : Number(a); // eslint-disable-next-line no-restricted-globals
var numberB = isNaN(Number(b)) ? 0 : Number(b);
return numberA - numberB;
});
}
}, {
key: "render",
value: function render() {
var _this2 = this;
var _this$props3 = this.props,
pageSize = _this$props3.pageSize,
locale = _this$props3.locale,
rootPrefixCls = _this$props3.rootPrefixCls,
changeSize = _this$props3.changeSize,
quickGo = _this$props3.quickGo,
goButton = _this$props3.goButton,
selectComponentClass = _this$props3.selectComponentClass,
buildOptionText = _this$props3.buildOptionText,
selectPrefixCls = _this$props3.selectPrefixCls,
disabled = _this$props3.disabled;
var goInputText = this.state.goInputText;
var prefixCls = "".concat(rootPrefixCls, "-options");
var Select = selectComponentClass;
var changeSelect = null;
var goInput = null;
var gotoButton = null;
if (!changeSize && !quickGo) {
return null;
}
var pageSizeOptions = this.getPageSizeOptions();
if (changeSize && Select) {
var options = pageSizeOptions.map(function (opt, i) {
return /*#__PURE__*/external_window_React_default.a.createElement(Select.Option, {
key: i,
value: opt.toString()
}, (buildOptionText || _this2.buildOptionText)(opt));
});
changeSelect = /*#__PURE__*/external_window_React_default.a.createElement(Select, {
disabled: disabled,
prefixCls: selectPrefixCls,
showSearch: false,
className: "".concat(prefixCls, "-size-changer"),
optionLabelProp: "children",
dropdownMatchSelectWidth: false,
value: (pageSize || pageSizeOptions[0]).toString(),
onChange: this.changeSize,
getPopupContainer: function getPopupContainer(triggerNode) {
return triggerNode.parentNode;
}
}, options);
}
if (quickGo) {
if (goButton) {
gotoButton = typeof goButton === 'boolean' ? /*#__PURE__*/external_window_React_default.a.createElement("button", {
type: "button",
onClick: this.go,
onKeyUp: this.go,
disabled: disabled,
className: "".concat(prefixCls, "-quick-jumper-button")
}, locale.jump_to_confirm) : /*#__PURE__*/external_window_React_default.a.createElement("span", {
onClick: this.go,
onKeyUp: this.go
}, goButton);
}
goInput = /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "".concat(prefixCls, "-quick-jumper")
}, locale.jump_to, /*#__PURE__*/external_window_React_default.a.createElement("input", {
disabled: disabled,
type: "text",
value: goInputText,
onChange: this.handleChange,
onKeyUp: this.go,
onBlur: this.handleBlur
}), locale.page, gotoButton);
}
return /*#__PURE__*/external_window_React_default.a.createElement("li", {
className: "".concat(prefixCls)
}, changeSelect, goInput);
}
}]);
return Options;
}(external_window_React_default.a.Component);
Options_Options.defaultProps = {
pageSizeOptions: ['10', '20', '50', '100']
};
/* harmony default export */ var es_Options = (Options_Options);
// EXTERNAL MODULE: ./node_modules/rc-pagination/es/locale/zh_CN.js
var zh_CN = __webpack_require__("N2Kk");
// CONCATENATED MODULE: ./node_modules/rc-pagination/es/Pagination.js
/* eslint react/prop-types: 0 */
function noop() {}
function isInteger(value) {
return (// eslint-disable-next-line no-restricted-globals
typeof value === 'number' && isFinite(value) && Math.floor(value) === value
);
}
function defaultItemRender(page, type, element) {
return element;
}
function calculatePage(p, state, props) {
var pageSize = typeof p === 'undefined' ? state.pageSize : p;
return Math.floor((props.total - 1) / pageSize) + 1;
}
var Pagination_Pagination = /*#__PURE__*/function (_React$Component) {
Object(inherits["a" /* default */])(Pagination, _React$Component);
var _super = Object(createSuper["a" /* default */])(Pagination);
function Pagination(props) {
var _this;
Object(classCallCheck["a" /* default */])(this, Pagination);
_this = _super.call(this, props);
_this.getJumpPrevPage = function () {
return Math.max(1, _this.state.current - (_this.props.showLessItems ? 3 : 5));
};
_this.getJumpNextPage = function () {
return Math.min(calculatePage(undefined, _this.state, _this.props), _this.state.current + (_this.props.showLessItems ? 3 : 5));
};
_this.getItemIcon = function (icon, label) {
var prefixCls = _this.props.prefixCls;
var iconNode = icon || /*#__PURE__*/external_window_React_default.a.createElement("button", {
type: "button",
"aria-label": label,
className: "".concat(prefixCls, "-item-link")
});
if (typeof icon === 'function') {
iconNode = external_window_React_default.a.createElement(icon, Object(objectSpread2["a" /* default */])({}, _this.props));
}
return iconNode;
};
_this.savePaginationNode = function (node) {
_this.paginationNode = node;
};
_this.isValid = function (page) {
return isInteger(page) && page !== _this.state.current;
};
_this.shouldDisplayQuickJumper = function () {
var _this$props = _this.props,
showQuickJumper = _this$props.showQuickJumper,
pageSize = _this$props.pageSize,
total = _this$props.total;
if (total <= pageSize) {
return false;
}
return showQuickJumper;
};
_this.handleKeyDown = function (e) {
if (e.keyCode === KeyCode.ARROW_UP || e.keyCode === KeyCode.ARROW_DOWN) {
e.preventDefault();
}
};
_this.handleKeyUp = function (e) {
var value = _this.getValidValue(e);
var currentInputValue = _this.state.currentInputValue;
if (value !== currentInputValue) {
_this.setState({
currentInputValue: value
});
}
if (e.keyCode === KeyCode.ENTER) {
_this.handleChange(value);
} else if (e.keyCode === KeyCode.ARROW_UP) {
_this.handleChange(value - 1);
} else if (e.keyCode === KeyCode.ARROW_DOWN) {
_this.handleChange(value + 1);
}
};
_this.changePageSize = function (size) {
var current = _this.state.current;
var newCurrent = calculatePage(size, _this.state, _this.props);
current = current > newCurrent ? newCurrent : current; // fix the issue:
// Once 'total' is 0, 'current' in 'onShowSizeChange' is 0, which is not correct.
if (newCurrent === 0) {
// eslint-disable-next-line prefer-destructuring
current = _this.state.current;
}
if (typeof size === 'number') {
if (!('pageSize' in _this.props)) {
_this.setState({
pageSize: size
});
}
if (!('current' in _this.props)) {
_this.setState({
current: current,
currentInputValue: current
});
}
}
_this.props.onShowSizeChange(current, size);
if ('onChange' in _this.props && _this.props.onChange) {
_this.props.onChange(current, size);
}
};
_this.handleChange = function (p) {
var disabled = _this.props.disabled;
var page = p;
if (_this.isValid(page) && !disabled) {
var currentPage = calculatePage(undefined, _this.state, _this.props);
if (page > currentPage) {
page = currentPage;
} else if (page < 1) {
page = 1;
}
if (!('current' in _this.props)) {
_this.setState({
current: page,
currentInputValue: page
});
}
var pageSize = _this.state.pageSize;
_this.props.onChange(page, pageSize);
return page;
}
return _this.state.current;
};
_this.prev = function () {
if (_this.hasPrev()) {
_this.handleChange(_this.state.current - 1);
}
};
_this.next = function () {
if (_this.hasNext()) {
_this.handleChange(_this.state.current + 1);
}
};
_this.jumpPrev = function () {
_this.handleChange(_this.getJumpPrevPage());
};
_this.jumpNext = function () {
_this.handleChange(_this.getJumpNextPage());
};
_this.hasPrev = function () {
return _this.state.current > 1;
};
_this.hasNext = function () {
return _this.state.current < calculatePage(undefined, _this.state, _this.props);
};
_this.runIfEnter = function (event, callback) {
if (event.key === 'Enter' || event.charCode === 13) {
for (var _len = arguments.length, restParams = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
restParams[_key - 2] = arguments[_key];
}
callback.apply(void 0, restParams);
}
};
_this.runIfEnterPrev = function (e) {
_this.runIfEnter(e, _this.prev);
};
_this.runIfEnterNext = function (e) {
_this.runIfEnter(e, _this.next);
};
_this.runIfEnterJumpPrev = function (e) {
_this.runIfEnter(e, _this.jumpPrev);
};
_this.runIfEnterJumpNext = function (e) {
_this.runIfEnter(e, _this.jumpNext);
};
_this.handleGoTO = function (e) {
if (e.keyCode === KeyCode.ENTER || e.type === 'click') {
_this.handleChange(_this.state.currentInputValue);
}
};
var hasOnChange = props.onChange !== noop;
var hasCurrent = ('current' in props);
if (hasCurrent && !hasOnChange) {
// eslint-disable-next-line no-console
console.warn('Warning: You provided a `current` prop to a Pagination component without an `onChange` handler. This will render a read-only component.');
}
var _current = props.defaultCurrent;
if ('current' in props) {
// eslint-disable-next-line prefer-destructuring
_current = props.current;
}
var _pageSize = props.defaultPageSize;
if ('pageSize' in props) {
// eslint-disable-next-line prefer-destructuring
_pageSize = props.pageSize;
}
_current = Math.min(_current, calculatePage(_pageSize, undefined, props));
_this.state = {
current: _current,
currentInputValue: _current,
pageSize: _pageSize
};
return _this;
}
Object(createClass["a" /* default */])(Pagination, [{
key: "componentDidUpdate",
value: function componentDidUpdate(prevProps, prevState) {
// When current page change, fix focused style of prev item
// A hacky solution of https://github.com/ant-design/ant-design/issues/8948
var prefixCls = this.props.prefixCls;
if (prevState.current !== this.state.current && this.paginationNode) {
var lastCurrentNode = this.paginationNode.querySelector(".".concat(prefixCls, "-item-").concat(prevState.current));
if (lastCurrentNode && document.activeElement === lastCurrentNode) {
lastCurrentNode.blur();
}
}
}
}, {
key: "getValidValue",
value: function getValidValue(e) {
var inputValue = e.target.value;
var allPages = calculatePage(undefined, this.state, this.props);
var currentInputValue = this.state.currentInputValue;
var value;
if (inputValue === '') {
value = inputValue; // eslint-disable-next-line no-restricted-globals
} else if (isNaN(Number(inputValue))) {
value = currentInputValue;
} else if (inputValue >= allPages) {
value = allPages;
} else {
value = Number(inputValue);
}
return value;
}
}, {
key: "getShowSizeChanger",
value: function getShowSizeChanger() {
var _this$props2 = this.props,
showSizeChanger = _this$props2.showSizeChanger,
total = _this$props2.total,
totalBoundaryShowSizeChanger = _this$props2.totalBoundaryShowSizeChanger;
if (typeof showSizeChanger !== 'undefined') {
return showSizeChanger;
}
return total > totalBoundaryShowSizeChanger;
}
}, {
key: "renderPrev",
value: function renderPrev(prevPage) {
var _this$props3 = this.props,
prevIcon = _this$props3.prevIcon,
itemRender = _this$props3.itemRender;
var prevButton = itemRender(prevPage, 'prev', this.getItemIcon(prevIcon, 'prev page'));
var disabled = !this.hasPrev();
return Object(external_window_React_["isValidElement"])(prevButton) ? Object(external_window_React_["cloneElement"])(prevButton, {
disabled: disabled
}) : prevButton;
}
}, {
key: "renderNext",
value: function renderNext(nextPage) {
var _this$props4 = this.props,
nextIcon = _this$props4.nextIcon,
itemRender = _this$props4.itemRender;
var nextButton = itemRender(nextPage, 'next', this.getItemIcon(nextIcon, 'next page'));
var disabled = !this.hasNext();
return Object(external_window_React_["isValidElement"])(nextButton) ? Object(external_window_React_["cloneElement"])(nextButton, {
disabled: disabled
}) : nextButton;
}
}, {
key: "render",
value: function render() {
var _this2 = this;
var _this$props5 = this.props,
prefixCls = _this$props5.prefixCls,
className = _this$props5.className,
style = _this$props5.style,
disabled = _this$props5.disabled,
hideOnSinglePage = _this$props5.hideOnSinglePage,
total = _this$props5.total,
locale = _this$props5.locale,
showQuickJumper = _this$props5.showQuickJumper,
showLessItems = _this$props5.showLessItems,
showTitle = _this$props5.showTitle,
showTotal = _this$props5.showTotal,
simple = _this$props5.simple,
itemRender = _this$props5.itemRender,
showPrevNextJumpers = _this$props5.showPrevNextJumpers,
jumpPrevIcon = _this$props5.jumpPrevIcon,
jumpNextIcon = _this$props5.jumpNextIcon,
selectComponentClass = _this$props5.selectComponentClass,
selectPrefixCls = _this$props5.selectPrefixCls,
pageSizeOptions = _this$props5.pageSizeOptions;
var _this$state = this.state,
current = _this$state.current,
pageSize = _this$state.pageSize,
currentInputValue = _this$state.currentInputValue; // When hideOnSinglePage is true and there is only 1 page, hide the pager
if (hideOnSinglePage === true && total <= pageSize) {
return null;
}
var allPages = calculatePage(undefined, this.state, this.props);
var pagerList = [];
var jumpPrev = null;
var jumpNext = null;
var firstPager = null;
var lastPager = null;
var gotoButton = null;
var goButton = showQuickJumper && showQuickJumper.goButton;
var pageBufferSize = showLessItems ? 1 : 2;
var prevPage = current - 1 > 0 ? current - 1 : 0;
var nextPage = current + 1 < allPages ? current + 1 : allPages;
var dataOrAriaAttributeProps = Object.keys(this.props).reduce(function (prev, key) {
if (key.substr(0, 5) === 'data-' || key.substr(0, 5) === 'aria-' || key === 'role') {
// eslint-disable-next-line no-param-reassign
prev[key] = _this2.props[key];
}
return prev;
}, {});
if (simple) {
if (goButton) {
if (typeof goButton === 'boolean') {
gotoButton = /*#__PURE__*/external_window_React_default.a.createElement("button", {
type: "button",
onClick: this.handleGoTO,
onKeyUp: this.handleGoTO
}, locale.jump_to_confirm);
} else {
gotoButton = /*#__PURE__*/external_window_React_default.a.createElement("span", {
onClick: this.handleGoTO,
onKeyUp: this.handleGoTO
}, goButton);
}
gotoButton = /*#__PURE__*/external_window_React_default.a.createElement("li", {
title: showTitle ? "".concat(locale.jump_to).concat(current, "/").concat(allPages) : null,
className: "".concat(prefixCls, "-simple-pager")
}, gotoButton);
}
return /*#__PURE__*/external_window_React_default.a.createElement("ul", Object(esm_extends["a" /* default */])({
className: classnames_default()(prefixCls, "".concat(prefixCls, "-simple"), Object(defineProperty["a" /* default */])({}, "".concat(prefixCls, "-disabled"), disabled), className),
style: style,
ref: this.savePaginationNode
}, dataOrAriaAttributeProps), /*#__PURE__*/external_window_React_default.a.createElement("li", {
title: showTitle ? locale.prev_page : null,
onClick: this.prev,
tabIndex: this.hasPrev() ? 0 : null,
onKeyPress: this.runIfEnterPrev,
className: classnames_default()("".concat(prefixCls, "-prev"), Object(defineProperty["a" /* default */])({}, "".concat(prefixCls, "-disabled"), !this.hasPrev())),
"aria-disabled": !this.hasPrev()
}, this.renderPrev(prevPage)), /*#__PURE__*/external_window_React_default.a.createElement("li", {
title: showTitle ? "".concat(current, "/").concat(allPages) : null,
className: "".concat(prefixCls, "-simple-pager")
}, /*#__PURE__*/external_window_React_default.a.createElement("input", {
type: "text",
value: currentInputValue,
disabled: disabled,
onKeyDown: this.handleKeyDown,
onKeyUp: this.handleKeyUp,
onChange: this.handleKeyUp,
size: "3"
}), /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: "".concat(prefixCls, "-slash")
}, "/"), allPages), /*#__PURE__*/external_window_React_default.a.createElement("li", {
title: showTitle ? locale.next_page : null,
onClick: this.next,
tabIndex: this.hasPrev() ? 0 : null,
onKeyPress: this.runIfEnterNext,
className: classnames_default()("".concat(prefixCls, "-next"), Object(defineProperty["a" /* default */])({}, "".concat(prefixCls, "-disabled"), !this.hasNext())),
"aria-disabled": !this.hasNext()
}, this.renderNext(nextPage)), gotoButton);
}
if (allPages <= 3 + pageBufferSize * 2) {
var pagerProps = {
locale: locale,
rootPrefixCls: prefixCls,
onClick: this.handleChange,
onKeyPress: this.runIfEnter,
showTitle: showTitle,
itemRender: itemRender
};
if (!allPages) {
pagerList.push( /*#__PURE__*/external_window_React_default.a.createElement(es_Pager, Object(esm_extends["a" /* default */])({}, pagerProps, {
key: "noPager",
page: allPages,
className: "".concat(prefixCls, "-disabled")
})));
}
for (var i = 1; i <= allPages; i += 1) {
var active = current === i;
pagerList.push( /*#__PURE__*/external_window_React_default.a.createElement(es_Pager, Object(esm_extends["a" /* default */])({}, pagerProps, {
key: i,
page: i,
active: active
})));
}
} else {
var prevItemTitle = showLessItems ? locale.prev_3 : locale.prev_5;
var nextItemTitle = showLessItems ? locale.next_3 : locale.next_5;
if (showPrevNextJumpers) {
jumpPrev = /*#__PURE__*/external_window_React_default.a.createElement("li", {
title: showTitle ? prevItemTitle : null,
key: "prev",
onClick: this.jumpPrev,
tabIndex: "0",
onKeyPress: this.runIfEnterJumpPrev,
className: classnames_default()("".concat(prefixCls, "-jump-prev"), Object(defineProperty["a" /* default */])({}, "".concat(prefixCls, "-jump-prev-custom-icon"), !!jumpPrevIcon))
}, itemRender(this.getJumpPrevPage(), 'jump-prev', this.getItemIcon(jumpPrevIcon, 'prev page')));
jumpNext = /*#__PURE__*/external_window_React_default.a.createElement("li", {
title: showTitle ? nextItemTitle : null,
key: "next",
tabIndex: "0",
onClick: this.jumpNext,
onKeyPress: this.runIfEnterJumpNext,
className: classnames_default()("".concat(prefixCls, "-jump-next"), Object(defineProperty["a" /* default */])({}, "".concat(prefixCls, "-jump-next-custom-icon"), !!jumpNextIcon))
}, itemRender(this.getJumpNextPage(), 'jump-next', this.getItemIcon(jumpNextIcon, 'next page')));
}
lastPager = /*#__PURE__*/external_window_React_default.a.createElement(es_Pager, {
locale: locale,
last: true,
rootPrefixCls: prefixCls,
onClick: this.handleChange,
onKeyPress: this.runIfEnter,
key: allPages,
page: allPages,
active: false,
showTitle: showTitle,
itemRender: itemRender
});
firstPager = /*#__PURE__*/external_window_React_default.a.createElement(es_Pager, {
locale: locale,
rootPrefixCls: prefixCls,
onClick: this.handleChange,
onKeyPress: this.runIfEnter,
key: 1,
page: 1,
active: false,
showTitle: showTitle,
itemRender: itemRender
});
var left = Math.max(1, current - pageBufferSize);
var right = Math.min(current + pageBufferSize, allPages);
if (current - 1 <= pageBufferSize) {
right = 1 + pageBufferSize * 2;
}
if (allPages - current <= pageBufferSize) {
left = allPages - pageBufferSize * 2;
}
for (var _i = left; _i <= right; _i += 1) {
var _active = current === _i;
pagerList.push( /*#__PURE__*/external_window_React_default.a.createElement(es_Pager, {
locale: locale,
rootPrefixCls: prefixCls,
onClick: this.handleChange,
onKeyPress: this.runIfEnter,
key: _i,
page: _i,
active: _active,
showTitle: showTitle,
itemRender: itemRender
}));
}
if (current - 1 >= pageBufferSize * 2 && current !== 1 + 2) {
pagerList[0] = Object(external_window_React_["cloneElement"])(pagerList[0], {
className: "".concat(prefixCls, "-item-after-jump-prev")
});
pagerList.unshift(jumpPrev);
}
if (allPages - current >= pageBufferSize * 2 && current !== allPages - 2) {
pagerList[pagerList.length - 1] = Object(external_window_React_["cloneElement"])(pagerList[pagerList.length - 1], {
className: "".concat(prefixCls, "-item-before-jump-next")
});
pagerList.push(jumpNext);
}
if (left !== 1) {
pagerList.unshift(firstPager);
}
if (right !== allPages) {
pagerList.push(lastPager);
}
}
var totalText = null;
if (showTotal) {
totalText = /*#__PURE__*/external_window_React_default.a.createElement("li", {
className: "".concat(prefixCls, "-total-text")
}, showTotal(total, [total === 0 ? 0 : (current - 1) * pageSize + 1, current * pageSize > total ? total : current * pageSize]));
}
var prevDisabled = !this.hasPrev() || !allPages;
var nextDisabled = !this.hasNext() || !allPages;
return /*#__PURE__*/external_window_React_default.a.createElement("ul", Object(esm_extends["a" /* default */])({
className: classnames_default()(prefixCls, className, Object(defineProperty["a" /* default */])({}, "".concat(prefixCls, "-disabled"), disabled)),
style: style,
unselectable: "unselectable",
ref: this.savePaginationNode
}, dataOrAriaAttributeProps), totalText, /*#__PURE__*/external_window_React_default.a.createElement("li", {
title: showTitle ? locale.prev_page : null,
onClick: this.prev,
tabIndex: prevDisabled ? null : 0,
onKeyPress: this.runIfEnterPrev,
className: classnames_default()("".concat(prefixCls, "-prev"), Object(defineProperty["a" /* default */])({}, "".concat(prefixCls, "-disabled"), prevDisabled)),
"aria-disabled": prevDisabled
}, this.renderPrev(prevPage)), pagerList, /*#__PURE__*/external_window_React_default.a.createElement("li", {
title: showTitle ? locale.next_page : null,
onClick: this.next,
tabIndex: nextDisabled ? null : 0,
onKeyPress: this.runIfEnterNext,
className: classnames_default()("".concat(prefixCls, "-next"), Object(defineProperty["a" /* default */])({}, "".concat(prefixCls, "-disabled"), nextDisabled)),
"aria-disabled": nextDisabled
}, this.renderNext(nextPage)), /*#__PURE__*/external_window_React_default.a.createElement(es_Options, {
disabled: disabled,
locale: locale,
rootPrefixCls: prefixCls,
selectComponentClass: selectComponentClass,
selectPrefixCls: selectPrefixCls,
changeSize: this.getShowSizeChanger() ? this.changePageSize : null,
current: current,
pageSize: pageSize,
pageSizeOptions: pageSizeOptions,
quickGo: this.shouldDisplayQuickJumper() ? this.handleChange : null,
goButton: goButton
}));
}
}], [{
key: "getDerivedStateFromProps",
value: function getDerivedStateFromProps(props, prevState) {
var newState = {};
if ('current' in props) {
newState.current = props.current;
if (props.current !== prevState.current) {
newState.currentInputValue = newState.current;
}
}
if ('pageSize' in props && props.pageSize !== prevState.pageSize) {
var current = prevState.current;
var newCurrent = calculatePage(props.pageSize, prevState, props);
current = current > newCurrent ? newCurrent : current;
if (!('current' in props)) {
newState.current = current;
newState.currentInputValue = current;
}
newState.pageSize = props.pageSize;
}
return newState;
}
}]);
return Pagination;
}(external_window_React_default.a.Component);
Pagination_Pagination.defaultProps = {
defaultCurrent: 1,
total: 0,
defaultPageSize: 10,
onChange: noop,
className: '',
selectPrefixCls: 'rc-select',
prefixCls: 'rc-pagination',
selectComponentClass: null,
hideOnSinglePage: false,
showPrevNextJumpers: true,
showQuickJumper: false,
showLessItems: false,
showTitle: true,
onShowSizeChange: noop,
locale: zh_CN["a" /* default */],
style: {},
itemRender: defaultItemRender,
totalBoundaryShowSizeChanger: 50
};
/* harmony default export */ var es_Pagination = (Pagination_Pagination);
// CONCATENATED MODULE: ./node_modules/rc-pagination/es/index.js
/***/ }),
/***/ "815F":
/*!***************************************************!*\
!*** ./node_modules/rc-tree/es/utils/treeUtil.js ***!
\***************************************************/
/*! exports provided: getKey, warningWithoutKey, convertTreeToData, flattenTreeData, traverseDataNodes, convertDataToEntities, getTreeNodeProps, convertNodePropsToEventData */
/*! exports used: convertDataToEntities, convertNodePropsToEventData, convertTreeToData, flattenTreeData, getKey, getTreeNodeProps */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return getKey; });
/* unused harmony export warningWithoutKey */
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return convertTreeToData; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return flattenTreeData; });
/* unused harmony export traverseDataNodes */
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return convertDataToEntities; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return getTreeNodeProps; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return convertNodePropsToEventData; });
/* harmony import */ var _babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/toConsumableArray */ "KQm4");
/* harmony import */ var _babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/objectSpread2 */ "VTBJ");
/* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/esm/objectWithoutProperties */ "Ff2n");
/* harmony import */ var rc_util_es_Children_toArray__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! rc-util/es/Children/toArray */ "Zm9Q");
/* harmony import */ var rc_util_es_warning__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! rc-util/es/warning */ "Kwbf");
/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../util */ "OZM5");
function getKey(key, pos) {
if (key !== null && key !== undefined) {
return key;
}
return pos;
}
/**
* Warning if TreeNode do not provides key
*/
function warningWithoutKey() {
var treeData = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
var keys = new Map();
function dig(list) {
var path = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
(list || []).forEach(function (treeNode) {
var key = treeNode.key,
children = treeNode.children;
Object(rc_util_es_warning__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(key !== null && key !== undefined, "Tree node must have a certain key: [".concat(path).concat(key, "]"));
var recordKey = String(key);
Object(rc_util_es_warning__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(!keys.has(recordKey) || key === null || key === undefined, "Same 'key' exist in the Tree: ".concat(recordKey));
keys.set(recordKey, true);
dig(children, "".concat(path).concat(recordKey, " > "));
});
}
dig(treeData);
}
/**
* Convert `children` of Tree into `treeData` structure.
*/
function convertTreeToData(rootNodes) {
function dig(node) {
var treeNodes = Object(rc_util_es_Children_toArray__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(node);
return treeNodes.map(function (treeNode) {
// Filter invalidate node
if (!Object(_util__WEBPACK_IMPORTED_MODULE_5__[/* isTreeNode */ "i"])(treeNode)) {
Object(rc_util_es_warning__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(!treeNode, 'Tree/TreeNode can only accept TreeNode as children.');
return null;
}
var key = treeNode.key;
var _treeNode$props = treeNode.props,
children = _treeNode$props.children,
rest = Object(_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])(_treeNode$props, ["children"]);
var dataNode = Object(_babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])({
key: key
}, rest);
var parsedChildren = dig(children);
if (parsedChildren.length) {
dataNode.children = parsedChildren;
}
return dataNode;
}).filter(function (dataNode) {
return dataNode;
});
}
return dig(rootNodes);
}
/**
* Flat nest tree data into flatten list. This is used for virtual list render.
* @param treeNodeList Origin data node list
* @param expandedKeys
* need expanded keys, provides `true` means all expanded (used in `rc-tree-select`).
*/
function flattenTreeData() {
var treeNodeList = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
var expandedKeys = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
var expandedKeySet = new Set(expandedKeys === true ? [] : expandedKeys);
var flattenList = [];
function dig(list) {
var parent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
return list.map(function (treeNode, index) {
var pos = Object(_util__WEBPACK_IMPORTED_MODULE_5__[/* getPosition */ "h"])(parent ? parent.pos : '0', index);
var mergedKey = getKey(treeNode.key, pos); // Add FlattenDataNode into list
var flattenNode = Object(_babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(Object(_babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])({}, treeNode), {}, {
parent: parent,
pos: pos,
children: null,
data: treeNode,
isStart: [].concat(Object(_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(parent ? parent.isStart : []), [index === 0]),
isEnd: [].concat(Object(_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(parent ? parent.isEnd : []), [index === list.length - 1])
});
flattenList.push(flattenNode); // Loop treeNode children
if (expandedKeys === true || expandedKeySet.has(mergedKey)) {
flattenNode.children = dig(treeNode.children || [], flattenNode);
} else {
flattenNode.children = [];
}
return flattenNode;
});
}
dig(treeNodeList);
return flattenList;
}
/**
* Traverse all the data by `treeData`.
* Please not use it out of the `rc-tree` since we may refactor this code.
*/
function traverseDataNodes(dataNodes, callback, externalGetKey) {
var syntheticGetKey;
if (externalGetKey) {
if (typeof externalGetKey === 'string') {
syntheticGetKey = function syntheticGetKey(node) {
return node[externalGetKey];
};
} else if (typeof externalGetKey === 'function') {
syntheticGetKey = function syntheticGetKey(node) {
return externalGetKey(node);
};
}
} else {
syntheticGetKey = function syntheticGetKey(node, pos) {
return getKey(node.key, pos);
};
}
function processNode(node, index, parent) {
var children = node ? node.children : dataNodes;
var pos = node ? Object(_util__WEBPACK_IMPORTED_MODULE_5__[/* getPosition */ "h"])(parent.pos, index) : '0'; // Process node if is not root
if (node) {
var key = syntheticGetKey(node, pos);
var data = {
node: node,
index: index,
pos: pos,
key: key,
parentPos: parent.node ? parent.pos : null,
level: parent.level + 1
};
callback(data);
} // Process children node
if (children) {
children.forEach(function (subNode, subIndex) {
processNode(subNode, subIndex, {
node: node,
pos: pos,
level: parent ? parent.level + 1 : -1
});
});
}
}
processNode(null);
}
/**
* Convert `treeData` into entity records.
*/
function convertDataToEntities(dataNodes) {
var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
initWrapper = _ref.initWrapper,
processEntity = _ref.processEntity,
onProcessFinished = _ref.onProcessFinished;
var externalGetKey = arguments.length > 2 ? arguments[2] : undefined;
var posEntities = {};
var keyEntities = {};
var wrapper = {
posEntities: posEntities,
keyEntities: keyEntities
};
if (initWrapper) {
wrapper = initWrapper(wrapper) || wrapper;
}
traverseDataNodes(dataNodes, function (item) {
var node = item.node,
index = item.index,
pos = item.pos,
key = item.key,
parentPos = item.parentPos,
level = item.level;
var entity = {
node: node,
index: index,
key: key,
pos: pos,
level: level
};
var mergedKey = getKey(key, pos);
posEntities[pos] = entity;
keyEntities[mergedKey] = entity; // Fill children
entity.parent = posEntities[parentPos];
if (entity.parent) {
entity.parent.children = entity.parent.children || [];
entity.parent.children.push(entity);
}
if (processEntity) {
processEntity(entity, wrapper);
}
}, externalGetKey);
if (onProcessFinished) {
onProcessFinished(wrapper);
}
return wrapper;
}
/**
* Get TreeNode props with Tree props.
*/
function getTreeNodeProps(key, _ref2) {
var expandedKeys = _ref2.expandedKeys,
selectedKeys = _ref2.selectedKeys,
loadedKeys = _ref2.loadedKeys,
loadingKeys = _ref2.loadingKeys,
checkedKeys = _ref2.checkedKeys,
halfCheckedKeys = _ref2.halfCheckedKeys,
dragOverNodeKey = _ref2.dragOverNodeKey,
dropPosition = _ref2.dropPosition,
keyEntities = _ref2.keyEntities;
var entity = keyEntities[key];
var treeNodeProps = {
eventKey: key,
expanded: expandedKeys.indexOf(key) !== -1,
selected: selectedKeys.indexOf(key) !== -1,
loaded: loadedKeys.indexOf(key) !== -1,
loading: loadingKeys.indexOf(key) !== -1,
checked: checkedKeys.indexOf(key) !== -1,
halfChecked: halfCheckedKeys.indexOf(key) !== -1,
pos: String(entity ? entity.pos : ''),
// [Legacy] Drag props
dragOver: dragOverNodeKey === key && dropPosition === 0,
dragOverGapTop: dragOverNodeKey === key && dropPosition === -1,
dragOverGapBottom: dragOverNodeKey === key && dropPosition === 1
};
return treeNodeProps;
}
function convertNodePropsToEventData(props) {
var data = props.data,
expanded = props.expanded,
selected = props.selected,
checked = props.checked,
loaded = props.loaded,
loading = props.loading,
halfChecked = props.halfChecked,
dragOver = props.dragOver,
dragOverGapTop = props.dragOverGapTop,
dragOverGapBottom = props.dragOverGapBottom,
pos = props.pos,
active = props.active;
var eventData = Object(_babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(Object(_babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])({}, data), {}, {
expanded: expanded,
selected: selected,
checked: checked,
loaded: loaded,
loading: loading,
halfChecked: halfChecked,
dragOver: dragOver,
dragOverGapTop: dragOverGapTop,
dragOverGapBottom: dragOverGapBottom,
pos: pos,
active: active
});
if (!('props' in eventData)) {
Object.defineProperty(eventData, 'props', {
get: function get() {
Object(rc_util_es_warning__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(false, 'Second param return from event is node data instead of TreeNode instance. Please read value directly instead of reading from `props`.');
return props;
}
});
}
return eventData;
}
/***/ }),
/***/ "9Bee":
/*!*********************************************************!*\
!*** ./src/components/RenderHtml/index.tsx + 1 modules ***!
\*********************************************************/
/*! exports provided: default */
/*! exports used: default */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/objectSpread2.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/slicedToArray.js */
/*! ModuleConcatenation bailout: Cannot concat with ./src/components/PreviewAll/index.tsx */
/*! ModuleConcatenation bailout: Cannot concat with ./src/utils/env.ts */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/hls.js/dist/hls.js (<- Module is not an ECMAScript module) */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/katex/dist/katex.js (<- Module is not an ECMAScript module) */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/marked/lib/marked.js (<- Module is not an ECMAScript module) */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/marked/src/helpers.js (<- Module is not an ECMAScript module) */
/*! ModuleConcatenation bailout: Cannot concat with external "window.React" (<- Module is not an ECMAScript module) */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
// EXTERNAL MODULE: ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/objectSpread2.js
var objectSpread2 = __webpack_require__("k1fw");
// EXTERNAL MODULE: ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
var slicedToArray = __webpack_require__("tJVT");
// EXTERNAL MODULE: external "window.React"
var external_window_React_ = __webpack_require__("cDcd");
var external_window_React_default = /*#__PURE__*/__webpack_require__.n(external_window_React_);
// EXTERNAL MODULE: ./node_modules/katex/dist/katex.min.css
var katex_min = __webpack_require__("vg9a");
// EXTERNAL MODULE: ./node_modules/marked/lib/marked.js
var marked = __webpack_require__("DlQD");
var marked_default = /*#__PURE__*/__webpack_require__.n(marked);
// EXTERNAL MODULE: ./node_modules/marked/src/helpers.js
var helpers = __webpack_require__("rUJ1");
// CONCATENATED MODULE: ./src/utils/marked.ts
function indentCodeCompensation(raw, text) {
var matchIndentToCode = raw.match(/^(\s+)(?:```)/);
if (matchIndentToCode === null) {
return text;
}
var indentToCode = matchIndentToCode[1];
return text.split('\n').map(function (node) {
var matchIndentInNode = node.match(/^\s+/);
if (matchIndentInNode === null) {
return node;
}
var _matchIndentInNode = Object(slicedToArray["a" /* default */])(matchIndentInNode, 1),
indentInNode = _matchIndentInNode[0];
if (indentInNode.length >= indentToCode.length) {
return node.slice(indentToCode.length);
}
return node;
}).join('\n');
}
//兼容之前的 ##标题式写法
var toc = [];
var ctx = ["
"];
var renderer = new marked_default.a.Renderer();
var headingRegex = /^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/;
function cleanToc() {
toc.length = 0;
ctx = [""];
}
var lines = {
overflow: "hidden",
WebkitBoxOrient: "vertical",
display: "-webkit-box",
WebkitLineClamp: 2
};
function buildToc(coll, k, level, ctx) {
if (k >= coll.length || coll[k].level <= level) {
return k;
}
var node = coll[k];
ctx.push("" + node.text + " ");
k++;
var childCtx = [];
k = buildToc(coll, k, node.level, childCtx);
if (childCtx.length > 0) {
ctx.push("");
childCtx.forEach(function (idm) {
ctx.push(idm);
});
ctx.push(" ");
}
ctx.push(" ");
k = buildToc(coll, k, level, ctx);
return k;
}
function getTocContent() {
buildToc(toc, 0, 0, ctx);
ctx.push(" ");
return ctx.join("");
}
var tokenizer = {
heading: function heading(src) {
var cap = headingRegex.exec(src);
if (cap) {
return {
type: 'heading',
raw: cap[0],
depth: cap[1].length,
text: cap[2]
};
}
},
fences: function fences(src) {
var cap = this.rules.block.fences.exec(src);
if (cap) {
var raw = cap[0];
var text = indentCodeCompensation(raw, cap[3] || '');
var lang = cap[2] ? cap[2].trim() : cap[2];
if (['latex', 'katex', 'math'].indexOf(lang) >= 0) {
var id = next_id();
var expression = text;
text = id;
marked_math_expressions[id] = {
type: 'block',
expression: expression
};
}
return {
type: 'code',
raw: raw,
lang: lang,
text: text
};
}
}
};
var latexRegex = /(?:\${2})([^\n`]+?)(?:\${2})/gi;
var katex_count = 0;
var next_id = function next_id() {
return "__special_katext_id_".concat(katex_count++, "__");
};
var marked_math_expressions = {};
function getMathExpressions() {
return marked_math_expressions;
}
function resetMathExpressions() {
katex_count = 0;
marked_math_expressions = {};
}
function replace_math_with_ids(text) {
text = text.replace(latexRegex, function (_match, expression) {
var id = next_id();
marked_math_expressions[id] = {
type: 'inline',
expression: expression
};
return id;
});
return text;
}
var original_listitem = renderer.listitem;
renderer.listitem = function (text) {
return original_listitem(replace_math_with_ids(text));
};
var original_paragraph = renderer.paragraph;
renderer.paragraph = function (text) {
return original_paragraph(replace_math_with_ids(text));
};
var original_tablecell = renderer.tablecell;
renderer.tablecell = function (content, flags) {
return original_tablecell(replace_math_with_ids(content), flags);
};
renderer.code = function (code, infostring, escaped) {
var lang = (infostring || '').match(/\S*/)[0];
if (!lang) {
return ' ' + (escaped ? code : Object(helpers["escape"])(code, true)) + ' ';
}
if (['latex', 'katex', 'math'].indexOf(lang) >= 0) {
return "".concat(code, "
");
} else {
return "").concat(escaped ? code : Object(helpers["escape"])(code, true), " \n");
}
};
renderer.heading = function (text, level, raw) {
var anchor = this.options.headerPrefix + raw.toLowerCase().replace(/[^\w\\u4e00-\\u9fa5]]+/g, '-');
toc.push({
anchor: anchor,
level: level,
text: text
});
return '' + text + ' ';
};
marked_default.a.setOptions({
silent: true,
gfm: true,
pedantic: false
});
marked_default.a.use({
tokenizer: tokenizer,
renderer: renderer
});
/* harmony default export */ var utils_marked = (marked_default.a);
// EXTERNAL MODULE: ./node_modules/code-prettify/src/prettify.js
var prettify = __webpack_require__("SJMd");
// EXTERNAL MODULE: ./node_modules/hls.js/dist/hls.js
var dist_hls = __webpack_require__("ulZh");
var hls_default = /*#__PURE__*/__webpack_require__.n(dist_hls);
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
var env = __webpack_require__("m3rI");
// EXTERNAL MODULE: ./node_modules/katex/dist/katex.js
var katex = __webpack_require__("Oy/b");
// EXTERNAL MODULE: ./src/components/PreviewAll/index.tsx
var PreviewAll = __webpack_require__("p5ED");
// CONCATENATED MODULE: ./src/components/RenderHtml/index.tsx
var preRegex = /]*>/g;
function _unescape(str) {
var div = document.createElement('div');
div.innerHTML = str;
return div.childNodes.length === 0 ? '' : div.childNodes[0].nodeValue;
}
/* harmony default export */ var RenderHtml = __webpack_exports__["a"] = (function (_ref) {
var _ref$value = _ref.value,
value = _ref$value === void 0 ? '' : _ref$value,
className = _ref.className,
showTextOnly = _ref.showTextOnly,
showLines = _ref.showLines,
_ref$style = _ref.style,
style = _ref$style === void 0 ? {} : _ref$style,
_ref$stylesPrev = _ref.stylesPrev,
stylesPrev = _ref$stylesPrev === void 0 ? {} : _ref$stylesPrev;
var str = String(value);
var _useState = Object(external_window_React_["useState"])(""),
_useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
data = _useState2[0],
setData = _useState2[1];
var html = Object(external_window_React_["useMemo"])(function () {
try {
var reg = /\(\s+\/api\/attachments\/|\(\/api\/attachments\/|\(\/attachments\/download\//g;
var reg2 = /\"\/api\/attachments\/|\"\/attachments\/download\//g;
var reg3 = /\(\s+\/files\/uploads\/|\"\/files\/uploads\//g;
str = str.replace(reg, "(" + env["a" /* default */].API_SERVER + "/api/attachments/").replace(reg2, '"' + env["a" /* default */].API_SERVER + "/api/attachments/").replace(reg3, '"' + env["a" /* default */].API_SERVER + "/files/uploads/").replaceAll("http://video.educoder", "https://video.educoder").replaceAll("http://www.educoder.net/api", "https://data.educoder.net/api").replaceAll("https://www.educoder.net/api", "https://data.educoder.net/api").replace(/\r\n/g, "\n");
str = str.replace(new RegExp("(?[TOC]', getTocContent());
cleanToc();
}
rs = rs.replace(/(__special_katext_id_\d+__)/g, function (_match, capture) {
var _math_expressions$cap = math_expressions[capture],
type = _math_expressions$cap.type,
expression = _math_expressions$cap.expression;
return Object(katex["renderToString"])(_unescape(expression) || '', {
displayMode: type === 'block',
throwOnError: false,
output: 'html'
});
});
rs = rs.replace(/▁/g, '▁▁▁');
resetMathExpressions(); // return dompurify.sanitize(rs)
if (showTextOnly) {
var dom = document.createElement('div');
dom.innerHTML = rs;
return dom.innerText;
}
setTimeout(function () {
return onLoad();
}, 500);
return rs;
}, [str]);
var el = Object(external_window_React_["useRef"])();
lines['WebkitLineClamp'] = showLines;
if (showLines) {
style = Object(objectSpread2["a" /* default */])(Object(objectSpread2["a" /* default */])({}, style), lines);
}
function onAncherHandler(e) {
var target = e.target;
if (target.tagName.toUpperCase() === 'A') {
var ancher = target.getAttribute('href');
if (ancher.indexOf("office") > -1) {
e.preventDefault();
setData(ancher);
} else if (ancher.startsWith('#')) {
e.preventDefault();
var viewEl = document.getElementById(ancher.replace('#', ''));
if (viewEl) {
viewEl.scrollIntoView(true);
}
}
}
}
var onLoad = function onLoad() {
var _el$current;
var videoElement = (_el$current = el.current) === null || _el$current === void 0 ? void 0 : _el$current.querySelectorAll('video');
videoElement === null || videoElement === void 0 ? void 0 : videoElement.forEach(function (item) {
item.oncontextmenu = function () {
return false;
};
if (item.src.indexOf('.m3u8') > -1) {
if (item.canPlayType('application/vnd.apple.mpegurl')) {} else if (hls_default.a.isSupported()) {
var hls = new hls_default.a();
hls.loadSource(item.src);
hls.attachMedia(item);
}
}
});
};
Object(external_window_React_["useEffect"])(function () {
if (el.current && html) {
if (html.match(preRegex)) {
window.PR.prettyPrint();
}
}
if (el.current) {
el.current.addEventListener('click', onAncherHandler);
return function () {
el.current.removeEventListener('click', onAncherHandler);
resetMathExpressions();
cleanToc();
};
}
}, [html, el.current, onAncherHandler]);
return /*#__PURE__*/external_window_React_default.a.createElement(external_window_React_default.a.Fragment, null, /*#__PURE__*/external_window_React_default.a.createElement("div", {
ref: el,
style: Object(objectSpread2["a" /* default */])({}, style),
className: "".concat(className ? className : '', " markdown-body "),
dangerouslySetInnerHTML: {
__html: html
}
}), /*#__PURE__*/external_window_React_default.a.createElement(PreviewAll["a" /* default */], {
close: true,
data: data,
type: !!(data !== null && data !== void 0 && data.length) ? "office" : "",
style: Object(objectSpread2["a" /* default */])({}, stylesPrev),
onClose: function onClose() {
return setData("");
}
}));
});
/***/ }),
/***/ "A60/":
/*!**************************************************************************!*\
!*** ./src/pages/Problemset/components/BasketSideBar/index.less?modules ***!
\**************************************************************************/
/*! no static exports found */
/*! exports used: default */
/*! ModuleConcatenation bailout: Module is not an ECMAScript module */
/***/ (function(module, exports, __webpack_require__) {
// extracted by mini-css-extract-plugin
module.exports = {"wrap":"wrap___37dvp","right20":"right20___2yZBe","right180":"right180___14fSn","basket":"basket___32ZdA","count":"count___2ydNT","iconWrap":"iconWrap___2cEp5","icon":"icon___3fYs3","name":"name___7IPYm"};
/***/ }),
/***/ "BU3w":
/*!***************************************************!*\
!*** ./node_modules/rc-util/es/Dom/dynamicCSS.js ***!
\***************************************************/
/*! exports provided: injectCSS, updateCSS */
/*! exports used: updateCSS */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* unused harmony export injectCSS */
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return updateCSS; });
/* harmony import */ var _canUseDom__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./canUseDom */ "MNnm");
var MARK_KEY = "rc-util-key";
function getContainer(option) {
if (option.attachTo) {
return option.attachTo;
}
var head = document.querySelector('head');
return head || document.body;
}
function injectCSS(css) {
var _option$csp;
var option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
if (!Object(_canUseDom__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])()) {
return null;
}
var styleNode = document.createElement('style');
if ((_option$csp = option.csp) === null || _option$csp === void 0 ? void 0 : _option$csp.nonce) {
var _option$csp2;
styleNode.nonce = (_option$csp2 = option.csp) === null || _option$csp2 === void 0 ? void 0 : _option$csp2.nonce;
}
styleNode.innerHTML = css;
var container = getContainer(option);
var firstChild = container.firstChild;
if (option.prepend && container.prepend) {
// Use `prepend` first
container.prepend(styleNode);
} else if (option.prepend && firstChild) {
// Fallback to `insertBefore` like IE not support `prepend`
container.insertBefore(styleNode, firstChild);
} else {
container.appendChild(styleNode);
}
return styleNode;
}
var containerCache = new Map();
function updateCSS(css, key) {
var option = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
var container = getContainer(option); // Get real parent
if (!containerCache.has(container)) {
var placeholderStyle = injectCSS('', option);
var parentNode = placeholderStyle.parentNode;
containerCache.set(container, parentNode);
parentNode.removeChild(placeholderStyle);
}
var existNode = Array.from(containerCache.get(container).children).find(function (node) {
return node.tagName === 'STYLE' && node[MARK_KEY] === key;
});
if (existNode) {
var _option$csp3, _option$csp4;
if (((_option$csp3 = option.csp) === null || _option$csp3 === void 0 ? void 0 : _option$csp3.nonce) && existNode.nonce !== ((_option$csp4 = option.csp) === null || _option$csp4 === void 0 ? void 0 : _option$csp4.nonce)) {
var _option$csp5;
existNode.nonce = (_option$csp5 = option.csp) === null || _option$csp5 === void 0 ? void 0 : _option$csp5.nonce;
}
if (existNode.innerHTML !== css) {
existNode.innerHTML = css;
}
return existNode;
}
var newNode = injectCSS(css, option);
newNode[MARK_KEY] = key;
return newNode;
}
/***/ }),
/***/ "BdwD":
/*!*****************************************!*\
!*** ./src/components/NoData/index.tsx ***!
\*****************************************/
/*! exports provided: default */
/*! exports used: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony import */ var antd_es_button_style__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! antd/es/button/style */ "+L6B");
/* harmony import */ var antd_es_button__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! antd/es/button */ "2/Rp");
/* harmony import */ var _Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/extends */ "0Owb");
/* harmony import */ var _Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/objectSpread2 */ "k1fw");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react */ "cDcd");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _assets_images_icons_nodata_png__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/assets/images/icons/nodata.png */ "FOrL");
/* harmony import */ var _assets_images_icons_nodata_png__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_assets_images_icons_nodata_png__WEBPACK_IMPORTED_MODULE_5__);
var noData = function noData(_ref) {
var _ref$buttonProps = _ref.buttonProps,
buttonProps = _ref$buttonProps === void 0 ? {} : _ref$buttonProps,
_ref$styles = _ref.styles,
styles = _ref$styles === void 0 ? {} : _ref$styles,
customText = _ref.customText,
ButtonText = _ref.ButtonText,
ButtonClick = _ref.ButtonClick,
Buttonclass = _ref.Buttonclass,
ButtonTwo = _ref.ButtonTwo;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("section", {
className: "tc animated fadeIn",
style: Object(_Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(Object(_Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])({}, {
color: '#999',
margin: '200px auto'
}), styles)
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("img", {
src: _assets_images_icons_nodata_png__WEBPACK_IMPORTED_MODULE_5___default.a
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("p", {
className: "mt20 font14"
}, customText || '暂时还没有相关数据哦!'), ButtonText && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(antd_es_button__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"], Object(_Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])({
className: Buttonclass,
onClick: ButtonClick
}, buttonProps), ButtonText), ButtonTwo && ButtonTwo);
};
/* harmony default export */ __webpack_exports__["a"] = (noData);
/***/ }),
/***/ "DlQD":
/*!*******************************************!*\
!*** ./node_modules/marked/lib/marked.js ***!
\*******************************************/
/*! no static exports found */
/*! exports used: default */
/*! ModuleConcatenation bailout: Module is not an ECMAScript module */
/***/ (function(module, exports, __webpack_require__) {
/**
* marked - a markdown parser
* Copyright (c) 2011-2020, Christopher Jeffrey. (MIT Licensed)
* https://github.com/markedjs/marked
*/
/**
* DO NOT EDIT THIS FILE
* The code in this file is generated from files in ./src/
*/
(function (global, factory) {
true ? module.exports = factory() :
undefined;
}(this, (function () { 'use strict';
function _defineProperties(target, props) {
for (var i = 0; i < props.length; i++) {
var descriptor = props[i];
descriptor.enumerable = descriptor.enumerable || false;
descriptor.configurable = true;
if ("value" in descriptor) descriptor.writable = true;
Object.defineProperty(target, descriptor.key, descriptor);
}
}
function _createClass(Constructor, protoProps, staticProps) {
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
if (staticProps) _defineProperties(Constructor, staticProps);
return Constructor;
}
function _unsupportedIterableToArray(o, minLen) {
if (!o) return;
if (typeof o === "string") return _arrayLikeToArray(o, minLen);
var n = Object.prototype.toString.call(o).slice(8, -1);
if (n === "Object" && o.constructor) n = o.constructor.name;
if (n === "Map" || n === "Set") return Array.from(o);
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
}
function _arrayLikeToArray(arr, len) {
if (len == null || len > arr.length) len = arr.length;
for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
return arr2;
}
function _createForOfIteratorHelperLoose(o, allowArrayLike) {
var it;
if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) {
if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
if (it) o = it;
var i = 0;
return function () {
if (i >= o.length) return {
done: true
};
return {
done: false,
value: o[i++]
};
};
}
throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}
it = o[Symbol.iterator]();
return it.next.bind(it);
}
function createCommonjsModule(fn, module) {
return module = { exports: {} }, fn(module, module.exports), module.exports;
}
var defaults = createCommonjsModule(function (module) {
function getDefaults() {
return {
baseUrl: null,
breaks: false,
gfm: true,
headerIds: true,
headerPrefix: '',
highlight: null,
langPrefix: 'language-',
mangle: true,
pedantic: false,
renderer: null,
sanitize: false,
sanitizer: null,
silent: false,
smartLists: false,
smartypants: false,
tokenizer: null,
walkTokens: null,
xhtml: false
};
}
function changeDefaults(newDefaults) {
module.exports.defaults = newDefaults;
}
module.exports = {
defaults: getDefaults(),
getDefaults: getDefaults,
changeDefaults: changeDefaults
};
});
var defaults_1 = defaults.defaults;
var defaults_2 = defaults.getDefaults;
var defaults_3 = defaults.changeDefaults;
/**
* Helpers
*/
var escapeTest = /[&<>"']/;
var escapeReplace = /[&<>"']/g;
var escapeTestNoEncode = /[<>"']|&(?!#?\w+;)/;
var escapeReplaceNoEncode = /[<>"']|&(?!#?\w+;)/g;
var escapeReplacements = {
'&': '&',
'<': '<',
'>': '>',
'"': '"',
"'": '''
};
var getEscapeReplacement = function getEscapeReplacement(ch) {
return escapeReplacements[ch];
};
function escape(html, encode) {
if (encode) {
if (escapeTest.test(html)) {
return html.replace(escapeReplace, getEscapeReplacement);
}
} else {
if (escapeTestNoEncode.test(html)) {
return html.replace(escapeReplaceNoEncode, getEscapeReplacement);
}
}
return html;
}
var unescapeTest = /&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;
function unescape(html) {
// explicitly match decimal, hex, and named HTML entities
return html.replace(unescapeTest, function (_, n) {
n = n.toLowerCase();
if (n === 'colon') return ':';
if (n.charAt(0) === '#') {
return n.charAt(1) === 'x' ? String.fromCharCode(parseInt(n.substring(2), 16)) : String.fromCharCode(+n.substring(1));
}
return '';
});
}
var caret = /(^|[^\[])\^/g;
function edit(regex, opt) {
regex = regex.source || regex;
opt = opt || '';
var obj = {
replace: function replace(name, val) {
val = val.source || val;
val = val.replace(caret, '$1');
regex = regex.replace(name, val);
return obj;
},
getRegex: function getRegex() {
return new RegExp(regex, opt);
}
};
return obj;
}
var nonWordAndColonTest = /[^\w:]/g;
var originIndependentUrl = /^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;
function cleanUrl(sanitize, base, href) {
if (sanitize) {
var prot;
try {
prot = decodeURIComponent(unescape(href)).replace(nonWordAndColonTest, '').toLowerCase();
} catch (e) {
return null;
}
if (prot.indexOf('javascript:') === 0 || prot.indexOf('vbscript:') === 0 || prot.indexOf('data:') === 0) {
return null;
}
}
if (base && !originIndependentUrl.test(href)) {
href = resolveUrl(base, href);
}
try {
href = encodeURI(href).replace(/%25/g, '%');
} catch (e) {
return null;
}
return href;
}
var baseUrls = {};
var justDomain = /^[^:]+:\/*[^/]*$/;
var protocol = /^([^:]+:)[\s\S]*$/;
var domain = /^([^:]+:\/*[^/]*)[\s\S]*$/;
function resolveUrl(base, href) {
if (!baseUrls[' ' + base]) {
// we can ignore everything in base after the last slash of its path component,
// but we might need to add _that_
// https://tools.ietf.org/html/rfc3986#section-3
if (justDomain.test(base)) {
baseUrls[' ' + base] = base + '/';
} else {
baseUrls[' ' + base] = rtrim(base, '/', true);
}
}
base = baseUrls[' ' + base];
var relativeBase = base.indexOf(':') === -1;
if (href.substring(0, 2) === '//') {
if (relativeBase) {
return href;
}
return base.replace(protocol, '$1') + href;
} else if (href.charAt(0) === '/') {
if (relativeBase) {
return href;
}
return base.replace(domain, '$1') + href;
} else {
return base + href;
}
}
var noopTest = {
exec: function noopTest() {}
};
function merge(obj) {
var i = 1,
target,
key;
for (; i < arguments.length; i++) {
target = arguments[i];
for (key in target) {
if (Object.prototype.hasOwnProperty.call(target, key)) {
obj[key] = target[key];
}
}
}
return obj;
}
function splitCells(tableRow, count) {
// ensure that every cell-delimiting pipe has a space
// before it to distinguish it from an escaped pipe
var row = tableRow.replace(/\|/g, function (match, offset, str) {
var escaped = false,
curr = offset;
while (--curr >= 0 && str[curr] === '\\') {
escaped = !escaped;
}
if (escaped) {
// odd number of slashes means | is escaped
// so we leave it alone
return '|';
} else {
// add space before unescaped |
return ' |';
}
}),
cells = row.split(/ \|/);
var i = 0;
if (cells.length > count) {
cells.splice(count);
} else {
while (cells.length < count) {
cells.push('');
}
}
for (; i < cells.length; i++) {
// leading or trailing whitespace is ignored per the gfm spec
cells[i] = cells[i].trim().replace(/\\\|/g, '|');
}
return cells;
} // Remove trailing 'c's. Equivalent to str.replace(/c*$/, '').
// /c*$/ is vulnerable to REDOS.
// invert: Remove suffix of non-c chars instead. Default falsey.
function rtrim(str, c, invert) {
var l = str.length;
if (l === 0) {
return '';
} // Length of suffix matching the invert condition.
var suffLen = 0; // Step left until we fail to match the invert condition.
while (suffLen < l) {
var currChar = str.charAt(l - suffLen - 1);
if (currChar === c && !invert) {
suffLen++;
} else if (currChar !== c && invert) {
suffLen++;
} else {
break;
}
}
return str.substr(0, l - suffLen);
}
function findClosingBracket(str, b) {
if (str.indexOf(b[1]) === -1) {
return -1;
}
var l = str.length;
var level = 0,
i = 0;
for (; i < l; i++) {
if (str[i] === '\\') {
i++;
} else if (str[i] === b[0]) {
level++;
} else if (str[i] === b[1]) {
level--;
if (level < 0) {
return i;
}
}
}
return -1;
}
function checkSanitizeDeprecation(opt) {
if (opt && opt.sanitize && !opt.silent) {
console.warn('marked(): sanitize and sanitizer parameters are deprecated since version 0.7.0, should not be used and will be removed in the future. Read more here: https://marked.js.org/#/USING_ADVANCED.md#options');
}
}
var helpers = {
escape: escape,
unescape: unescape,
edit: edit,
cleanUrl: cleanUrl,
resolveUrl: resolveUrl,
noopTest: noopTest,
merge: merge,
splitCells: splitCells,
rtrim: rtrim,
findClosingBracket: findClosingBracket,
checkSanitizeDeprecation: checkSanitizeDeprecation
};
var defaults$1 = defaults.defaults;
var rtrim$1 = helpers.rtrim,
splitCells$1 = helpers.splitCells,
_escape = helpers.escape,
findClosingBracket$1 = helpers.findClosingBracket;
function outputLink(cap, link, raw) {
var href = link.href;
var title = link.title ? _escape(link.title) : null;
var text = cap[1].replace(/\\([\[\]])/g, '$1');
if (cap[0].charAt(0) !== '!') {
return {
type: 'link',
raw: raw,
href: href,
title: title,
text: text
};
} else {
return {
type: 'image',
raw: raw,
href: href,
title: title,
text: _escape(text)
};
}
}
function indentCodeCompensation(raw, text) {
var matchIndentToCode = raw.match(/^(\s+)(?:```)/);
if (matchIndentToCode === null) {
return text;
}
var indentToCode = matchIndentToCode[1];
return text.split('\n').map(function (node) {
var matchIndentInNode = node.match(/^\s+/);
if (matchIndentInNode === null) {
return node;
}
var indentInNode = matchIndentInNode[0];
if (indentInNode.length >= indentToCode.length) {
return node.slice(indentToCode.length);
}
return node;
}).join('\n');
}
/**
* Tokenizer
*/
var Tokenizer_1 = /*#__PURE__*/function () {
function Tokenizer(options) {
this.options = options || defaults$1;
}
var _proto = Tokenizer.prototype;
_proto.space = function space(src) {
var cap = this.rules.block.newline.exec(src);
if (cap) {
if (cap[0].length > 1) {
return {
type: 'space',
raw: cap[0]
};
}
return {
raw: '\n'
};
}
};
_proto.code = function code(src, tokens) {
var cap = this.rules.block.code.exec(src);
if (cap) {
var lastToken = tokens[tokens.length - 1]; // An indented code block cannot interrupt a paragraph.
if (lastToken && lastToken.type === 'paragraph') {
return {
raw: cap[0],
text: cap[0].trimRight()
};
}
var text = cap[0].replace(/^ {4}/gm, '');
return {
type: 'code',
raw: cap[0],
codeBlockStyle: 'indented',
text: !this.options.pedantic ? rtrim$1(text, '\n') : text
};
}
};
_proto.fences = function fences(src) {
var cap = this.rules.block.fences.exec(src);
if (cap) {
var raw = cap[0];
var text = indentCodeCompensation(raw, cap[3] || '');
return {
type: 'code',
raw: raw,
lang: cap[2] ? cap[2].trim() : cap[2],
text: text
};
}
};
_proto.heading = function heading(src) {
var cap = this.rules.block.heading.exec(src);
if (cap) {
return {
type: 'heading',
raw: cap[0],
depth: cap[1].length,
text: cap[2]
};
}
};
_proto.nptable = function nptable(src) {
var cap = this.rules.block.nptable.exec(src);
if (cap) {
var item = {
type: 'table',
header: splitCells$1(cap[1].replace(/^ *| *\| *$/g, '')),
align: cap[2].replace(/^ *|\| *$/g, '').split(/ *\| */),
cells: cap[3] ? cap[3].replace(/\n$/, '').split('\n') : [],
raw: cap[0]
};
if (item.header.length === item.align.length) {
var l = item.align.length;
var i;
for (i = 0; i < l; i++) {
if (/^ *-+: *$/.test(item.align[i])) {
item.align[i] = 'right';
} else if (/^ *:-+: *$/.test(item.align[i])) {
item.align[i] = 'center';
} else if (/^ *:-+ *$/.test(item.align[i])) {
item.align[i] = 'left';
} else {
item.align[i] = null;
}
}
l = item.cells.length;
for (i = 0; i < l; i++) {
item.cells[i] = splitCells$1(item.cells[i], item.header.length);
}
return item;
}
}
};
_proto.hr = function hr(src) {
var cap = this.rules.block.hr.exec(src);
if (cap) {
return {
type: 'hr',
raw: cap[0]
};
}
};
_proto.blockquote = function blockquote(src) {
var cap = this.rules.block.blockquote.exec(src);
if (cap) {
var text = cap[0].replace(/^ *> ?/gm, '');
return {
type: 'blockquote',
raw: cap[0],
text: text
};
}
};
_proto.list = function list(src) {
var cap = this.rules.block.list.exec(src);
if (cap) {
var raw = cap[0];
var bull = cap[2];
var isordered = bull.length > 1;
var isparen = bull[bull.length - 1] === ')';
var list = {
type: 'list',
raw: raw,
ordered: isordered,
start: isordered ? +bull.slice(0, -1) : '',
loose: false,
items: []
}; // Get each top-level item.
var itemMatch = cap[0].match(this.rules.block.item);
var next = false,
item,
space,
b,
addBack,
loose,
istask,
ischecked;
var l = itemMatch.length;
for (var i = 0; i < l; i++) {
item = itemMatch[i];
raw = item; // Remove the list item's bullet
// so it is seen as the next token.
space = item.length;
item = item.replace(/^ *([*+-]|\d+[.)]) */, ''); // Outdent whatever the
// list item contains. Hacky.
if (~item.indexOf('\n ')) {
space -= item.length;
item = !this.options.pedantic ? item.replace(new RegExp('^ {1,' + space + '}', 'gm'), '') : item.replace(/^ {1,4}/gm, '');
} // Determine whether the next list item belongs here.
// Backpedal if it does not belong in this list.
if (i !== l - 1) {
b = this.rules.block.bullet.exec(itemMatch[i + 1])[0];
if (isordered ? b.length === 1 || !isparen && b[b.length - 1] === ')' : b.length > 1 || this.options.smartLists && b !== bull) {
addBack = itemMatch.slice(i + 1).join('\n');
list.raw = list.raw.substring(0, list.raw.length - addBack.length);
i = l - 1;
}
} // Determine whether item is loose or not.
// Use: /(^|\n)(?! )[^\n]+\n\n(?!\s*$)/
// for discount behavior.
loose = next || /\n\n(?!\s*$)/.test(item);
if (i !== l - 1) {
next = item.charAt(item.length - 1) === '\n';
if (!loose) loose = next;
}
if (loose) {
list.loose = true;
} // Check for task list items
istask = /^\[[ xX]\] /.test(item);
ischecked = undefined;
if (istask) {
ischecked = item[1] !== ' ';
item = item.replace(/^\[[ xX]\] +/, '');
}
list.items.push({
type: 'list_item',
raw: raw,
task: istask,
checked: ischecked,
loose: loose,
text: item
});
}
return list;
}
};
_proto.html = function html(src) {
var cap = this.rules.block.html.exec(src);
if (cap) {
return {
type: this.options.sanitize ? 'paragraph' : 'html',
raw: cap[0],
pre: !this.options.sanitizer && (cap[1] === 'pre' || cap[1] === 'script' || cap[1] === 'style'),
text: this.options.sanitize ? this.options.sanitizer ? this.options.sanitizer(cap[0]) : _escape(cap[0]) : cap[0]
};
}
};
_proto.def = function def(src) {
var cap = this.rules.block.def.exec(src);
if (cap) {
if (cap[3]) cap[3] = cap[3].substring(1, cap[3].length - 1);
var tag = cap[1].toLowerCase().replace(/\s+/g, ' ');
return {
tag: tag,
raw: cap[0],
href: cap[2],
title: cap[3]
};
}
};
_proto.table = function table(src) {
var cap = this.rules.block.table.exec(src);
if (cap) {
var item = {
type: 'table',
header: splitCells$1(cap[1].replace(/^ *| *\| *$/g, '')),
align: cap[2].replace(/^ *|\| *$/g, '').split(/ *\| */),
cells: cap[3] ? cap[3].replace(/\n$/, '').split('\n') : []
};
if (item.header.length === item.align.length) {
item.raw = cap[0];
var l = item.align.length;
var i;
for (i = 0; i < l; i++) {
if (/^ *-+: *$/.test(item.align[i])) {
item.align[i] = 'right';
} else if (/^ *:-+: *$/.test(item.align[i])) {
item.align[i] = 'center';
} else if (/^ *:-+ *$/.test(item.align[i])) {
item.align[i] = 'left';
} else {
item.align[i] = null;
}
}
l = item.cells.length;
for (i = 0; i < l; i++) {
item.cells[i] = splitCells$1(item.cells[i].replace(/^ *\| *| *\| *$/g, ''), item.header.length);
}
return item;
}
}
};
_proto.lheading = function lheading(src) {
var cap = this.rules.block.lheading.exec(src);
if (cap) {
return {
type: 'heading',
raw: cap[0],
depth: cap[2].charAt(0) === '=' ? 1 : 2,
text: cap[1]
};
}
};
_proto.paragraph = function paragraph(src) {
var cap = this.rules.block.paragraph.exec(src);
if (cap) {
return {
type: 'paragraph',
raw: cap[0],
text: cap[1].charAt(cap[1].length - 1) === '\n' ? cap[1].slice(0, -1) : cap[1]
};
}
};
_proto.text = function text(src, tokens) {
var cap = this.rules.block.text.exec(src);
if (cap) {
var lastToken = tokens[tokens.length - 1];
if (lastToken && lastToken.type === 'text') {
return {
raw: cap[0],
text: cap[0]
};
}
return {
type: 'text',
raw: cap[0],
text: cap[0]
};
}
};
_proto.escape = function escape(src) {
var cap = this.rules.inline.escape.exec(src);
if (cap) {
return {
type: 'escape',
raw: cap[0],
text: _escape(cap[1])
};
}
};
_proto.tag = function tag(src, inLink, inRawBlock) {
var cap = this.rules.inline.tag.exec(src);
if (cap) {
if (!inLink && /^/i.test(cap[0])) {
inLink = false;
}
if (!inRawBlock && /^<(pre|code|kbd|script)(\s|>)/i.test(cap[0])) {
inRawBlock = true;
} else if (inRawBlock && /^<\/(pre|code|kbd|script)(\s|>)/i.test(cap[0])) {
inRawBlock = false;
}
return {
type: this.options.sanitize ? 'text' : 'html',
raw: cap[0],
inLink: inLink,
inRawBlock: inRawBlock,
text: this.options.sanitize ? this.options.sanitizer ? this.options.sanitizer(cap[0]) : _escape(cap[0]) : cap[0]
};
}
};
_proto.link = function link(src) {
var cap = this.rules.inline.link.exec(src);
if (cap) {
var lastParenIndex = findClosingBracket$1(cap[2], '()');
if (lastParenIndex > -1) {
var start = cap[0].indexOf('!') === 0 ? 5 : 4;
var linkLen = start + cap[1].length + lastParenIndex;
cap[2] = cap[2].substring(0, lastParenIndex);
cap[0] = cap[0].substring(0, linkLen).trim();
cap[3] = '';
}
var href = cap[2];
var title = '';
if (this.options.pedantic) {
var link = /^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(href);
if (link) {
href = link[1];
title = link[3];
} else {
title = '';
}
} else {
title = cap[3] ? cap[3].slice(1, -1) : '';
}
href = href.trim().replace(/^<([\s\S]*)>$/, '$1');
var token = outputLink(cap, {
href: href ? href.replace(this.rules.inline._escapes, '$1') : href,
title: title ? title.replace(this.rules.inline._escapes, '$1') : title
}, cap[0]);
return token;
}
};
_proto.reflink = function reflink(src, links) {
var cap;
if ((cap = this.rules.inline.reflink.exec(src)) || (cap = this.rules.inline.nolink.exec(src))) {
var link = (cap[2] || cap[1]).replace(/\s+/g, ' ');
link = links[link.toLowerCase()];
if (!link || !link.href) {
var text = cap[0].charAt(0);
return {
type: 'text',
raw: text,
text: text
};
}
var token = outputLink(cap, link, cap[0]);
return token;
}
};
_proto.strong = function strong(src, maskedSrc, prevChar) {
if (prevChar === void 0) {
prevChar = '';
}
var match = this.rules.inline.strong.start.exec(src);
if (match && (!match[1] || match[1] && (prevChar === '' || this.rules.inline.punctuation.exec(prevChar)))) {
maskedSrc = maskedSrc.slice(-1 * src.length);
var endReg = match[0] === '**' ? this.rules.inline.strong.endAst : this.rules.inline.strong.endUnd;
endReg.lastIndex = 0;
var cap;
while ((match = endReg.exec(maskedSrc)) != null) {
cap = this.rules.inline.strong.middle.exec(maskedSrc.slice(0, match.index + 3));
if (cap) {
return {
type: 'strong',
raw: src.slice(0, cap[0].length),
text: src.slice(2, cap[0].length - 2)
};
}
}
}
};
_proto.em = function em(src, maskedSrc, prevChar) {
if (prevChar === void 0) {
prevChar = '';
}
var match = this.rules.inline.em.start.exec(src);
if (match && (!match[1] || match[1] && (prevChar === '' || this.rules.inline.punctuation.exec(prevChar)))) {
maskedSrc = maskedSrc.slice(-1 * src.length);
var endReg = match[0] === '*' ? this.rules.inline.em.endAst : this.rules.inline.em.endUnd;
endReg.lastIndex = 0;
var cap;
while ((match = endReg.exec(maskedSrc)) != null) {
cap = this.rules.inline.em.middle.exec(maskedSrc.slice(0, match.index + 2));
if (cap) {
return {
type: 'em',
raw: src.slice(0, cap[0].length),
text: src.slice(1, cap[0].length - 1)
};
}
}
}
};
_proto.codespan = function codespan(src) {
var cap = this.rules.inline.code.exec(src);
if (cap) {
var text = cap[2].replace(/\n/g, ' ');
var hasNonSpaceChars = /[^ ]/.test(text);
var hasSpaceCharsOnBothEnds = text.startsWith(' ') && text.endsWith(' ');
if (hasNonSpaceChars && hasSpaceCharsOnBothEnds) {
text = text.substring(1, text.length - 1);
}
text = _escape(text, true);
return {
type: 'codespan',
raw: cap[0],
text: text
};
}
};
_proto.br = function br(src) {
var cap = this.rules.inline.br.exec(src);
if (cap) {
return {
type: 'br',
raw: cap[0]
};
}
};
_proto.del = function del(src) {
var cap = this.rules.inline.del.exec(src);
if (cap) {
return {
type: 'del',
raw: cap[0],
text: cap[1]
};
}
};
_proto.autolink = function autolink(src, mangle) {
var cap = this.rules.inline.autolink.exec(src);
if (cap) {
var text, href;
if (cap[2] === '@') {
text = _escape(this.options.mangle ? mangle(cap[1]) : cap[1]);
href = 'mailto:' + text;
} else {
text = _escape(cap[1]);
href = text;
}
return {
type: 'link',
raw: cap[0],
text: text,
href: href,
tokens: [{
type: 'text',
raw: text,
text: text
}]
};
}
};
_proto.url = function url(src, mangle) {
var cap;
if (cap = this.rules.inline.url.exec(src)) {
var text, href;
if (cap[2] === '@') {
text = _escape(this.options.mangle ? mangle(cap[0]) : cap[0]);
href = 'mailto:' + text;
} else {
// do extended autolink path validation
var prevCapZero;
do {
prevCapZero = cap[0];
cap[0] = this.rules.inline._backpedal.exec(cap[0])[0];
} while (prevCapZero !== cap[0]);
text = _escape(cap[0]);
if (cap[1] === 'www.') {
href = 'http://' + text;
} else {
href = text;
}
}
return {
type: 'link',
raw: cap[0],
text: text,
href: href,
tokens: [{
type: 'text',
raw: text,
text: text
}]
};
}
};
_proto.inlineText = function inlineText(src, inRawBlock, smartypants) {
var cap = this.rules.inline.text.exec(src);
if (cap) {
var text;
if (inRawBlock) {
text = this.options.sanitize ? this.options.sanitizer ? this.options.sanitizer(cap[0]) : _escape(cap[0]) : cap[0];
} else {
text = _escape(this.options.smartypants ? smartypants(cap[0]) : cap[0]);
}
return {
type: 'text',
raw: cap[0],
text: text
};
}
};
return Tokenizer;
}();
var noopTest$1 = helpers.noopTest,
edit$1 = helpers.edit,
merge$1 = helpers.merge;
/**
* Block-Level Grammar
*/
var block = {
newline: /^\n+/,
code: /^( {4}[^\n]+\n*)+/,
fences: /^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,
hr: /^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,
heading: /^ {0,3}(#{1,6}) +([^\n]*?)(?: +#+)? *(?:\n+|$)/,
blockquote: /^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,
list: /^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?!\1bull )\n*|\s*$)/,
html: '^ {0,3}(?:' // optional indentation
+ '<(script|pre|style)[\\s>][\\s\\S]*?(?:\\1>[^\\n]*\\n+|$)' // (1)
+ '|comment[^\\n]*(\\n+|$)' // (2)
+ '|<\\?[\\s\\S]*?\\?>\\n*' // (3)
+ '|\\n*' // (4)
+ '|\\n*' // (5)
+ '|?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:\\n{2,}|$)' // (6)
+ '|<(?!script|pre|style)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$)' // (7) open tag
+ '|(?!script|pre|style)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$)' // (7) closing tag
+ ')',
def: /^ {0,3}\[(label)\]: *\n? *([^\s>]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,
nptable: noopTest$1,
table: noopTest$1,
lheading: /^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,
// regex template, placeholders will be replaced according to different paragraph
// interruption rules of commonmark and the original markdown spec:
_paragraph: /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html)[^\n]+)*)/,
text: /^[^\n]+/
};
block._label = /(?!\s*\])(?:\\[\[\]]|[^\[\]])+/;
block._title = /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/;
block.def = edit$1(block.def).replace('label', block._label).replace('title', block._title).getRegex();
block.bullet = /(?:[*+-]|\d{1,9}[.)])/;
block.item = /^( *)(bull) ?[^\n]*(?:\n(?!\1bull ?)[^\n]*)*/;
block.item = edit$1(block.item, 'gm').replace(/bull/g, block.bullet).getRegex();
block.list = edit$1(block.list).replace(/bull/g, block.bullet).replace('hr', '\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))').replace('def', '\\n+(?=' + block.def.source + ')').getRegex();
block._tag = 'address|article|aside|base|basefont|blockquote|body|caption' + '|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption' + '|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe' + '|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option' + '|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr' + '|track|ul';
block._comment = //;
block.html = edit$1(block.html, 'i').replace('comment', block._comment).replace('tag', block._tag).replace('attribute', / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex();
block.paragraph = edit$1(block._paragraph).replace('hr', block.hr).replace('heading', ' {0,3}#{1,6} ').replace('|lheading', '') // setex headings don't interrupt commonmark paragraphs
.replace('blockquote', ' {0,3}>').replace('fences', ' {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n').replace('list', ' {0,3}(?:[*+-]|1[.)]) ') // only lists starting from 1 can interrupt
.replace('html', '?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)').replace('tag', block._tag) // pars can be interrupted by type (6) html blocks
.getRegex();
block.blockquote = edit$1(block.blockquote).replace('paragraph', block.paragraph).getRegex();
/**
* Normal Block Grammar
*/
block.normal = merge$1({}, block);
/**
* GFM Block Grammar
*/
block.gfm = merge$1({}, block.normal, {
nptable: '^ *([^|\\n ].*\\|.*)\\n' // Header
+ ' *([-:]+ *\\|[-| :]*)' // Align
+ '(?:\\n((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)',
// Cells
table: '^ *\\|(.+)\\n' // Header
+ ' *\\|?( *[-:]+[-| :]*)' // Align
+ '(?:\\n *((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)' // Cells
});
block.gfm.nptable = edit$1(block.gfm.nptable).replace('hr', block.hr).replace('heading', ' {0,3}#{1,6} ').replace('blockquote', ' {0,3}>').replace('code', ' {4}[^\\n]').replace('fences', ' {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n').replace('list', ' {0,3}(?:[*+-]|1[.)]) ') // only lists starting from 1 can interrupt
.replace('html', '?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)').replace('tag', block._tag) // tables can be interrupted by type (6) html blocks
.getRegex();
block.gfm.table = edit$1(block.gfm.table).replace('hr', block.hr).replace('heading', ' {0,3}#{1,6} ').replace('blockquote', ' {0,3}>').replace('code', ' {4}[^\\n]').replace('fences', ' {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n').replace('list', ' {0,3}(?:[*+-]|1[.)]) ') // only lists starting from 1 can interrupt
.replace('html', '?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)').replace('tag', block._tag) // tables can be interrupted by type (6) html blocks
.getRegex();
/**
* Pedantic grammar (original John Gruber's loose markdown specification)
*/
block.pedantic = merge$1({}, block.normal, {
html: edit$1('^ *(?:comment *(?:\\n|\\s*$)' + '|<(tag)[\\s\\S]+?\\1> *(?:\\n{2,}|\\s*$)' // closed tag
+ '| \\s]*)*?/?> *(?:\\n{2,}|\\s*$))').replace('comment', block._comment).replace(/tag/g, '(?!(?:' + 'a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub' + '|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)' + '\\b)\\w+(?!:|[^\\w\\s@]*@)\\b').getRegex(),
def: /^ *\[([^\]]+)\]: *([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,
heading: /^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/,
fences: noopTest$1,
// fences not supported
paragraph: edit$1(block.normal._paragraph).replace('hr', block.hr).replace('heading', ' *#{1,6} *[^\n]').replace('lheading', block.lheading).replace('blockquote', ' {0,3}>').replace('|fences', '').replace('|list', '').replace('|html', '').getRegex()
});
/**
* Inline-Level Grammar
*/
var inline = {
escape: /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,
autolink: /^<(scheme:[^\s\x00-\x1f<>]*|email)>/,
url: noopTest$1,
tag: '^comment' + '|^[a-zA-Z][\\w:-]*\\s*>' // self-closing tag
+ '|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>' // open tag
+ '|^<\\?[\\s\\S]*?\\?>' // processing instruction, e.g.
+ '|^' // declaration, e.g.
+ '|^',
// CDATA section
link: /^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,
reflink: /^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,
nolink: /^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,
reflinkSearch: 'reflink|nolink(?!\\()',
strong: {
start: /^(?:(\*\*(?=[*punctuation]))|\*\*)(?![\s])|__/,
// (1) returns if starts w/ punctuation
middle: /^\*\*(?:(?:(?!overlapSkip)(?:[^*]|\\\*)|overlapSkip)|\*(?:(?!overlapSkip)(?:[^*]|\\\*)|overlapSkip)*?\*)+?\*\*$|^__(?![\s])((?:(?:(?!overlapSkip)(?:[^_]|\\_)|overlapSkip)|_(?:(?!overlapSkip)(?:[^_]|\\_)|overlapSkip)*?_)+?)__$/,
endAst: /[^punctuation\s]\*\*(?!\*)|[punctuation]\*\*(?!\*)(?:(?=[punctuation\s]|$))/,
// last char can't be punct, or final * must also be followed by punct (or endline)
endUnd: /[^\s]__(?!_)(?:(?=[punctuation\s])|$)/ // last char can't be a space, and final _ must preceed punct or \s (or endline)
},
em: {
start: /^(?:(\*(?=[punctuation]))|\*)(?![*\s])|_/,
// (1) returns if starts w/ punctuation
middle: /^\*(?:(?:(?!overlapSkip)(?:[^*]|\\\*)|overlapSkip)|\*(?:(?!overlapSkip)(?:[^*]|\\\*)|overlapSkip)*?\*)+?\*$|^_(?![_\s])(?:(?:(?!overlapSkip)(?:[^_]|\\_)|overlapSkip)|_(?:(?!overlapSkip)(?:[^_]|\\_)|overlapSkip)*?_)+?_$/,
endAst: /[^punctuation\s]\*(?!\*)|[punctuation]\*(?!\*)(?:(?=[punctuation\s]|$))/,
// last char can't be punct, or final * must also be followed by punct (or endline)
endUnd: /[^\s]_(?!_)(?:(?=[punctuation\s])|$)/ // last char can't be a space, and final _ must preceed punct or \s (or endline)
},
code: /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,
br: /^( {2,}|\\)\n(?!\s*$)/,
del: noopTest$1,
text: /^(`+|[^`])(?:[\s\S]*?(?:(?=[\\?@\\[\\]`^{|}~';
inline.punctuation = edit$1(inline.punctuation).replace(/punctuation/g, inline._punctuation).getRegex(); // sequences em should skip over [title](link), `code`,
inline._blockSkip = '\\[[^\\]]*?\\]\\([^\\)]*?\\)|`[^`]*?`|<[^>]*?>';
inline._overlapSkip = '__[^_]*?__|\\*\\*\\[^\\*\\]*?\\*\\*';
inline.em.start = edit$1(inline.em.start).replace(/punctuation/g, inline._punctuation).getRegex();
inline.em.middle = edit$1(inline.em.middle).replace(/punctuation/g, inline._punctuation).replace(/overlapSkip/g, inline._overlapSkip).getRegex();
inline.em.endAst = edit$1(inline.em.endAst, 'g').replace(/punctuation/g, inline._punctuation).getRegex();
inline.em.endUnd = edit$1(inline.em.endUnd, 'g').replace(/punctuation/g, inline._punctuation).getRegex();
inline.strong.start = edit$1(inline.strong.start).replace(/punctuation/g, inline._punctuation).getRegex();
inline.strong.middle = edit$1(inline.strong.middle).replace(/punctuation/g, inline._punctuation).replace(/blockSkip/g, inline._blockSkip).getRegex();
inline.strong.endAst = edit$1(inline.strong.endAst, 'g').replace(/punctuation/g, inline._punctuation).getRegex();
inline.strong.endUnd = edit$1(inline.strong.endUnd, 'g').replace(/punctuation/g, inline._punctuation).getRegex();
inline.blockSkip = edit$1(inline._blockSkip, 'g').getRegex();
inline.overlapSkip = edit$1(inline._overlapSkip, 'g').getRegex();
inline._escapes = /\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g;
inline._scheme = /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/;
inline._email = /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/;
inline.autolink = edit$1(inline.autolink).replace('scheme', inline._scheme).replace('email', inline._email).getRegex();
inline._attribute = /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/;
inline.tag = edit$1(inline.tag).replace('comment', block._comment).replace('attribute', inline._attribute).getRegex();
inline._label = /(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/;
inline._href = /<(?:\\[<>]?|[^\s<>\\])*>|[^\s\x00-\x1f]*/;
inline._title = /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/;
inline.link = edit$1(inline.link).replace('label', inline._label).replace('href', inline._href).replace('title', inline._title).getRegex();
inline.reflink = edit$1(inline.reflink).replace('label', inline._label).getRegex();
inline.reflinkSearch = edit$1(inline.reflinkSearch, 'g').replace('reflink', inline.reflink).replace('nolink', inline.nolink).getRegex();
/**
* Normal Inline Grammar
*/
inline.normal = merge$1({}, inline);
/**
* Pedantic Inline Grammar
*/
inline.pedantic = merge$1({}, inline.normal, {
strong: {
start: /^__|\*\*/,
middle: /^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,
endAst: /\*\*(?!\*)/g,
endUnd: /__(?!_)/g
},
em: {
start: /^_|\*/,
middle: /^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,
endAst: /\*(?!\*)/g,
endUnd: /_(?!_)/g
},
link: edit$1(/^!?\[(label)\]\((.*?)\)/).replace('label', inline._label).getRegex(),
reflink: edit$1(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace('label', inline._label).getRegex()
});
/**
* GFM Inline Grammar
*/
inline.gfm = merge$1({}, inline.normal, {
escape: edit$1(inline.escape).replace('])', '~|])').getRegex(),
_extended_email: /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,
url: /^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,
_backpedal: /(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,
del: /^~+(?=\S)([\s\S]*?\S)~+/,
text: /^(`+|[^`])(?:[\s\S]*?(?:(?=[\\ 0.5) {
ch = 'x' + ch.toString(16);
}
out += '' + ch + ';';
}
return out;
}
/**
* Block Lexer
*/
var Lexer_1 = /*#__PURE__*/function () {
function Lexer(options) {
this.tokens = [];
this.tokens.links = Object.create(null);
this.options = options || defaults$2;
this.options.tokenizer = this.options.tokenizer || new Tokenizer_1();
this.tokenizer = this.options.tokenizer;
this.tokenizer.options = this.options;
var rules = {
block: block$1.normal,
inline: inline$1.normal
};
if (this.options.pedantic) {
rules.block = block$1.pedantic;
rules.inline = inline$1.pedantic;
} else if (this.options.gfm) {
rules.block = block$1.gfm;
if (this.options.breaks) {
rules.inline = inline$1.breaks;
} else {
rules.inline = inline$1.gfm;
}
}
this.tokenizer.rules = rules;
}
/**
* Expose Rules
*/
/**
* Static Lex Method
*/
Lexer.lex = function lex(src, options) {
var lexer = new Lexer(options);
return lexer.lex(src);
}
/**
* Preprocessing
*/
;
var _proto = Lexer.prototype;
_proto.lex = function lex(src) {
src = src.replace(/\r\n|\r/g, '\n').replace(/\t/g, ' ');
this.blockTokens(src, this.tokens, true);
this.inline(this.tokens);
return this.tokens;
}
/**
* Lexing
*/
;
_proto.blockTokens = function blockTokens(src, tokens, top) {
if (tokens === void 0) {
tokens = [];
}
if (top === void 0) {
top = true;
}
src = src.replace(/^ +$/gm, '');
var token, i, l, lastToken;
while (src) {
// newline
if (token = this.tokenizer.space(src)) {
src = src.substring(token.raw.length);
if (token.type) {
tokens.push(token);
}
continue;
} // code
if (token = this.tokenizer.code(src, tokens)) {
src = src.substring(token.raw.length);
if (token.type) {
tokens.push(token);
} else {
lastToken = tokens[tokens.length - 1];
lastToken.raw += '\n' + token.raw;
lastToken.text += '\n' + token.text;
}
continue;
} // fences
if (token = this.tokenizer.fences(src)) {
src = src.substring(token.raw.length);
tokens.push(token);
continue;
} // heading
if (token = this.tokenizer.heading(src)) {
src = src.substring(token.raw.length);
tokens.push(token);
continue;
} // table no leading pipe (gfm)
if (token = this.tokenizer.nptable(src)) {
src = src.substring(token.raw.length);
tokens.push(token);
continue;
} // hr
if (token = this.tokenizer.hr(src)) {
src = src.substring(token.raw.length);
tokens.push(token);
continue;
} // blockquote
if (token = this.tokenizer.blockquote(src)) {
src = src.substring(token.raw.length);
token.tokens = this.blockTokens(token.text, [], top);
tokens.push(token);
continue;
} // list
if (token = this.tokenizer.list(src)) {
src = src.substring(token.raw.length);
l = token.items.length;
for (i = 0; i < l; i++) {
token.items[i].tokens = this.blockTokens(token.items[i].text, [], false);
}
tokens.push(token);
continue;
} // html
if (token = this.tokenizer.html(src)) {
src = src.substring(token.raw.length);
tokens.push(token);
continue;
} // def
if (top && (token = this.tokenizer.def(src))) {
src = src.substring(token.raw.length);
if (!this.tokens.links[token.tag]) {
this.tokens.links[token.tag] = {
href: token.href,
title: token.title
};
}
continue;
} // table (gfm)
if (token = this.tokenizer.table(src)) {
src = src.substring(token.raw.length);
tokens.push(token);
continue;
} // lheading
if (token = this.tokenizer.lheading(src)) {
src = src.substring(token.raw.length);
tokens.push(token);
continue;
} // top-level paragraph
if (top && (token = this.tokenizer.paragraph(src))) {
src = src.substring(token.raw.length);
tokens.push(token);
continue;
} // text
if (token = this.tokenizer.text(src, tokens)) {
src = src.substring(token.raw.length);
if (token.type) {
tokens.push(token);
} else {
lastToken = tokens[tokens.length - 1];
lastToken.raw += '\n' + token.raw;
lastToken.text += '\n' + token.text;
}
continue;
}
if (src) {
var errMsg = 'Infinite loop on byte: ' + src.charCodeAt(0);
if (this.options.silent) {
console.error(errMsg);
break;
} else {
throw new Error(errMsg);
}
}
}
return tokens;
};
_proto.inline = function inline(tokens) {
var i, j, k, l2, row, token;
var l = tokens.length;
for (i = 0; i < l; i++) {
token = tokens[i];
switch (token.type) {
case 'paragraph':
case 'text':
case 'heading':
{
token.tokens = [];
this.inlineTokens(token.text, token.tokens);
break;
}
case 'table':
{
token.tokens = {
header: [],
cells: []
}; // header
l2 = token.header.length;
for (j = 0; j < l2; j++) {
token.tokens.header[j] = [];
this.inlineTokens(token.header[j], token.tokens.header[j]);
} // cells
l2 = token.cells.length;
for (j = 0; j < l2; j++) {
row = token.cells[j];
token.tokens.cells[j] = [];
for (k = 0; k < row.length; k++) {
token.tokens.cells[j][k] = [];
this.inlineTokens(row[k], token.tokens.cells[j][k]);
}
}
break;
}
case 'blockquote':
{
this.inline(token.tokens);
break;
}
case 'list':
{
l2 = token.items.length;
for (j = 0; j < l2; j++) {
this.inline(token.items[j].tokens);
}
break;
}
}
}
return tokens;
}
/**
* Lexing/Compiling
*/
;
_proto.inlineTokens = function inlineTokens(src, tokens, inLink, inRawBlock, prevChar) {
if (tokens === void 0) {
tokens = [];
}
if (inLink === void 0) {
inLink = false;
}
if (inRawBlock === void 0) {
inRawBlock = false;
}
if (prevChar === void 0) {
prevChar = '';
}
var token; // String with links masked to avoid interference with em and strong
var maskedSrc = src;
var match; // Mask out reflinks
if (this.tokens.links) {
var links = Object.keys(this.tokens.links);
if (links.length > 0) {
while ((match = this.tokenizer.rules.inline.reflinkSearch.exec(maskedSrc)) != null) {
if (links.includes(match[0].slice(match[0].lastIndexOf('[') + 1, -1))) {
maskedSrc = maskedSrc.slice(0, match.index) + '[' + 'a'.repeat(match[0].length - 2) + ']' + maskedSrc.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex);
}
}
}
} // Mask out other blocks
while ((match = this.tokenizer.rules.inline.blockSkip.exec(maskedSrc)) != null) {
maskedSrc = maskedSrc.slice(0, match.index) + '[' + 'a'.repeat(match[0].length - 2) + ']' + maskedSrc.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);
}
while (src) {
// escape
if (token = this.tokenizer.escape(src)) {
src = src.substring(token.raw.length);
tokens.push(token);
continue;
} // tag
if (token = this.tokenizer.tag(src, inLink, inRawBlock)) {
src = src.substring(token.raw.length);
inLink = token.inLink;
inRawBlock = token.inRawBlock;
tokens.push(token);
continue;
} // link
if (token = this.tokenizer.link(src)) {
src = src.substring(token.raw.length);
if (token.type === 'link') {
token.tokens = this.inlineTokens(token.text, [], true, inRawBlock);
}
tokens.push(token);
continue;
} // reflink, nolink
if (token = this.tokenizer.reflink(src, this.tokens.links)) {
src = src.substring(token.raw.length);
if (token.type === 'link') {
token.tokens = this.inlineTokens(token.text, [], true, inRawBlock);
}
tokens.push(token);
continue;
} // strong
if (token = this.tokenizer.strong(src, maskedSrc, prevChar)) {
src = src.substring(token.raw.length);
token.tokens = this.inlineTokens(token.text, [], inLink, inRawBlock);
tokens.push(token);
continue;
} // em
if (token = this.tokenizer.em(src, maskedSrc, prevChar)) {
src = src.substring(token.raw.length);
token.tokens = this.inlineTokens(token.text, [], inLink, inRawBlock);
tokens.push(token);
continue;
} // code
if (token = this.tokenizer.codespan(src)) {
src = src.substring(token.raw.length);
tokens.push(token);
continue;
} // br
if (token = this.tokenizer.br(src)) {
src = src.substring(token.raw.length);
tokens.push(token);
continue;
} // del (gfm)
if (token = this.tokenizer.del(src)) {
src = src.substring(token.raw.length);
token.tokens = this.inlineTokens(token.text, [], inLink, inRawBlock);
tokens.push(token);
continue;
} // autolink
if (token = this.tokenizer.autolink(src, mangle)) {
src = src.substring(token.raw.length);
tokens.push(token);
continue;
} // url (gfm)
if (!inLink && (token = this.tokenizer.url(src, mangle))) {
src = src.substring(token.raw.length);
tokens.push(token);
continue;
} // text
if (token = this.tokenizer.inlineText(src, inRawBlock, smartypants)) {
src = src.substring(token.raw.length);
prevChar = token.raw.slice(-1);
tokens.push(token);
continue;
}
if (src) {
var errMsg = 'Infinite loop on byte: ' + src.charCodeAt(0);
if (this.options.silent) {
console.error(errMsg);
break;
} else {
throw new Error(errMsg);
}
}
}
return tokens;
};
_createClass(Lexer, null, [{
key: "rules",
get: function get() {
return {
block: block$1,
inline: inline$1
};
}
}]);
return Lexer;
}();
var defaults$3 = defaults.defaults;
var cleanUrl$1 = helpers.cleanUrl,
escape$1 = helpers.escape;
/**
* Renderer
*/
var Renderer_1 = /*#__PURE__*/function () {
function Renderer(options) {
this.options = options || defaults$3;
}
var _proto = Renderer.prototype;
_proto.code = function code(_code, infostring, escaped) {
var lang = (infostring || '').match(/\S*/)[0];
if (this.options.highlight) {
var out = this.options.highlight(_code, lang);
if (out != null && out !== _code) {
escaped = true;
_code = out;
}
}
if (!lang) {
return '' + (escaped ? _code : escape$1(_code, true)) + ' \n';
}
return '' + (escaped ? _code : escape$1(_code, true)) + ' \n';
};
_proto.blockquote = function blockquote(quote) {
return '\n' + quote + ' \n';
};
_proto.html = function html(_html) {
return _html;
};
_proto.heading = function heading(text, level, raw, slugger) {
if (this.options.headerIds) {
return '\n';
} // ignore IDs
return '' + text + ' \n';
};
_proto.hr = function hr() {
return this.options.xhtml ? ' \n' : ' \n';
};
_proto.list = function list(body, ordered, start) {
var type = ordered ? 'ol' : 'ul',
startatt = ordered && start !== 1 ? ' start="' + start + '"' : '';
return '<' + type + startatt + '>\n' + body + '' + type + '>\n';
};
_proto.listitem = function listitem(text) {
return '' + text + ' \n';
};
_proto.checkbox = function checkbox(checked) {
return ' ';
};
_proto.paragraph = function paragraph(text) {
return '' + text + '
\n';
};
_proto.table = function table(header, body) {
if (body) body = '' + body + ' ';
return ' \n' + '\n' + header + ' \n' + body + '
\n';
};
_proto.tablerow = function tablerow(content) {
return '\n' + content + ' \n';
};
_proto.tablecell = function tablecell(content, flags) {
var type = flags.header ? 'th' : 'td';
var tag = flags.align ? '<' + type + ' align="' + flags.align + '">' : '<' + type + '>';
return tag + content + '' + type + '>\n';
} // span level renderer
;
_proto.strong = function strong(text) {
return '' + text + ' ';
};
_proto.em = function em(text) {
return '' + text + ' ';
};
_proto.codespan = function codespan(text) {
return '' + text + '';
};
_proto.br = function br() {
return this.options.xhtml ? ' ' : ' ';
};
_proto.del = function del(text) {
return '' + text + '';
};
_proto.link = function link(href, title, text) {
href = cleanUrl$1(this.options.sanitize, this.options.baseUrl, href);
if (href === null) {
return text;
}
var out = '' + text + ' ';
return out;
};
_proto.image = function image(href, title, text) {
href = cleanUrl$1(this.options.sanitize, this.options.baseUrl, href);
if (href === null) {
return text;
}
var out = ' ' : '>';
return out;
};
_proto.text = function text(_text) {
return _text;
};
return Renderer;
}();
/**
* TextRenderer
* returns only the textual part of the token
*/
var TextRenderer_1 = /*#__PURE__*/function () {
function TextRenderer() {}
var _proto = TextRenderer.prototype;
// no need for block level renderers
_proto.strong = function strong(text) {
return text;
};
_proto.em = function em(text) {
return text;
};
_proto.codespan = function codespan(text) {
return text;
};
_proto.del = function del(text) {
return text;
};
_proto.html = function html(text) {
return text;
};
_proto.text = function text(_text) {
return _text;
};
_proto.link = function link(href, title, text) {
return '' + text;
};
_proto.image = function image(href, title, text) {
return '' + text;
};
_proto.br = function br() {
return '';
};
return TextRenderer;
}();
/**
* Slugger generates header id
*/
var Slugger_1 = /*#__PURE__*/function () {
function Slugger() {
this.seen = {};
}
/**
* Convert string to unique id
*/
var _proto = Slugger.prototype;
_proto.slug = function slug(value) {
var slug = value.toLowerCase().trim() // remove html tags
.replace(/<[!\/a-z].*?>/ig, '') // remove unwanted chars
.replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g, '').replace(/\s/g, '-');
if (this.seen.hasOwnProperty(slug)) {
var originalSlug = slug;
do {
this.seen[originalSlug]++;
slug = originalSlug + '-' + this.seen[originalSlug];
} while (this.seen.hasOwnProperty(slug));
}
this.seen[slug] = 0;
return slug;
};
return Slugger;
}();
var defaults$4 = defaults.defaults;
var unescape$1 = helpers.unescape;
/**
* Parsing & Compiling
*/
var Parser_1 = /*#__PURE__*/function () {
function Parser(options) {
this.options = options || defaults$4;
this.options.renderer = this.options.renderer || new Renderer_1();
this.renderer = this.options.renderer;
this.renderer.options = this.options;
this.textRenderer = new TextRenderer_1();
this.slugger = new Slugger_1();
}
/**
* Static Parse Method
*/
Parser.parse = function parse(tokens, options) {
var parser = new Parser(options);
return parser.parse(tokens);
}
/**
* Parse Loop
*/
;
var _proto = Parser.prototype;
_proto.parse = function parse(tokens, top) {
if (top === void 0) {
top = true;
}
var out = '',
i,
j,
k,
l2,
l3,
row,
cell,
header,
body,
token,
ordered,
start,
loose,
itemBody,
item,
checked,
task,
checkbox;
var l = tokens.length;
for (i = 0; i < l; i++) {
token = tokens[i];
switch (token.type) {
case 'space':
{
continue;
}
case 'hr':
{
out += this.renderer.hr();
continue;
}
case 'heading':
{
out += this.renderer.heading(this.parseInline(token.tokens), token.depth, unescape$1(this.parseInline(token.tokens, this.textRenderer)), this.slugger);
continue;
}
case 'code':
{
out += this.renderer.code(token.text, token.lang, token.escaped);
continue;
}
case 'table':
{
header = ''; // header
cell = '';
l2 = token.header.length;
for (j = 0; j < l2; j++) {
cell += this.renderer.tablecell(this.parseInline(token.tokens.header[j]), {
header: true,
align: token.align[j]
});
}
header += this.renderer.tablerow(cell);
body = '';
l2 = token.cells.length;
for (j = 0; j < l2; j++) {
row = token.tokens.cells[j];
cell = '';
l3 = row.length;
for (k = 0; k < l3; k++) {
cell += this.renderer.tablecell(this.parseInline(row[k]), {
header: false,
align: token.align[k]
});
}
body += this.renderer.tablerow(cell);
}
out += this.renderer.table(header, body);
continue;
}
case 'blockquote':
{
body = this.parse(token.tokens);
out += this.renderer.blockquote(body);
continue;
}
case 'list':
{
ordered = token.ordered;
start = token.start;
loose = token.loose;
l2 = token.items.length;
body = '';
for (j = 0; j < l2; j++) {
item = token.items[j];
checked = item.checked;
task = item.task;
itemBody = '';
if (item.task) {
checkbox = this.renderer.checkbox(checked);
if (loose) {
if (item.tokens.length > 0 && item.tokens[0].type === 'text') {
item.tokens[0].text = checkbox + ' ' + item.tokens[0].text;
if (item.tokens[0].tokens && item.tokens[0].tokens.length > 0 && item.tokens[0].tokens[0].type === 'text') {
item.tokens[0].tokens[0].text = checkbox + ' ' + item.tokens[0].tokens[0].text;
}
} else {
item.tokens.unshift({
type: 'text',
text: checkbox
});
}
} else {
itemBody += checkbox;
}
}
itemBody += this.parse(item.tokens, loose);
body += this.renderer.listitem(itemBody, task, checked);
}
out += this.renderer.list(body, ordered, start);
continue;
}
case 'html':
{
// TODO parse inline content if parameter markdown=1
out += this.renderer.html(token.text);
continue;
}
case 'paragraph':
{
out += this.renderer.paragraph(this.parseInline(token.tokens));
continue;
}
case 'text':
{
body = token.tokens ? this.parseInline(token.tokens) : token.text;
while (i + 1 < l && tokens[i + 1].type === 'text') {
token = tokens[++i];
body += '\n' + (token.tokens ? this.parseInline(token.tokens) : token.text);
}
out += top ? this.renderer.paragraph(body) : body;
continue;
}
default:
{
var errMsg = 'Token with "' + token.type + '" type was not found.';
if (this.options.silent) {
console.error(errMsg);
return;
} else {
throw new Error(errMsg);
}
}
}
}
return out;
}
/**
* Parse Inline Tokens
*/
;
_proto.parseInline = function parseInline(tokens, renderer) {
renderer = renderer || this.renderer;
var out = '',
i,
token;
var l = tokens.length;
for (i = 0; i < l; i++) {
token = tokens[i];
switch (token.type) {
case 'escape':
{
out += renderer.text(token.text);
break;
}
case 'html':
{
out += renderer.html(token.text);
break;
}
case 'link':
{
out += renderer.link(token.href, token.title, this.parseInline(token.tokens, renderer));
break;
}
case 'image':
{
out += renderer.image(token.href, token.title, token.text);
break;
}
case 'strong':
{
out += renderer.strong(this.parseInline(token.tokens, renderer));
break;
}
case 'em':
{
out += renderer.em(this.parseInline(token.tokens, renderer));
break;
}
case 'codespan':
{
out += renderer.codespan(token.text);
break;
}
case 'br':
{
out += renderer.br();
break;
}
case 'del':
{
out += renderer.del(this.parseInline(token.tokens, renderer));
break;
}
case 'text':
{
out += renderer.text(token.text);
break;
}
default:
{
var errMsg = 'Token with "' + token.type + '" type was not found.';
if (this.options.silent) {
console.error(errMsg);
return;
} else {
throw new Error(errMsg);
}
}
}
}
return out;
};
return Parser;
}();
var merge$2 = helpers.merge,
checkSanitizeDeprecation$1 = helpers.checkSanitizeDeprecation,
escape$2 = helpers.escape;
var getDefaults = defaults.getDefaults,
changeDefaults = defaults.changeDefaults,
defaults$5 = defaults.defaults;
/**
* Marked
*/
function marked(src, opt, callback) {
// throw error in case of non string input
if (typeof src === 'undefined' || src === null) {
throw new Error('marked(): input parameter is undefined or null');
}
if (typeof src !== 'string') {
throw new Error('marked(): input parameter is of type ' + Object.prototype.toString.call(src) + ', string expected');
}
if (typeof opt === 'function') {
callback = opt;
opt = null;
}
opt = merge$2({}, marked.defaults, opt || {});
checkSanitizeDeprecation$1(opt);
if (callback) {
var highlight = opt.highlight;
var tokens;
try {
tokens = Lexer_1.lex(src, opt);
} catch (e) {
return callback(e);
}
var done = function done(err) {
var out;
if (!err) {
try {
out = Parser_1.parse(tokens, opt);
} catch (e) {
err = e;
}
}
opt.highlight = highlight;
return err ? callback(err) : callback(null, out);
};
if (!highlight || highlight.length < 3) {
return done();
}
delete opt.highlight;
if (!tokens.length) return done();
var pending = 0;
marked.walkTokens(tokens, function (token) {
if (token.type === 'code') {
pending++;
setTimeout(function () {
highlight(token.text, token.lang, function (err, code) {
if (err) {
return done(err);
}
if (code != null && code !== token.text) {
token.text = code;
token.escaped = true;
}
pending--;
if (pending === 0) {
done();
}
});
}, 0);
}
});
if (pending === 0) {
done();
}
return;
}
try {
var _tokens = Lexer_1.lex(src, opt);
if (opt.walkTokens) {
marked.walkTokens(_tokens, opt.walkTokens);
}
return Parser_1.parse(_tokens, opt);
} catch (e) {
e.message += '\nPlease report this to https://github.com/markedjs/marked.';
if (opt.silent) {
return 'An error occurred:
' + escape$2(e.message + '', true) + ' ';
}
throw e;
}
}
/**
* Options
*/
marked.options = marked.setOptions = function (opt) {
merge$2(marked.defaults, opt);
changeDefaults(marked.defaults);
return marked;
};
marked.getDefaults = getDefaults;
marked.defaults = defaults$5;
/**
* Use Extension
*/
marked.use = function (extension) {
var opts = merge$2({}, extension);
if (extension.renderer) {
(function () {
var renderer = marked.defaults.renderer || new Renderer_1();
var _loop = function _loop(prop) {
var prevRenderer = renderer[prop];
renderer[prop] = function () {
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
var ret = extension.renderer[prop].apply(renderer, args);
if (ret === false) {
ret = prevRenderer.apply(renderer, args);
}
return ret;
};
};
for (var prop in extension.renderer) {
_loop(prop);
}
opts.renderer = renderer;
})();
}
if (extension.tokenizer) {
(function () {
var tokenizer = marked.defaults.tokenizer || new Tokenizer_1();
var _loop2 = function _loop2(prop) {
var prevTokenizer = tokenizer[prop];
tokenizer[prop] = function () {
for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
args[_key2] = arguments[_key2];
}
var ret = extension.tokenizer[prop].apply(tokenizer, args);
if (ret === false) {
ret = prevTokenizer.apply(tokenizer, args);
}
return ret;
};
};
for (var prop in extension.tokenizer) {
_loop2(prop);
}
opts.tokenizer = tokenizer;
})();
}
if (extension.walkTokens) {
var walkTokens = marked.defaults.walkTokens;
opts.walkTokens = function (token) {
extension.walkTokens(token);
if (walkTokens) {
walkTokens(token);
}
};
}
marked.setOptions(opts);
};
/**
* Run callback for every token
*/
marked.walkTokens = function (tokens, callback) {
for (var _iterator = _createForOfIteratorHelperLoose(tokens), _step; !(_step = _iterator()).done;) {
var token = _step.value;
callback(token);
switch (token.type) {
case 'table':
{
for (var _iterator2 = _createForOfIteratorHelperLoose(token.tokens.header), _step2; !(_step2 = _iterator2()).done;) {
var cell = _step2.value;
marked.walkTokens(cell, callback);
}
for (var _iterator3 = _createForOfIteratorHelperLoose(token.tokens.cells), _step3; !(_step3 = _iterator3()).done;) {
var row = _step3.value;
for (var _iterator4 = _createForOfIteratorHelperLoose(row), _step4; !(_step4 = _iterator4()).done;) {
var _cell = _step4.value;
marked.walkTokens(_cell, callback);
}
}
break;
}
case 'list':
{
marked.walkTokens(token.items, callback);
break;
}
default:
{
if (token.tokens) {
marked.walkTokens(token.tokens, callback);
}
}
}
}
};
/**
* Expose
*/
marked.Parser = Parser_1;
marked.parser = Parser_1.parse;
marked.Renderer = Renderer_1;
marked.TextRenderer = TextRenderer_1;
marked.Lexer = Lexer_1;
marked.lexer = Lexer_1.lex;
marked.Tokenizer = Tokenizer_1;
marked.Slugger = Slugger_1;
marked.parse = marked;
var marked_1 = marked;
return marked_1;
})));
/***/ }),
/***/ "FOrL":
/*!********************************************!*\
!*** ./src/assets/images/icons/nodata.png ***!
\********************************************/
/*! no static exports found */
/*! exports used: default */
/*! ModuleConcatenation bailout: Module is not an ECMAScript module */
/***/ (function(module, exports, __webpack_require__) {
module.exports = __webpack_require__.p + "static/nodata.a6b3f948.png";
/***/ }),
/***/ "IPdS":
/*!*************************************************************************!*\
!*** ./src/pages/Problemset/components/BasketDrawer/index.less?modules ***!
\*************************************************************************/
/*! no static exports found */
/*! exports used: default */
/*! ModuleConcatenation bailout: Module is not an ECMAScript module */
/***/ (function(module, exports, __webpack_require__) {
// extracted by mini-css-extract-plugin
module.exports = {"drawerWrap":"drawerWrap___nRvfD","title":"title___e_1lX","problemset":"problemset___1u9oP","content":"content___1WwQ5","delete":"delete___3Q7nc","deleteIcon":"deleteIcon___ObOyh","previewWrap":"previewWrap___25lTY","preview":"preview___3uiyE"};
/***/ }),
/***/ "JUtD":
/*!*****************************************************!*\
!*** ./src/pages/Problemset/index.tsx + 19 modules ***!
\*****************************************************/
/*! exports provided: default */
/*! all exports used */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/objectSpread2.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/slicedToArray.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/regenerator/index.js (<- Module is not an ECMAScript module) */
/*! ModuleConcatenation bailout: Cannot concat with ./src/pages/Problemset/components/AddModal/index.less?modules (<- Module is not an ECMAScript module) */
/*! ModuleConcatenation bailout: Cannot concat with ./src/pages/Problemset/components/BasketDrawer/index.less?modules (<- Module is not an ECMAScript module) */
/*! ModuleConcatenation bailout: Cannot concat with ./src/pages/Problemset/components/BasketSideBar/index.less?modules (<- Module is not an ECMAScript module) */
/*! ModuleConcatenation bailout: Cannot concat with ./src/pages/Problemset/components/Crumbs/index.less?modules (<- Module is not an ECMAScript module) */
/*! ModuleConcatenation bailout: Cannot concat with ./src/pages/Problemset/components/ExportFolderModal/index.less?modules (<- Module is not an ECMAScript module) */
/*! ModuleConcatenation bailout: Cannot concat with ./src/pages/Problemset/components/Folder/index.less?modules (<- Module is not an ECMAScript module) */
/*! ModuleConcatenation bailout: Cannot concat with ./src/pages/Problemset/components/SelectShixuns/index.less?modules (<- Module is not an ECMAScript module) */
/*! ModuleConcatenation bailout: Cannot concat with ./src/pages/Problemset/components/ShareModal/index.less?modules (<- Module is not an ECMAScript module) */
/*! ModuleConcatenation bailout: Cannot concat with ./src/pages/Problemset/components/TeachGroup/index.less?modules (<- Module is not an ECMAScript module) */
/*! ModuleConcatenation bailout: Cannot concat with ./src/pages/Problemset/components/Topic/index.less?modules (<- Module is not an ECMAScript module) */
/*! ModuleConcatenation bailout: Cannot concat with ./src/pages/Problemset/components/index.less?modules (<- Module is not an ECMAScript module) */
/*! ModuleConcatenation bailout: Cannot concat with ./src/pages/Problemset/index.less?modules (<- Module is not an ECMAScript module) */
/*! ModuleConcatenation bailout: Cannot concat with ./src/.umi-production/core/umiExports.ts */
/*! ModuleConcatenation bailout: Cannot concat with ./src/components/CustomTree/index.tsx */
/*! ModuleConcatenation bailout: Cannot concat with ./src/components/LanguageSelect/index.tsx */
/*! ModuleConcatenation bailout: Cannot concat with ./src/components/NoData/index.tsx */
/*! ModuleConcatenation bailout: Cannot concat with ./src/components/RenderHtml/index.tsx */
/*! ModuleConcatenation bailout: Cannot concat with ./src/service/problemset.ts */
/*! ModuleConcatenation bailout: Cannot concat with ./src/service/shixuns.ts */
/*! ModuleConcatenation bailout: Cannot concat with ./src/utils/authority.ts */
/*! ModuleConcatenation bailout: Cannot concat with ./src/utils/export.ts */
/*! ModuleConcatenation bailout: Cannot concat with ./src/utils/fetch.ts */
/*! ModuleConcatenation bailout: Cannot concat with ./src/utils/util.tsx */
/*! ModuleConcatenation bailout: Cannot concat with ./src/utils/verifyLogin.tsx */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/button/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/button/style/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/checkbox/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/checkbox/style/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/col/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/col/style/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/divider/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/divider/style/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/drawer/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/drawer/style/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/dropdown/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/dropdown/style/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/form/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/form/style/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/input/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/input/style/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/menu/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/menu/style/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/message/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/message/style/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/modal/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/modal/style/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/pagination/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/pagination/style/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/popover/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/popover/style/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/radio/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/radio/style/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/row/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/row/style/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/spin/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/spin/style/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/tabs/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/tabs/style/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/tooltip/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/antd/es/tooltip/style/index.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/lodash/lodash.js (<- Module is not an ECMAScript module) */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/react-router/esm/react-router.js */
/*! ModuleConcatenation bailout: Cannot concat with external "window.React" (<- Module is not an ECMAScript module) */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);
// EXTERNAL MODULE: ./node_modules/antd/es/pagination/style/index.js
var style = __webpack_require__("DjyN");
// EXTERNAL MODULE: ./node_modules/antd/es/pagination/index.js + 2 modules
var pagination = __webpack_require__("NUBc");
// EXTERNAL MODULE: ./node_modules/antd/es/spin/style/index.js
var spin_style = __webpack_require__("T2oS");
// EXTERNAL MODULE: ./node_modules/antd/es/spin/index.js
var spin = __webpack_require__("W9HT");
// EXTERNAL MODULE: ./node_modules/antd/es/dropdown/style/index.js
var dropdown_style = __webpack_require__("qVdP");
// EXTERNAL MODULE: ./node_modules/antd/es/dropdown/index.js
var dropdown = __webpack_require__("jsC+");
// EXTERNAL MODULE: ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/objectSpread2.js
var objectSpread2 = __webpack_require__("k1fw");
// EXTERNAL MODULE: ./node_modules/antd/es/button/style/index.js
var button_style = __webpack_require__("+L6B");
// EXTERNAL MODULE: ./node_modules/antd/es/button/index.js
var es_button = __webpack_require__("2/Rp");
// EXTERNAL MODULE: ./node_modules/antd/es/tooltip/style/index.js
var tooltip_style = __webpack_require__("5Dmo");
// EXTERNAL MODULE: ./node_modules/antd/es/tooltip/index.js + 1 modules
var tooltip = __webpack_require__("3S7+");
// EXTERNAL MODULE: ./node_modules/antd/es/menu/style/index.js
var menu_style = __webpack_require__("lUTK");
// EXTERNAL MODULE: ./node_modules/antd/es/menu/index.js + 3 modules
var es_menu = __webpack_require__("BvKs");
// EXTERNAL MODULE: ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
var toConsumableArray = __webpack_require__("oBTY");
// EXTERNAL MODULE: ./node_modules/antd/es/checkbox/style/index.js
var checkbox_style = __webpack_require__("sRBo");
// EXTERNAL MODULE: ./node_modules/antd/es/checkbox/index.js + 2 modules
var es_checkbox = __webpack_require__("kaz8");
// EXTERNAL MODULE: ./node_modules/antd/es/message/style/index.js
var message_style = __webpack_require__("miYZ");
// EXTERNAL MODULE: ./node_modules/antd/es/message/index.js + 1 modules
var message = __webpack_require__("tsqr");
// EXTERNAL MODULE: ./node_modules/antd/es/radio/style/index.js
var radio_style = __webpack_require__("7Kak");
// EXTERNAL MODULE: ./node_modules/antd/es/radio/index.js + 4 modules
var es_radio = __webpack_require__("9yH6");
// EXTERNAL MODULE: ./node_modules/antd/es/modal/style/index.js
var modal_style = __webpack_require__("2qtc");
// EXTERNAL MODULE: ./node_modules/antd/es/modal/index.js + 7 modules
var modal = __webpack_require__("kLXV");
// EXTERNAL MODULE: ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js
var asyncToGenerator = __webpack_require__("9og8");
// EXTERNAL MODULE: ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
var slicedToArray = __webpack_require__("tJVT");
// EXTERNAL MODULE: ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js + 1 modules
var objectWithoutProperties = __webpack_require__("PpiC");
// EXTERNAL MODULE: ./node_modules/antd/es/input/style/index.js
var input_style = __webpack_require__("5NDa");
// EXTERNAL MODULE: ./node_modules/antd/es/input/index.js + 3 modules
var input = __webpack_require__("5rEg");
// EXTERNAL MODULE: ./node_modules/antd/es/tabs/style/index.js
var tabs_style = __webpack_require__("Znn+");
// EXTERNAL MODULE: ./node_modules/antd/es/tabs/index.js
var tabs = __webpack_require__("ZTPi");
// EXTERNAL MODULE: ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/regenerator/index.js
var regenerator = __webpack_require__("WmNS");
var regenerator_default = /*#__PURE__*/__webpack_require__.n(regenerator);
// EXTERNAL MODULE: external "window.React"
var external_window_React_ = __webpack_require__("cDcd");
var external_window_React_default = /*#__PURE__*/__webpack_require__.n(external_window_React_);
// EXTERNAL MODULE: ./src/.umi-production/core/umiExports.ts + 17 modules
var umiExports = __webpack_require__("9kvl");
// EXTERNAL MODULE: ./src/components/LanguageSelect/index.tsx
var LanguageSelect = __webpack_require__("iris");
// EXTERNAL MODULE: ./src/pages/Problemset/components/AddModal/index.less?modules
var AddModalmodules = __webpack_require__("d5o6");
var AddModalmodules_default = /*#__PURE__*/__webpack_require__.n(AddModalmodules);
// EXTERNAL MODULE: ./src/components/CustomTree/index.tsx
var CustomTree = __webpack_require__("P/tu");
// EXTERNAL MODULE: ./src/service/problemset.ts
var service_problemset = __webpack_require__("WCUW");
// CONCATENATED MODULE: ./src/pages/Problemset/components/AddModal/index.tsx
var AddModal_ShareModal = function ShareModal(_ref) {
var problemset = _ref.problemset,
dispatch = _ref.dispatch,
onOk = _ref.onOk;
var _useState = Object(external_window_React_["useState"])(''),
_useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
value = _useState2[0],
setValue = _useState2[1];
var _useState3 = Object(external_window_React_["useState"])([0]),
_useState4 = Object(slicedToArray["a" /* default */])(_useState3, 2),
selectedKeys = _useState4[0],
setSelectedKeys = _useState4[1];
var handleCancel = function handleCancel() {
dispatch({
type: 'problemset/setActionTabs',
payload: {}
});
};
Object(external_window_React_["useEffect"])(function () {
if (problemset.actionTabs.key === '新建文件夹') {
var _problemset$actionTab, _problemset$actionTab2;
setSelectedKeys([(_problemset$actionTab = problemset.actionTabs) === null || _problemset$actionTab === void 0 ? void 0 : (_problemset$actionTab2 = _problemset$actionTab.params) === null || _problemset$actionTab2 === void 0 ? void 0 : _problemset$actionTab2.group_id]);
setValue('');
}
}, [problemset.actionTabs.key]);
var handleOk = /*#__PURE__*/function () {
var _ref2 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee() {
var array, i, res;
return regenerator_default.a.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
array = ['?', '、', '/', '╲', '*', '<', '>', '|'];
if (value.trim()) {
_context.next = 4;
break;
}
message["b" /* default */].warn('请输入文件夹名称');
return _context.abrupt("return");
case 4:
if (!(value.charAt(0) === ' ')) {
_context.next = 7;
break;
}
message["b" /* default */].warn('首字符不能为空格');
return _context.abrupt("return");
case 7:
i = 0;
case 8:
if (!(i < value.length)) {
_context.next = 15;
break;
}
if (!array.includes(value.charAt(i))) {
_context.next = 12;
break;
}
message["b" /* default */].warn('文件夹名称包含特殊字符');
return _context.abrupt("return", false);
case 12:
i++;
_context.next = 8;
break;
case 15:
_context.next = 17;
return Object(service_problemset["n" /* createGroup */])({
parent_id: selectedKeys.length > 0 ? selectedKeys[0] : 0,
name: value
});
case 17:
res = _context.sent;
if (res.status === 0) {
handleCancel();
onOk(res === null || res === void 0 ? void 0 : res.id);
}
case 19:
case "end":
return _context.stop();
}
}
}, _callee);
}));
return function handleOk() {
return _ref2.apply(this, arguments);
};
}();
return /*#__PURE__*/external_window_React_default.a.createElement(modal["a" /* default */], {
centered: true,
title: "\u65B0\u5EFA\u6587\u4EF6\u5939",
visible: problemset.actionTabs.key === '新建文件夹' ? true : false // visible
,
width: 500,
onCancel: handleCancel,
onOk: handleOk,
destroyOnClose: true
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: AddModalmodules_default.a.addModal
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: AddModalmodules_default.a.row
}, /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: AddModalmodules_default.a.label
}, "\u6587\u4EF6\u5939\u540D\u79F0: "), /*#__PURE__*/external_window_React_default.a.createElement(input["a" /* default */], {
placeholder: "\u8BF7\u8F93\u5165\u6587\u4EF6\u5939\u540D\u79F0",
value: value,
onChange: function onChange(e) {
return setValue(e.target.value);
}
})), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: AddModalmodules_default.a.row,
style: {
alignItems: 'start',
maxHeight: 500,
overflow: 'auto'
}
}, /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: AddModalmodules_default.a.label
}, "\u6587\u4EF6\u5939\u4F4D\u7F6E: "), /*#__PURE__*/external_window_React_default.a.createElement(CustomTree["a" /* default */], {
value: selectedKeys,
onChange: function onChange(e) {
return setSelectedKeys(e);
}
}))));
};
/* harmony default export */ var AddModal = (Object(umiExports["a" /* connect */])(function (_ref3) {
var problemset = _ref3.problemset;
return {
problemset: problemset
};
})(AddModal_ShareModal));
// EXTERNAL MODULE: ./src/components/NoData/index.tsx
var NoData = __webpack_require__("BdwD");
// EXTERNAL MODULE: ./src/pages/Problemset/components/index.less?modules
var componentsmodules = __webpack_require__("iNYN");
var componentsmodules_default = /*#__PURE__*/__webpack_require__.n(componentsmodules);
// CONCATENATED MODULE: ./src/pages/Problemset/components/PublicReviewModal.tsx
var PublicReviewModal_PublicReviewModal = function PublicReviewModal(_ref) {
var problemset = _ref.problemset,
globalSetting = _ref.globalSetting,
loading = _ref.loading,
dispatch = _ref.dispatch,
props = Object(objectWithoutProperties["a" /* default */])(_ref, ["problemset", "globalSetting", "loading", "dispatch"]);
return /*#__PURE__*/external_window_React_default.a.createElement(modal["a" /* default */], {
centered: true,
keyboard: false,
closable: false,
destroyOnClose: true,
visible: problemset.actionTabs.key === 'Problemset-PublicReview',
title: "\u63D0\u793A",
okText: "\u77E5\u9053\u5566",
cancelText: "",
width: "442px",
onOk: function onOk() {
dispatch({
type: 'problemset/setActionTabs',
payload: {}
});
},
onCancel: function onCancel() {
dispatch({
type: 'problemset/setActionTabs',
payload: {}
});
}
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: componentsmodules_default.a.modalContent
}, "\u516C\u5F00\u7533\u8BF7\u5DF2\u63D0\u4EA4\uFF0C\u8BF7\u7B49\u5F85\u7BA1\u7406\u5458\u7684\u5BA1\u6838"), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: componentsmodules_default.a.modalContent
}, "\u6211\u4EEC\u5C06\u57281-2\u4E2A\u5DE5\u4F5C\u65E5\u5185\u5B8C\u6210\u5BA1\u6838"));
};
/* harmony default export */ var components_PublicReviewModal = (Object(umiExports["a" /* connect */])(function (_ref2) {
var problemset = _ref2.problemset,
loading = _ref2.loading,
globalSetting = _ref2.globalSetting;
return {
problemset: problemset,
globalSetting: globalSetting,
loading: loading.effects
};
})(PublicReviewModal_PublicReviewModal));
// EXTERNAL MODULE: ./src/pages/Problemset/components/ExportFolderModal/index.less?modules
var ExportFolderModalmodules = __webpack_require__("xlxt");
var ExportFolderModalmodules_default = /*#__PURE__*/__webpack_require__.n(ExportFolderModalmodules);
// EXTERNAL MODULE: ./src/utils/export.ts
var utils_export = __webpack_require__("mgmH");
// CONCATENATED MODULE: ./src/pages/Problemset/components/ExportFolderModal/index.tsx
var ExportFolderModal_ExportModal = function ExportModal(_ref) {
var problemset = _ref.problemset,
dispatch = _ref.dispatch;
var _useState = Object(external_window_React_["useState"])([]),
_useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
value = _useState2[0],
setValue = _useState2[1];
var handleCancel = function handleCancel() {
dispatch({
type: 'problemset/setActionTabs',
payload: {}
});
};
Object(external_window_React_["useEffect"])(function () {
if (problemset.actionTabs.key === '导出试题') {
var _problemset$actionTab, _problemset$actionTab2;
setValue([(_problemset$actionTab = problemset.actionTabs) === null || _problemset$actionTab === void 0 ? void 0 : (_problemset$actionTab2 = _problemset$actionTab.params) === null || _problemset$actionTab2 === void 0 ? void 0 : _problemset$actionTab2.group_id]);
}
}, [problemset.actionTabs.key]);
var handleOk = function handleOk() {
if (value.length === 0) {
message["b" /* default */].warn('请选择文件夹');
return;
}
Object(utils_export["k" /* ExportProblemset */])({
group_id: value[0]
});
handleCancel();
};
return /*#__PURE__*/external_window_React_default.a.createElement(modal["a" /* default */], {
centered: true,
title: "\u5BFC\u51FA\u8BD5\u9898",
visible: problemset.actionTabs.key === '导出试题' ? true : false,
width: 718,
destroyOnClose: true,
wrapClassName: ExportFolderModalmodules_default.a.customModal,
onCancel: handleCancel,
onOk: handleOk
}, /*#__PURE__*/external_window_React_default.a.createElement("aside", {
className: ExportFolderModalmodules_default.a.exportModal
}, /*#__PURE__*/external_window_React_default.a.createElement(CustomTree["a" /* default */], {
value: value,
onChange: function onChange(e) {
return setValue(e);
}
})));
};
/* harmony default export */ var ExportFolderModal = (Object(umiExports["a" /* connect */])(function (_ref2) {
var problemset = _ref2.problemset;
return {
problemset: problemset
};
})(ExportFolderModal_ExportModal));
// EXTERNAL MODULE: ./src/pages/Problemset/components/ShareModal/index.less?modules
var ShareModalmodules = __webpack_require__("i8i3");
var ShareModalmodules_default = /*#__PURE__*/__webpack_require__.n(ShareModalmodules);
// EXTERNAL MODULE: ./node_modules/react-router/esm/react-router.js
var react_router = __webpack_require__("Ty5D");
// CONCATENATED MODULE: ./src/pages/Problemset/components/ShareModal/index.tsx
var ShareModal_ShareModal = function ShareModal(_ref) {
var _problemset$teachGrou, _problemset$teachGrou2;
var problemset = _ref.problemset,
dispatch = _ref.dispatch,
onOk = _ref.onOk;
var urlParams = Object(react_router["i" /* useParams */])();
var _useState = Object(external_window_React_["useState"])([]),
_useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
list = _useState2[0],
setList = _useState2[1];
var _useState3 = Object(external_window_React_["useState"])(1),
_useState4 = Object(slicedToArray["a" /* default */])(_useState3, 2),
shareIndex = _useState4[0],
setShareIndex = _useState4[1];
var _useState5 = Object(external_window_React_["useState"])([]),
_useState6 = Object(slicedToArray["a" /* default */])(_useState5, 2),
value = _useState6[0],
setValue = _useState6[1];
var _useState7 = Object(external_window_React_["useState"])([]),
_useState8 = Object(slicedToArray["a" /* default */])(_useState7, 2),
teachValue = _useState8[0],
setTeachValue = _useState8[1];
var _useState9 = Object(external_window_React_["useState"])(true),
_useState10 = Object(slicedToArray["a" /* default */])(_useState9, 2),
loading = _useState10[0],
setLoading = _useState10[1];
var _useState11 = Object(external_window_React_["useState"])(false),
_useState12 = Object(slicedToArray["a" /* default */])(_useState11, 2),
btnLoading = _useState12[0],
setBtnLoading = _useState12[1];
var _useState13 = Object(external_window_React_["useState"])(false),
_useState14 = Object(slicedToArray["a" /* default */])(_useState13, 2),
allChecked = _useState14[0],
setAllChecked = _useState14[1];
Object(external_window_React_["useEffect"])(function () {
if (problemset.actionTabs.key === '共享试题') {
var _problemset$actionTab, _problemset$actionTab2;
getData();
setValue([(_problemset$actionTab = problemset.actionTabs) === null || _problemset$actionTab === void 0 ? void 0 : (_problemset$actionTab2 = _problemset$actionTab.params) === null || _problemset$actionTab2 === void 0 ? void 0 : _problemset$actionTab2.group_id]);
}
}, [problemset.actionTabs.key]);
var getData = /*#__PURE__*/function () {
var _ref2 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee() {
var res, noParams, newList;
return regenerator_default.a.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
setLoading(true); //作为一个新的请求,防止和其他分组有差异
_context.next = 3;
return Object(service_problemset["v" /* getItemBanks */])({
type: 0,
page: 1,
per_page: 10,
order_by: 'new'
});
case 3:
res = _context.sent;
if (res !== null && res !== void 0 && res.item_banks_group) {
noParams = {
id: -1,
item_banks_count: (res === null || res === void 0 ? void 0 : res.no_group_count) || 0,
name: {
name: '未加入分组'
}
};
newList = [noParams].concat((res === null || res === void 0 ? void 0 : res.item_banks_group) || []);
setList(newList);
}
setLoading(false);
case 6:
case "end":
return _context.stop();
}
}
}, _callee);
}));
return function getData() {
return _ref2.apply(this, arguments);
};
}();
var handleCancel = function handleCancel() {
dispatch({
type: 'problemset/setActionTabs',
payload: {}
});
};
var handleOk = /*#__PURE__*/function () {
var _ref3 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee2() {
var res;
return regenerator_default.a.wrap(function _callee2$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
if (!(value.length === 0)) {
_context2.next = 3;
break;
}
message["b" /* default */].warn('请选择需要的文件夹');
return _context2.abrupt("return");
case 3:
if (!(shareIndex === 1)) {
_context2.next = 6;
break;
}
setShareIndex(2);
return _context2.abrupt("return");
case 6:
setBtnLoading(true);
_context2.next = 9;
return Object(service_problemset["j" /* batchShare */])({
item_banks_group_ids: value,
clazz: 'ItemBank',
group_ids: teachValue
});
case 9:
res = _context2.sent;
if ((res === null || res === void 0 ? void 0 : res.status) === 0) {
onOk();
handleCancel();
}
setBtnLoading(false);
case 12:
case "end":
return _context2.stop();
}
}
}, _callee2);
}));
return function handleOk() {
return _ref3.apply(this, arguments);
};
}();
var onChange = function onChange(values) {
setValue(values);
setAllChecked(values.length === list.length);
};
return /*#__PURE__*/external_window_React_default.a.createElement(modal["a" /* default */], {
centered: true,
afterClose: function afterClose() {
setTeachValue([]);
setShareIndex(1);
setAllChecked(false);
setList([]);
},
title: "\u5171\u4EAB\u8BD5\u9898".concat(shareIndex, "/2"),
visible: problemset.actionTabs.key === '共享试题' ? true : false,
footer: null,
width: 718,
destroyOnClose: true,
wrapClassName: ShareModalmodules_default.a.customModal,
onCancel: handleCancel
}, /*#__PURE__*/external_window_React_default.a.createElement("aside", {
className: ShareModalmodules_default.a.shareModal
}, /*#__PURE__*/external_window_React_default.a.createElement(spin["a" /* default */], {
spinning: loading
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: ShareModalmodules_default.a.content
}, shareIndex === 1 && /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: ShareModalmodules_default.a.group
}, /*#__PURE__*/external_window_React_default.a.createElement(CustomTree["a" /* default */], {
value: value,
onChange: function onChange(e) {
return setValue(e);
}
})), shareIndex === 2 && /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: ShareModalmodules_default.a.teachGroup
}, /*#__PURE__*/external_window_React_default.a.createElement("p", null, "\u5171\u4EAB\u81F3\u6559\u7814\u56E2\u961F"), /*#__PURE__*/external_window_React_default.a.createElement(es_checkbox["a" /* default */].Group, {
value: teachValue,
onChange: function onChange(v) {
return setTeachValue(v);
}
}, problemset === null || problemset === void 0 ? void 0 : (_problemset$teachGrou = problemset.teachGroupData) === null || _problemset$teachGrou === void 0 ? void 0 : (_problemset$teachGrou2 = _problemset$teachGrou.groups) === null || _problemset$teachGrou2 === void 0 ? void 0 : _problemset$teachGrou2.map(function (item) {
return /*#__PURE__*/external_window_React_default.a.createElement(es_checkbox["a" /* default */], {
key: item.group_id,
value: item.group_id
}, item === null || item === void 0 ? void 0 : item.name);
})))), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: ShareModalmodules_default.a.footer
}, /*#__PURE__*/external_window_React_default.a.createElement(es_button["a" /* default */], {
onClick: handleCancel
}, "\u53D6\u6D88"), /*#__PURE__*/external_window_React_default.a.createElement(es_button["a" /* default */], {
loading: btnLoading,
onClick: handleOk,
type: "primary"
}, shareIndex === 1 ? '下一步' : '确认共享')))));
};
/* harmony default export */ var components_ShareModal = (Object(umiExports["a" /* connect */])(function (_ref4) {
var problemset = _ref4.problemset;
return {
problemset: problemset
};
})(ShareModal_ShareModal));
// CONCATENATED MODULE: ./src/pages/Problemset/components/SetPrivateModal.tsx
var SetPrivateModal_SetPrivateModal = function SetPrivateModal(_ref) {
var problemset = _ref.problemset,
globalSetting = _ref.globalSetting,
loading = _ref.loading,
dispatch = _ref.dispatch,
_ref$onReloadData = _ref.onReloadData,
onReloadData = _ref$onReloadData === void 0 ? function () {} : _ref$onReloadData,
props = Object(objectWithoutProperties["a" /* default */])(_ref, ["problemset", "globalSetting", "loading", "dispatch", "onReloadData"]);
var hintFlagRef = Object(external_window_React_["useRef"])(false);
var _useState = Object(external_window_React_["useState"])(false),
_useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
visible = _useState2[0],
setVisible = _useState2[1];
Object(external_window_React_["useEffect"])(function () {
if (problemset.actionTabs.key === 'Problemset-SetPrivate') {
window.localStorage.getItem('problemset-set-private-hint-flag') === "1" ? handleOk() : setVisible(true);
} else {
setVisible(false);
}
}, [problemset.actionTabs.key]);
var handleOk = /*#__PURE__*/function () {
var _ref2 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee() {
var res;
return regenerator_default.a.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
hintFlagRef.current && window.localStorage.setItem('problemset-set-private-hint-flag', '1');
_context.next = 3;
return dispatch({
type: 'problemset/setPrivate',
payload: problemset.actionTabs.params
});
case 3:
res = _context.sent;
dispatch({
type: 'problemset/setActionTabs',
payload: {}
});
hintFlagRef.current = false;
if (res.status === 0) {
onReloadData();
}
case 7:
case "end":
return _context.stop();
}
}
}, _callee);
}));
return function handleOk() {
return _ref2.apply(this, arguments);
};
}();
return /*#__PURE__*/external_window_React_default.a.createElement(modal["a" /* default */], {
centered: true,
keyboard: false,
closable: false,
destroyOnClose: true,
visible: visible,
title: "\u64A4\u9500\u516C\u5F00\u544A\u77E5",
okText: "\u786E\u5B9A",
cancelText: "\u53D6\u6D88",
confirmLoading: loading['problemset/setPrivate'],
width: "442px",
onOk: handleOk,
onCancel: function onCancel() {
dispatch({
type: 'problemset/setActionTabs',
payload: {}
});
hintFlagRef.current = false;
}
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: componentsmodules_default.a.modalContentLeft
}, "\u672C\u9898\u5DF2\u516C\u5F00\uFF0C\u64A4\u9500\u516C\u5F00\u53EF\u80FD\u5BFC\u81F4\u90E8\u5206\u7528\u6237\u5BF9\u672C\u9898\u7684\u4F7F\u7528\u53D7\u635F\u3002"), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: componentsmodules_default.a.modalContentLeft
}, "\u786E\u8BA4\u64A4\u9500\u516C\u5F00\u56DE\u5230\u81EA\u6709\u72B6\u6001\u5417\uFF1F"), /*#__PURE__*/external_window_React_default.a.createElement("div", null, /*#__PURE__*/external_window_React_default.a.createElement(es_checkbox["a" /* default */], {
className: "mt10",
defaultChecked: false,
onChange: function onChange(e) {
return hintFlagRef.current = e.target.checked;
}
}, "\u4E0D\u518D\u63D0\u793A")));
};
/* harmony default export */ var components_SetPrivateModal = (Object(umiExports["a" /* connect */])(function (_ref3) {
var problemset = _ref3.problemset,
loading = _ref3.loading,
globalSetting = _ref3.globalSetting;
return {
problemset: problemset,
globalSetting: globalSetting,
loading: loading.effects
};
})(SetPrivateModal_SetPrivateModal));
// CONCATENATED MODULE: ./src/pages/Problemset/components/DeleteModal.tsx
var DeleteModal_DeleteModal = function DeleteModal(_ref) {
var problemset = _ref.problemset,
globalSetting = _ref.globalSetting,
loading = _ref.loading,
dispatch = _ref.dispatch,
_ref$onReloadData = _ref.onReloadData,
onReloadData = _ref$onReloadData === void 0 ? function () {} : _ref$onReloadData,
props = Object(objectWithoutProperties["a" /* default */])(_ref, ["problemset", "globalSetting", "loading", "dispatch", "onReloadData"]);
var handleOk = /*#__PURE__*/function () {
var _ref2 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee() {
var res;
return regenerator_default.a.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return dispatch({
type: 'problemset/handleDelete',
payload: problemset.actionTabs.params
});
case 2:
res = _context.sent;
dispatch({
type: 'problemset/setActionTabs',
payload: {}
});
if (res.status === 0) {
onReloadData();
}
case 5:
case "end":
return _context.stop();
}
}
}, _callee);
}));
return function handleOk() {
return _ref2.apply(this, arguments);
};
}();
return /*#__PURE__*/external_window_React_default.a.createElement(modal["a" /* default */], {
centered: true,
keyboard: false,
closable: false,
destroyOnClose: true,
visible: problemset.actionTabs.key === 'Problemset-Delete',
title: "\u63D0\u793A",
okText: "\u786E\u5B9A",
cancelText: "\u53D6\u6D88",
confirmLoading: loading['problemset/handleDelete'],
width: "442px",
onOk: handleOk,
onCancel: function onCancel() {
dispatch({
type: 'problemset/setActionTabs',
payload: {}
});
}
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: componentsmodules_default.a.modalContent
}, "\u786E\u8BA4\u5220\u9664\u540E\uFF0C\u65E0\u6CD5\u64A4\u9500"), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: componentsmodules_default.a.modalContent
}, "\u662F\u5426\u786E\u8BA4\u5220\u9664\uFF1F"));
};
/* harmony default export */ var components_DeleteModal = (Object(umiExports["a" /* connect */])(function (_ref3) {
var problemset = _ref3.problemset,
loading = _ref3.loading,
globalSetting = _ref3.globalSetting;
return {
problemset: problemset,
globalSetting: globalSetting,
loading: loading.effects
};
})(DeleteModal_DeleteModal));
// EXTERNAL MODULE: ./node_modules/lodash/lodash.js
var lodash = __webpack_require__("LvDl");
// EXTERNAL MODULE: ./src/components/RenderHtml/index.tsx + 1 modules
var RenderHtml = __webpack_require__("9Bee");
// CONCATENATED MODULE: ./src/pages/Problemset/components/Single.tsx
var Single_Single = function Single(_ref) {
var _problemset$actionTab3;
var problemset = _ref.problemset,
dispatch = _ref.dispatch;
var _useState = Object(external_window_React_["useState"])({}),
_useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
data = _useState2[0],
setData = _useState2[1];
var _useState3 = Object(external_window_React_["useState"])([]),
_useState4 = Object(slicedToArray["a" /* default */])(_useState3, 2),
choices = _useState4[0],
setChoices = _useState4[1];
var _useState5 = Object(external_window_React_["useState"])(false),
_useState6 = Object(slicedToArray["a" /* default */])(_useState5, 2),
calculate = _useState6[0],
setCalculate = _useState6[1];
var tagList = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'];
Object(external_window_React_["useEffect"])(function () {
var _problemset$actionTab;
if ((problemset === null || problemset === void 0 ? void 0 : (_problemset$actionTab = problemset.actionTabs) === null || _problemset$actionTab === void 0 ? void 0 : _problemset$actionTab.key) === 'SINGLE') {
var _problemset$actionTab2;
var newParams = Object(lodash["cloneDeep"])(problemset === null || problemset === void 0 ? void 0 : (_problemset$actionTab2 = problemset.actionTabs) === null || _problemset$actionTab2 === void 0 ? void 0 : _problemset$actionTab2.params);
setData(newParams);
setChoices(newParams.choices);
}
}, [problemset === null || problemset === void 0 ? void 0 : (_problemset$actionTab3 = problemset.actionTabs) === null || _problemset$actionTab3 === void 0 ? void 0 : _problemset$actionTab3.key]);
var handleOk = /*#__PURE__*/function () {
var _ref2 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee() {
var _problemset$actionTab4, newParams;
return regenerator_default.a.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
if (choices.some(function (e) {
return e === null || e === void 0 ? void 0 : e.checked;
})) {
_context.next = 3;
break;
}
message["b" /* default */].warn('请您作答后再提交');
return _context.abrupt("return");
case 3:
if (calculate) {
newParams = Object(lodash["cloneDeep"])(problemset === null || problemset === void 0 ? void 0 : (_problemset$actionTab4 = problemset.actionTabs) === null || _problemset$actionTab4 === void 0 ? void 0 : _problemset$actionTab4.params);
setChoices(newParams.choices);
}
setCalculate(!calculate);
case 5:
case "end":
return _context.stop();
}
}
}, _callee);
}));
return function handleOk() {
return _ref2.apply(this, arguments);
};
}();
var handleChange = function handleChange(e, i) {
console.log(e.target.checked);
var newChoices = choices.map(function (item, index) {
return Object(objectSpread2["a" /* default */])(Object(objectSpread2["a" /* default */])({}, item), {}, {
checked: index === i ? e.target.checked : false
});
});
setChoices(newChoices);
};
var handleCancel = function handleCancel() {
setData({});
setChoices([]);
setCalculate(false);
dispatch({
type: 'problemset/setActionTabs',
payload: {}
});
};
return /*#__PURE__*/external_window_React_default.a.createElement(modal["a" /* default */], {
centered: true,
destroyOnClose: true,
visible: problemset.actionTabs.key === 'SINGLE',
title: "\u8BD5\u9898\u4F53\u9A8C",
okText: calculate ? '重新答题' : '提交答案',
cancelText: "\u53D6\u6D88",
width: 708,
onOk: handleOk,
onCancel: handleCancel
}, /*#__PURE__*/external_window_React_default.a.createElement("div", null, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "c-light-primary mb5 font16"
}, "\u5355\u9009\u9898"), /*#__PURE__*/external_window_React_default.a.createElement(RenderHtml["a" /* default */], {
value: data === null || data === void 0 ? void 0 : data.name
}), choices === null || choices === void 0 ? void 0 : choices.map(function (item, i) {
var is_answer = item.is_answer,
checked = item.checked,
choice_text = item.choice_text;
var className = '';
if (calculate && is_answer) {
className = componentsmodules_default.a.green;
}
if (calculate && !is_answer && checked) {
className = componentsmodules_default.a.red;
}
return /*#__PURE__*/external_window_React_default.a.createElement("div", {
key: i,
style: {
pointerEvents: calculate ? 'none' : 'auto'
},
className: "".concat(componentsmodules_default.a.row, " ").concat(className)
}, /*#__PURE__*/external_window_React_default.a.createElement(es_radio["a" /* default */], {
onChange: function onChange(e) {
return handleChange(e, i);
},
checked: checked
}), /*#__PURE__*/external_window_React_default.a.createElement("span", null, tagList[i], ".\xA0"), /*#__PURE__*/external_window_React_default.a.createElement(RenderHtml["a" /* default */], {
className: componentsmodules_default.a.html,
value: choice_text
}), calculate && is_answer && /*#__PURE__*/external_window_React_default.a.createElement("span", {
style: {
paddingTop: 4
},
className: "iconfont icon-duigou1 font16"
}), calculate && !is_answer && checked && /*#__PURE__*/external_window_React_default.a.createElement("span", {
style: {
fontWeight: 600,
paddingTop: 5
},
className: "iconfont icon-guanbi font16"
}));
}), calculate && /*#__PURE__*/external_window_React_default.a.createElement(external_window_React_["Fragment"], null, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: componentsmodules_default.a.line
}), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "c-grey-333 mb5"
}, /*#__PURE__*/external_window_React_default.a.createElement("b", null, "\u6B63\u786E\u7B54\u6848:\xA0"), tagList[choices.findIndex(function (e) {
return e.is_answer;
})]), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "c-grey-333 mb10"
}, /*#__PURE__*/external_window_React_default.a.createElement("b", null, "\u89E3\u6790:\xA0"), (data === null || data === void 0 ? void 0 : data.analysis) || '暂无解析'))));
};
/* harmony default export */ var components_Single = (Object(umiExports["a" /* connect */])(function (_ref3) {
var problemset = _ref3.problemset;
return {
problemset: problemset
};
})(Single_Single));
// CONCATENATED MODULE: ./src/pages/Problemset/components/Multiple.tsx
var Multiple_Multiple = function Multiple(_ref) {
var _problemset$actionTab3;
var problemset = _ref.problemset,
dispatch = _ref.dispatch;
var _useState = Object(external_window_React_["useState"])({}),
_useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
data = _useState2[0],
setData = _useState2[1];
var _useState3 = Object(external_window_React_["useState"])([]),
_useState4 = Object(slicedToArray["a" /* default */])(_useState3, 2),
choices = _useState4[0],
setChoices = _useState4[1];
var _useState5 = Object(external_window_React_["useState"])(false),
_useState6 = Object(slicedToArray["a" /* default */])(_useState5, 2),
calculate = _useState6[0],
setCalculate = _useState6[1];
var tagList = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'];
Object(external_window_React_["useEffect"])(function () {
var _problemset$actionTab;
if ((problemset === null || problemset === void 0 ? void 0 : (_problemset$actionTab = problemset.actionTabs) === null || _problemset$actionTab === void 0 ? void 0 : _problemset$actionTab.key) === 'MULTIPLE') {
var _problemset$actionTab2;
var newParams = Object(lodash["cloneDeep"])(problemset === null || problemset === void 0 ? void 0 : (_problemset$actionTab2 = problemset.actionTabs) === null || _problemset$actionTab2 === void 0 ? void 0 : _problemset$actionTab2.params);
setData(newParams);
setChoices(newParams.choices);
}
}, [problemset === null || problemset === void 0 ? void 0 : (_problemset$actionTab3 = problemset.actionTabs) === null || _problemset$actionTab3 === void 0 ? void 0 : _problemset$actionTab3.key]);
var handleOk = /*#__PURE__*/function () {
var _ref2 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee() {
var _problemset$actionTab4, newParams;
return regenerator_default.a.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
if (choices.some(function (e) {
return e === null || e === void 0 ? void 0 : e.checked;
})) {
_context.next = 3;
break;
}
message["b" /* default */].warn('请您作答后再提交');
return _context.abrupt("return");
case 3:
if (calculate) {
newParams = Object(lodash["cloneDeep"])(problemset === null || problemset === void 0 ? void 0 : (_problemset$actionTab4 = problemset.actionTabs) === null || _problemset$actionTab4 === void 0 ? void 0 : _problemset$actionTab4.params);
setChoices(newParams.choices);
}
setCalculate(!calculate);
case 5:
case "end":
return _context.stop();
}
}
}, _callee);
}));
return function handleOk() {
return _ref2.apply(this, arguments);
};
}();
var handleChange = function handleChange(e, i) {
console.log(e.target.checked);
var newChoices = choices.map(function (item, index) {
return Object(objectSpread2["a" /* default */])(Object(objectSpread2["a" /* default */])({}, item), {}, {
checked: index === i ? e.target.checked : item.checked
});
});
setChoices(newChoices);
};
var handleCancel = function handleCancel() {
setData({});
setChoices([]);
setCalculate(false);
dispatch({
type: 'problemset/setActionTabs',
payload: {}
});
};
var getAnswer = function getAnswer() {
var str = '';
choices.forEach(function (e, i) {
if (e.is_answer) {
str = str + tagList[i];
}
});
return str;
};
return /*#__PURE__*/external_window_React_default.a.createElement(modal["a" /* default */], {
centered: true,
destroyOnClose: true,
visible: problemset.actionTabs.key === 'MULTIPLE',
title: "\u8BD5\u9898\u4F53\u9A8C",
okText: calculate ? '重新答题' : '提交答案',
cancelText: "\u53D6\u6D88",
width: 708,
onOk: handleOk,
onCancel: handleCancel
}, /*#__PURE__*/external_window_React_default.a.createElement("div", null, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "c-light-primary mb5 font16"
}, "\u591A\u9009\u9898"), /*#__PURE__*/external_window_React_default.a.createElement(RenderHtml["a" /* default */], {
value: data === null || data === void 0 ? void 0 : data.name
}), choices === null || choices === void 0 ? void 0 : choices.map(function (item, i) {
var is_answer = item.is_answer,
checked = item.checked,
choice_text = item.choice_text;
var className = '';
if (calculate && is_answer) {
className = componentsmodules_default.a.green;
}
if (calculate && !is_answer && checked) {
className = componentsmodules_default.a.red;
}
return /*#__PURE__*/external_window_React_default.a.createElement("div", {
key: i,
style: {
pointerEvents: calculate ? 'none' : 'auto'
},
className: "".concat(componentsmodules_default.a.row, " ").concat(className)
}, /*#__PURE__*/external_window_React_default.a.createElement(es_checkbox["a" /* default */], {
style: {
padding: 3
},
onChange: function onChange(e) {
return handleChange(e, i);
},
checked: checked
}), /*#__PURE__*/external_window_React_default.a.createElement("span", null, tagList[i], ".\xA0"), /*#__PURE__*/external_window_React_default.a.createElement(RenderHtml["a" /* default */], {
className: componentsmodules_default.a.html,
value: choice_text
}), calculate && is_answer && /*#__PURE__*/external_window_React_default.a.createElement("span", {
style: {
paddingTop: 4
},
className: "iconfont icon-duigou1 font16"
}), calculate && !is_answer && checked && /*#__PURE__*/external_window_React_default.a.createElement("span", {
style: {
fontWeight: 600,
paddingTop: 5
},
className: "iconfont icon-guanbi font16"
}));
}), calculate && /*#__PURE__*/external_window_React_default.a.createElement(external_window_React_["Fragment"], null, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: componentsmodules_default.a.line
}), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "c-grey-333 mb5"
}, /*#__PURE__*/external_window_React_default.a.createElement("b", null, "\u6B63\u786E\u7B54\u6848:\xA0"), getAnswer()), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "c-grey-333 mb10"
}, /*#__PURE__*/external_window_React_default.a.createElement("b", null, "\u89E3\u6790:\xA0"), (data === null || data === void 0 ? void 0 : data.analysis) || '暂无解析'))));
};
/* harmony default export */ var components_Multiple = (Object(umiExports["a" /* connect */])(function (_ref3) {
var problemset = _ref3.problemset;
return {
problemset: problemset
};
})(Multiple_Multiple));
// CONCATENATED MODULE: ./src/pages/Problemset/components/Judgment.tsx
var Judgment_Judgment = function Judgment(_ref) {
var _problemset$actionTab3, _choices$find;
var problemset = _ref.problemset,
dispatch = _ref.dispatch;
var _useState = Object(external_window_React_["useState"])({}),
_useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
data = _useState2[0],
setData = _useState2[1];
var _useState3 = Object(external_window_React_["useState"])([]),
_useState4 = Object(slicedToArray["a" /* default */])(_useState3, 2),
choices = _useState4[0],
setChoices = _useState4[1];
var _useState5 = Object(external_window_React_["useState"])(false),
_useState6 = Object(slicedToArray["a" /* default */])(_useState5, 2),
calculate = _useState6[0],
setCalculate = _useState6[1];
var tagList = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'];
Object(external_window_React_["useEffect"])(function () {
var _problemset$actionTab;
if ((problemset === null || problemset === void 0 ? void 0 : (_problemset$actionTab = problemset.actionTabs) === null || _problemset$actionTab === void 0 ? void 0 : _problemset$actionTab.key) === 'JUDGMENT') {
var _problemset$actionTab2;
var newParams = Object(lodash["cloneDeep"])(problemset === null || problemset === void 0 ? void 0 : (_problemset$actionTab2 = problemset.actionTabs) === null || _problemset$actionTab2 === void 0 ? void 0 : _problemset$actionTab2.params);
setData(newParams);
setChoices(newParams.choices);
}
}, [problemset === null || problemset === void 0 ? void 0 : (_problemset$actionTab3 = problemset.actionTabs) === null || _problemset$actionTab3 === void 0 ? void 0 : _problemset$actionTab3.key]);
var handleOk = /*#__PURE__*/function () {
var _ref2 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee() {
var _problemset$actionTab4, newParams;
return regenerator_default.a.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
if (choices.some(function (e) {
return e === null || e === void 0 ? void 0 : e.checked;
})) {
_context.next = 3;
break;
}
message["b" /* default */].warn('请您作答后再提交');
return _context.abrupt("return");
case 3:
if (calculate) {
newParams = Object(lodash["cloneDeep"])(problemset === null || problemset === void 0 ? void 0 : (_problemset$actionTab4 = problemset.actionTabs) === null || _problemset$actionTab4 === void 0 ? void 0 : _problemset$actionTab4.params);
setChoices(newParams.choices);
}
setCalculate(!calculate);
case 5:
case "end":
return _context.stop();
}
}
}, _callee);
}));
return function handleOk() {
return _ref2.apply(this, arguments);
};
}();
var handleChange = function handleChange(e, i) {
console.log(e.target.checked);
var newChoices = choices.map(function (item, index) {
return Object(objectSpread2["a" /* default */])(Object(objectSpread2["a" /* default */])({}, item), {}, {
checked: index === i ? e.target.checked : false
});
});
setChoices(newChoices);
};
var handleCancel = function handleCancel() {
setData({});
setChoices([]);
setCalculate(false);
dispatch({
type: 'problemset/setActionTabs',
payload: {}
});
};
return /*#__PURE__*/external_window_React_default.a.createElement(modal["a" /* default */], {
centered: true,
destroyOnClose: true,
visible: problemset.actionTabs.key === 'JUDGMENT',
title: "\u8BD5\u9898\u4F53\u9A8C",
okText: calculate ? '重新答题' : '提交答案',
cancelText: "\u53D6\u6D88",
width: 708,
onOk: handleOk,
onCancel: handleCancel
}, /*#__PURE__*/external_window_React_default.a.createElement("div", null, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "c-light-primary mb5 font16"
}, "\u5224\u65AD\u9898"), /*#__PURE__*/external_window_React_default.a.createElement(RenderHtml["a" /* default */], {
value: data === null || data === void 0 ? void 0 : data.name
}), choices === null || choices === void 0 ? void 0 : choices.map(function (item, i) {
var is_answer = item.is_answer,
checked = item.checked,
choice_text = item.choice_text;
var className = '';
if (calculate && is_answer) {
className = componentsmodules_default.a.green;
}
if (calculate && !is_answer && checked) {
className = componentsmodules_default.a.red;
}
return /*#__PURE__*/external_window_React_default.a.createElement("div", {
key: i,
style: {
pointerEvents: calculate ? 'none' : 'auto'
},
className: "".concat(componentsmodules_default.a.row, " ").concat(className)
}, /*#__PURE__*/external_window_React_default.a.createElement(es_radio["a" /* default */], {
onChange: function onChange(e) {
return handleChange(e, i);
},
checked: checked
}), /*#__PURE__*/external_window_React_default.a.createElement(RenderHtml["a" /* default */], {
className: componentsmodules_default.a.html,
value: choice_text
}), calculate && is_answer && /*#__PURE__*/external_window_React_default.a.createElement("span", {
style: {
paddingTop: 4
},
className: "iconfont icon-duigou1 font16"
}), calculate && !is_answer && checked && /*#__PURE__*/external_window_React_default.a.createElement("span", {
style: {
fontWeight: 600,
paddingTop: 5
},
className: "iconfont icon-guanbi font16"
}));
}), calculate && /*#__PURE__*/external_window_React_default.a.createElement(external_window_React_["Fragment"], null, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: componentsmodules_default.a.line
}), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "c-grey-333 mb5"
}, /*#__PURE__*/external_window_React_default.a.createElement("b", null, "\u6B63\u786E\u7B54\u6848:\xA0"), (_choices$find = choices.find(function (e) {
return e.is_answer;
})) === null || _choices$find === void 0 ? void 0 : _choices$find.choice_text), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "c-grey-333 mb10"
}, /*#__PURE__*/external_window_React_default.a.createElement("b", null, "\u89E3\u6790:\xA0"), (data === null || data === void 0 ? void 0 : data.analysis) || '暂无解析'))));
};
/* harmony default export */ var components_Judgment = (Object(umiExports["a" /* connect */])(function (_ref3) {
var problemset = _ref3.problemset;
return {
problemset: problemset
};
})(Judgment_Judgment));
// CONCATENATED MODULE: ./src/pages/Problemset/components/Completion.tsx
var Completion_Completion = function Completion(_ref) {
var _problemset$actionTab3, _data$standard_answer;
var problemset = _ref.problemset,
dispatch = _ref.dispatch;
var _useState = Object(external_window_React_["useState"])({}),
_useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
data = _useState2[0],
setData = _useState2[1];
var _useState3 = Object(external_window_React_["useState"])([]),
_useState4 = Object(slicedToArray["a" /* default */])(_useState3, 2),
choices = _useState4[0],
setChoices = _useState4[1];
var _useState5 = Object(external_window_React_["useState"])(false),
_useState6 = Object(slicedToArray["a" /* default */])(_useState5, 2),
calculate = _useState6[0],
setCalculate = _useState6[1];
var tagList = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'];
Object(external_window_React_["useEffect"])(function () {
var _problemset$actionTab;
if ((problemset === null || problemset === void 0 ? void 0 : (_problemset$actionTab = problemset.actionTabs) === null || _problemset$actionTab === void 0 ? void 0 : _problemset$actionTab.key) === 'COMPLETION') {
var _problemset$actionTab2, _newParams$standard_a;
var newParams = Object(lodash["cloneDeep"])(problemset === null || problemset === void 0 ? void 0 : (_problemset$actionTab2 = problemset.actionTabs) === null || _problemset$actionTab2 === void 0 ? void 0 : _problemset$actionTab2.params);
setData(newParams);
setChoices(newParams === null || newParams === void 0 ? void 0 : (_newParams$standard_a = newParams.standard_answer) === null || _newParams$standard_a === void 0 ? void 0 : _newParams$standard_a.map(function (e) {
return {
value: '',
answer: (e === null || e === void 0 ? void 0 : e.answer_text) || []
};
}));
}
}, [problemset === null || problemset === void 0 ? void 0 : (_problemset$actionTab3 = problemset.actionTabs) === null || _problemset$actionTab3 === void 0 ? void 0 : _problemset$actionTab3.key]);
var handleOk = /*#__PURE__*/function () {
var _ref2 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee() {
var _problemset$actionTab4, _newParams$standard_a2, newParams;
return regenerator_default.a.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
if (!choices.some(function (e) {
return (e === null || e === void 0 ? void 0 : e.value) === '';
})) {
_context.next = 3;
break;
}
message["b" /* default */].warn('请您作答后再提交');
return _context.abrupt("return");
case 3:
if (calculate) {
newParams = Object(lodash["cloneDeep"])(problemset === null || problemset === void 0 ? void 0 : (_problemset$actionTab4 = problemset.actionTabs) === null || _problemset$actionTab4 === void 0 ? void 0 : _problemset$actionTab4.params);
setChoices(newParams === null || newParams === void 0 ? void 0 : (_newParams$standard_a2 = newParams.standard_answer) === null || _newParams$standard_a2 === void 0 ? void 0 : _newParams$standard_a2.map(function (e) {
return {
value: '',
answer: (e === null || e === void 0 ? void 0 : e.answer_text) || []
};
}));
}
setCalculate(!calculate);
case 5:
case "end":
return _context.stop();
}
}
}, _callee);
}));
return function handleOk() {
return _ref2.apply(this, arguments);
};
}();
var handleChange = function handleChange(e, i) {
var newChoices = choices.map(function (item, index) {
return Object(objectSpread2["a" /* default */])(Object(objectSpread2["a" /* default */])({}, item), {}, {
value: index === i ? e.target.value : item.value
});
});
setChoices(newChoices);
};
var handleCancel = function handleCancel() {
setData({});
setChoices([]);
setCalculate(false);
dispatch({
type: 'problemset/setActionTabs',
payload: {}
});
};
return /*#__PURE__*/external_window_React_default.a.createElement(modal["a" /* default */], {
centered: true,
destroyOnClose: true,
visible: problemset.actionTabs.key === 'COMPLETION',
title: "\u8BD5\u9898\u4F53\u9A8C",
okText: calculate ? '重新答题' : '提交答案',
cancelText: "\u53D6\u6D88",
width: 708,
onOk: handleOk,
onCancel: handleCancel
}, /*#__PURE__*/external_window_React_default.a.createElement("div", null, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "c-light-primary mb5 font16"
}, "\u586B\u7A7A\u9898"), /*#__PURE__*/external_window_React_default.a.createElement(RenderHtml["a" /* default */], {
value: data === null || data === void 0 ? void 0 : data.name
}), choices === null || choices === void 0 ? void 0 : choices.map(function (item, i) {
var value = item.value,
answer = item.answer;
var className = '';
if (calculate && answer !== null && answer !== void 0 && answer.includes(value)) {
className = componentsmodules_default.a.green;
}
if (calculate && !(answer !== null && answer !== void 0 && answer.includes(value))) {
className = componentsmodules_default.a.red;
}
return /*#__PURE__*/external_window_React_default.a.createElement("div", {
key: i,
style: {
pointerEvents: calculate ? 'none' : 'auto',
marginTop: 10
},
className: "".concat(componentsmodules_default.a.row, " ").concat(className)
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
style: {
minWidth: 80
}
}, "\u586B\u7A7A", i + 1, "\u7B54\u6848:"), /*#__PURE__*/external_window_React_default.a.createElement(input["a" /* default */].TextArea, {
className: componentsmodules_default.a.textArea,
style: {
width: 610,
marginRight: 10
},
onChange: function onChange(e) {
return handleChange(e, i);
},
value: value
}), calculate && (answer === null || answer === void 0 ? void 0 : answer.includes(value)) && /*#__PURE__*/external_window_React_default.a.createElement("span", {
style: {
paddingTop: 4
},
className: "iconfont icon-duigou1 font16"
}), calculate && !(answer !== null && answer !== void 0 && answer.includes(value)) && /*#__PURE__*/external_window_React_default.a.createElement("span", {
style: {
fontWeight: 600,
paddingTop: 5
},
className: "iconfont icon-guanbi font16"
}));
}), calculate && /*#__PURE__*/external_window_React_default.a.createElement(external_window_React_["Fragment"], null, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: componentsmodules_default.a.line
}), data === null || data === void 0 ? void 0 : (_data$standard_answer = data.standard_answer) === null || _data$standard_answer === void 0 ? void 0 : _data$standard_answer.map(function (item, i) {
var _item$answer_text;
return /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "c-grey-333 mb5"
}, /*#__PURE__*/external_window_React_default.a.createElement("b", null, "\u586B\u7A7A", i + 1, "\u7B54\u6848:\xA0"), (item === null || item === void 0 ? void 0 : (_item$answer_text = item.answer_text) === null || _item$answer_text === void 0 ? void 0 : _item$answer_text.join('、')) || '');
}), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "c-grey-333 mb10"
}, /*#__PURE__*/external_window_React_default.a.createElement("b", null, "\u89E3\u6790:\xA0"), (data === null || data === void 0 ? void 0 : data.analysis) || '暂无解析'))));
};
/* harmony default export */ var components_Completion = (Object(umiExports["a" /* connect */])(function (_ref3) {
var problemset = _ref3.problemset;
return {
problemset: problemset
};
})(Completion_Completion));
// EXTERNAL MODULE: ./node_modules/antd/es/popover/style/index.js
var popover_style = __webpack_require__("Q9mQ");
// EXTERNAL MODULE: ./node_modules/antd/es/popover/index.js
var popover = __webpack_require__("diRs");
// EXTERNAL MODULE: ./src/pages/Problemset/components/Crumbs/index.less?modules
var Crumbsmodules = __webpack_require__("+z73");
var Crumbsmodules_default = /*#__PURE__*/__webpack_require__.n(Crumbsmodules);
// CONCATENATED MODULE: ./src/pages/Problemset/components/Crumbs/index.tsx
var Crumbs_Crumbs = function Crumbs(_ref) {
var _ref$data = _ref.data,
data = _ref$data === void 0 ? [] : _ref$data,
_onClick = _ref.onClick;
// const [value, setValue] = useState('');
var renderFew = function renderFew() {
return data.map(function (e, i) {
return /*#__PURE__*/external_window_React_default.a.createElement("div", {
key: i,
className: Crumbsmodules_default.a.few
}, /*#__PURE__*/external_window_React_default.a.createElement("b", {
title: e.name,
style: {
color: i === 0 ? '#333333' : '#999999'
},
onClick: function onClick() {
return _onClick(e.id);
}
}, e.name), i < data.length - 1 && /*#__PURE__*/external_window_React_default.a.createElement("span", null, "/"));
});
};
var renderMuch = function renderMuch() {
var bool = true;
var items = data.slice(2, -2);
var content = /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Crumbsmodules_default.a.pWrap
}, items.map(function (e) {
return /*#__PURE__*/external_window_React_default.a.createElement("span", {
title: e.name,
onClick: function onClick() {
return _onClick(e.id);
},
key: e.id
}, e.name);
}));
return data.map(function (e, i) {
var dom = null;
if (i > 1 && i < data.length - 2) {
if (bool) {
dom = /*#__PURE__*/external_window_React_default.a.createElement(popover["a" /* default */], {
key: i,
placement: "bottom",
content: content
}, /*#__PURE__*/external_window_React_default.a.createElement("span", {
style: {
color: "#999",
cursor: 'pointer'
}
}, ".../"));
bool = false;
}
} else {
dom = /*#__PURE__*/external_window_React_default.a.createElement("div", {
key: i,
className: Crumbsmodules_default.a.few
}, /*#__PURE__*/external_window_React_default.a.createElement("b", {
title: e.name,
style: {
color: i === 0 ? '#333333' : '#999999'
},
onClick: function onClick() {
return _onClick(e.id);
}
}, e.name), i < data.length - 1 && /*#__PURE__*/external_window_React_default.a.createElement("span", null, "/"));
}
return dom;
});
};
return /*#__PURE__*/external_window_React_default.a.createElement("aside", {
style: {
overflowX: 'auto'
}
}, (data === null || data === void 0 ? void 0 : data.length) > 5 ? renderMuch() : renderFew());
};
/* harmony default export */ var components_Crumbs = (Crumbs_Crumbs);
// EXTERNAL MODULE: ./src/pages/Problemset/index.less?modules
var Problemsetmodules = __webpack_require__("tK3L");
var Problemsetmodules_default = /*#__PURE__*/__webpack_require__.n(Problemsetmodules);
// EXTERNAL MODULE: ./node_modules/antd/es/drawer/style/index.js
var drawer_style = __webpack_require__("bbsP");
// EXTERNAL MODULE: ./node_modules/antd/es/drawer/index.js
var drawer = __webpack_require__("/wGt");
// EXTERNAL MODULE: ./src/pages/Problemset/components/BasketDrawer/index.less?modules
var BasketDrawermodules = __webpack_require__("IPdS");
var BasketDrawermodules_default = /*#__PURE__*/__webpack_require__.n(BasketDrawermodules);
// CONCATENATED MODULE: ./src/utils/outClick.ts
var targetMapping = [];
var onDocumentClick = function onDocumentClick(e) {
targetMapping.forEach(function (obj) {
// If you click on the element in the current pop-up box, you don't need to close it.
if (e.target === obj.element || OutClick.isParent(e.target, obj.element)) {
return;
}
obj.callbacks.forEach(function (callback) {
return callback();
});
});
};
if (window.document.body) {
window.document.body.addEventListener('click', onDocumentClick);
} else {
window.addEventListener('DOMContentLoaded', function () {
window.document.body.addEventListener('click', onDocumentClick);
});
}
var OutClick = {
// Determine if the click is in the element of the pop-up box
isParent: function isParent(obj, parentObj) {
var origin = obj;
while (origin && origin.tagName && origin.tagName.toLowerCase() !== 'body') {
if (origin === parentObj) {
return true;
}
origin = origin.parentNode;
}
return false;
},
init: function init(element, callback) {
var target = targetMapping.filter(function (item) {
return item.element === element;
});
if (target.length > 0) {
target[0].callbacks.push(callback);
} else {
targetMapping.push({
element: element,
callbacks: [callback]
});
}
return {
// Clearing events
clear: function clear() {
targetMapping = targetMapping.filter(function (item) {
return item.element !== element;
});
}
};
}
};
/* harmony default export */ var outClick = (OutClick);
// CONCATENATED MODULE: ./src/pages/Problemset/components/BasketDrawer/index.tsx
var problemsetMapping = [{
stateName: 'single_questions_count',
type: 'SINGLE',
typeName: '单选题'
}, {
stateName: 'multiple_questions_count',
type: 'MULTIPLE',
typeName: '多选题'
}, {
stateName: 'judgement_questions_count',
type: 'JUDGMENT',
typeName: '判断题'
}, {
stateName: 'completion_questions_count',
type: 'COMPLETION',
typeName: '填空题'
}, {
stateName: 'subjective_questions_count',
type: 'SUBJECTIVE',
typeName: '简答题'
}, {
stateName: 'program_questions_count',
type: 'PROGRAM',
typeName: '编程题'
}, {
stateName: 'practical_questions_count',
type: 'PRACTICAL',
typeName: '实训题'
}, {
stateName: 'combination_questions_count',
type: 'COMBINATION',
typeName: '组合题'
}];
var BasketDrawer_BasketDrawer = function BasketDrawer(_ref) {
var visible = _ref.visible,
basketData = _ref.basketData,
basketTotal = _ref.basketTotal,
_ref$onClose = _ref.onClose,
onClose = _ref$onClose === void 0 ? function () {} : _ref$onClose,
_ref$onDelete = _ref.onDelete,
onDelete = _ref$onDelete === void 0 ? function () {} : _ref$onDelete;
var outClickRef = Object(external_window_React_["useRef"])();
var contentRef = Object(external_window_React_["useRef"])();
Object(external_window_React_["useEffect"])(function () {
if (!contentRef.current) {
return;
}
if (basketTotal >= 0 && !outClickRef.current) {
outClickRef.current = outClick.init(contentRef.current, function () {
onClose();
});
}
return function () {
outClickRef.current && outClickRef.current.clear();
};
}, [contentRef.current]);
return /*#__PURE__*/external_window_React_default.a.createElement(drawer["a" /* default */], {
className: BasketDrawermodules_default.a.drawerWrap,
placement: "right",
closable: false,
mask: false,
visible: visible,
forceRender: true,
onClose: onClose
}, basketTotal > 0 ? /*#__PURE__*/external_window_React_default.a.createElement("div", {
style: {
height: '100%'
},
ref: contentRef
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: BasketDrawermodules_default.a.title
}, "\u8BD5\u9898\u7BEE"), problemsetMapping.map(function (item) {
return basketData[item.stateName] > 0 && /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: BasketDrawermodules_default.a.problemset,
key: item.type
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: BasketDrawermodules_default.a.content
}, item.typeName, "(", basketData[item.stateName], ")"), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: BasketDrawermodules_default.a.delete,
onClick: function onClick() {
return onDelete(item.type);
}
}, /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: "iconfont icon-shanchu1 ".concat(BasketDrawermodules_default.a.deleteIcon)
})));
}), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: BasketDrawermodules_default.a.previewWrap
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: BasketDrawermodules_default.a.preview,
onClick: function onClick() {
return umiExports["d" /* history */].push("/problemset/preview");
}
}, "\u8BD5\u5377\u9884\u89C8"))) : /*#__PURE__*/external_window_React_default.a.createElement("div", {
ref: contentRef
}, /*#__PURE__*/external_window_React_default.a.createElement(NoData["a" /* default */], {
customText: "\u8BF7\u9009\u62E9\u8BD5\u9898\u8FDB\u884C\u7EC4\u5377"
})));
};
// CONCATENATED MODULE: ./src/pages/Problemset/components/BasketDeleteModal.tsx
var typeMapping = {
"SINGLE": "单选题",
"MULTIPLE": "多选题",
"JUDGMENT": "判断题",
"COMPLETION": "填空题",
"SUBJECTIVE": "简答题",
"PROGRAM": "编程题",
"PRACTICAL": "实训题",
"COMBINATION": "组合题"
};
var BasketDeleteModal_BasketDeleteModal = function BasketDeleteModal(_ref) {
var _problemset$actionTab, _problemset$actionTab2;
var problemset = _ref.problemset,
globalSetting = _ref.globalSetting,
loading = _ref.loading,
dispatch = _ref.dispatch,
_ref$onReloadData = _ref.onReloadData,
onReloadData = _ref$onReloadData === void 0 ? function () {} : _ref$onReloadData,
_ref$onReloadBasketDa = _ref.onReloadBasketData,
onReloadBasketData = _ref$onReloadBasketDa === void 0 ? function () {} : _ref$onReloadBasketDa,
props = Object(objectWithoutProperties["a" /* default */])(_ref, ["problemset", "globalSetting", "loading", "dispatch", "onReloadData", "onReloadBasketData"]);
var handleOk = /*#__PURE__*/function () {
var _ref2 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee() {
var res;
return regenerator_default.a.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return dispatch({
type: 'problemset/basketDelete',
payload: problemset.actionTabs.params
});
case 2:
res = _context.sent;
dispatch({
type: 'problemset/setActionTabs',
payload: {}
});
if (res.status === 0) {
onReloadData();
onReloadBasketData();
}
case 5:
case "end":
return _context.stop();
}
}
}, _callee);
}));
return function handleOk() {
return _ref2.apply(this, arguments);
};
}();
return /*#__PURE__*/external_window_React_default.a.createElement(modal["a" /* default */], {
centered: true,
keyboard: false,
closable: false,
destroyOnClose: true,
visible: problemset.actionTabs.key === 'Problemset-BasketDelete',
title: "\u63D0\u793A",
okText: "\u786E\u5B9A",
cancelText: "\u53D6\u6D88",
confirmLoading: loading['problemset/handleDelete'],
width: "442px",
onOk: handleOk,
onCancel: function onCancel() {
dispatch({
type: 'problemset/setActionTabs',
payload: {}
});
}
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: componentsmodules_default.a.modalContent
}, "\u662F\u5426\u5220\u9664\u8BD5\u9898\u7BEE\u4E2D", typeMapping[(_problemset$actionTab = problemset.actionTabs) === null || _problemset$actionTab === void 0 ? void 0 : (_problemset$actionTab2 = _problemset$actionTab.params) === null || _problemset$actionTab2 === void 0 ? void 0 : _problemset$actionTab2.type]));
};
/* harmony default export */ var components_BasketDeleteModal = (Object(umiExports["a" /* connect */])(function (_ref3) {
var problemset = _ref3.problemset,
loading = _ref3.loading,
globalSetting = _ref3.globalSetting;
return {
problemset: problemset,
globalSetting: globalSetting,
loading: loading.effects
};
})(BasketDeleteModal_BasketDeleteModal));
// EXTERNAL MODULE: ./src/pages/Problemset/components/BasketSideBar/index.less?modules
var BasketSideBarmodules = __webpack_require__("A60/");
var BasketSideBarmodules_default = /*#__PURE__*/__webpack_require__.n(BasketSideBarmodules);
// CONCATENATED MODULE: ./src/pages/Problemset/components/BasketSideBar/index.tsx
var BasketSideBar_BasketSideBar = function BasketSideBar(_ref) {
var count = _ref.count,
visibleBasket = _ref.visibleBasket,
_ref$onToggleVisible = _ref.onToggleVisible,
onToggleVisible = _ref$onToggleVisible === void 0 ? function () {} : _ref$onToggleVisible;
return /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "".concat(visibleBasket ? BasketSideBarmodules_default.a.right180 : BasketSideBarmodules_default.a.right20, " ").concat(BasketSideBarmodules_default.a.wrap)
}, /*#__PURE__*/external_window_React_default.a.createElement(tooltip["a" /* default */], {
title: "\u8BD5\u9898\u7BEE",
placement: "left"
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: BasketSideBarmodules_default.a.basket,
onClick: onToggleVisible
}, count > 0 && /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: BasketSideBarmodules_default.a.count
}, count), /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: BasketSideBarmodules_default.a.iconWrap
}, /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: "".concat(BasketSideBarmodules_default.a.icon, " iconfont icon-shitilan")
})), /*#__PURE__*/external_window_React_default.a.createElement("p", {
className: BasketSideBarmodules_default.a.name
}, "\u8BD5\u9898\u7BEE"))));
};
// EXTERNAL MODULE: ./src/pages/Problemset/components/Topic/index.less?modules
var Topicmodules = __webpack_require__("+vTd");
var Topicmodules_default = /*#__PURE__*/__webpack_require__.n(Topicmodules);
// EXTERNAL MODULE: ./src/utils/authority.ts
var authority = __webpack_require__("xKgJ");
// CONCATENATED MODULE: ./src/pages/Problemset/components/Topic/index.tsx
var tagDotData = ['A.', 'B.', 'C.', 'D.', 'E.', 'F.', 'G.', 'H.', 'I.', 'J.', 'K.', 'L.', 'M.', 'N.', 'O.', 'P.', 'Q.', 'R.', 'S.', 'T.', 'U.', 'V.', 'W.', 'X.', 'Y.', 'Z.'];
var tagData = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'];
var Topic_List = function List(_ref) {
var _data$program_attr2;
var isProblemset = _ref.isProblemset,
data = _ref.data,
user = _ref.user,
selectIds = _ref.selectIds,
activeTabsKey = _ref.activeTabsKey,
_ref$onPublicReview = _ref.onPublicReview,
onPublicReview = _ref$onPublicReview === void 0 ? function () {} : _ref$onPublicReview,
_ref$onStartExperienc = _ref.onStartExperience,
onStartExperience = _ref$onStartExperienc === void 0 ? function () {} : _ref$onStartExperienc,
_ref$onSelectCheckBox = _ref.onSelectCheckBox,
onSelectCheckBox = _ref$onSelectCheckBox === void 0 ? function () {} : _ref$onSelectCheckBox,
_ref$onSetPrivate = _ref.onSetPrivate,
onSetPrivate = _ref$onSetPrivate === void 0 ? function () {} : _ref$onSetPrivate,
_ref$onCorrection = _ref.onCorrection,
onCorrection = _ref$onCorrection === void 0 ? function () {} : _ref$onCorrection,
_ref$onCollect = _ref.onCollect,
onCollect = _ref$onCollect === void 0 ? function () {} : _ref$onCollect,
_ref$onSetPublic = _ref.onSetPublic,
onSetPublic = _ref$onSetPublic === void 0 ? function () {} : _ref$onSetPublic,
_ref$onDelete = _ref.onDelete,
onDelete = _ref$onDelete === void 0 ? function () {} : _ref$onDelete,
_ref$onCancel = _ref.onCancel,
onCancel = _ref$onCancel === void 0 ? function () {} : _ref$onCancel,
_ref$onSelect = _ref.onSelect,
onSelect = _ref$onSelect === void 0 ? function () {} : _ref$onSelect,
_ref$onMoveTo = _ref.onMoveTo,
onMoveTo = _ref$onMoveTo === void 0 ? function () {} : _ref$onMoveTo,
_ref$onSetShare = _ref.onSetShare,
onSetShare = _ref$onSetShare === void 0 ? function () {} : _ref$onSetShare,
_ref$onCancelShare = _ref.onCancelShare,
onCancelShare = _ref$onCancelShare === void 0 ? function () {} : _ref$onCancelShare,
_ref$onPublish = _ref.onPublish,
onPublish = _ref$onPublish === void 0 ? function () {} : _ref$onPublish,
_ref$onCancelPublish = _ref.onCancelPublish,
onCancelPublish = _ref$onCancelPublish === void 0 ? function () {} : _ref$onCancelPublish;
var _useState = Object(external_window_React_["useState"])(false),
_useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
visible = _useState2[0],
setVisible = _useState2[1];
var renderContent = function renderContent() {
if (data.item_type === "JUDGMENT") {
return /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Topicmodules_default.a.judgmentContent
}, data.choices.map(function (item, key) {
return /*#__PURE__*/external_window_React_default.a.createElement(es_radio["a" /* default */], {
key: key,
disabled: true
}, item.choice_text);
}));
}
if (data.item_type === "PROGRAM") {
var _data$program_attr;
return /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Topicmodules_default.a.programContent
}, /*#__PURE__*/external_window_React_default.a.createElement(RenderHtml["a" /* default */], {
value: (_data$program_attr = data.program_attr) === null || _data$program_attr === void 0 ? void 0 : _data$program_attr.description
}));
}
if (data.item_type === "COMBINATION") {
var _data$sub_item_banks;
return /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Topicmodules_default.a.combinationContent
}, data === null || data === void 0 ? void 0 : (_data$sub_item_banks = data.sub_item_banks) === null || _data$sub_item_banks === void 0 ? void 0 : _data$sub_item_banks.map(function (e, i) {
var _e$choices;
var str = "(\u9898\u76EE".concat(i + 1, "-\u5355\u9009\u9898) ");
return /*#__PURE__*/external_window_React_default.a.createElement(external_window_React_["Fragment"], null, /*#__PURE__*/external_window_React_default.a.createElement("div", {
style: {
marginTop: 10,
marginBottom: 10
}
}, /*#__PURE__*/external_window_React_default.a.createElement(RenderHtml["a" /* default */], {
value: str + e.name
})), e.choices.map(function (item, key) {
return /*#__PURE__*/external_window_React_default.a.createElement("div", {
key: key,
className: Topicmodules_default.a.otherContentItem
}, /*#__PURE__*/external_window_React_default.a.createElement("p", null, tagDotData[key]), /*#__PURE__*/external_window_React_default.a.createElement(RenderHtml["a" /* default */], {
className: Topicmodules_default.a.otehrContentHtml,
value: item.choice_text
}));
}), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Topicmodules_default.a.con
}, /*#__PURE__*/external_window_React_default.a.createElement("b", {
className: "c-grey-333 font14"
}, " \u7B54\u6848\uFF1A", tagData === null || tagData === void 0 ? void 0 : tagData[e === null || e === void 0 ? void 0 : (_e$choices = e.choices) === null || _e$choices === void 0 ? void 0 : _e$choices.findIndex(function (k) {
return k === null || k === void 0 ? void 0 : k.is_answer;
})], " "), /*#__PURE__*/external_window_React_default.a.createElement("div", null, /*#__PURE__*/external_window_React_default.a.createElement("span", null, "\u89E3\u6790\uFF1A"), /*#__PURE__*/external_window_React_default.a.createElement(RenderHtml["a" /* default */], {
className: Topicmodules_default.a.parseAnswerHtml,
value: e.analysis || '暂无解析'
}))));
}));
}
return /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Topicmodules_default.a.otherContent
}, data.choices.map(function (item, key) {
return /*#__PURE__*/external_window_React_default.a.createElement("div", {
key: key,
className: Topicmodules_default.a.otherContentItem
}, /*#__PURE__*/external_window_React_default.a.createElement("p", null, tagDotData[key]), /*#__PURE__*/external_window_React_default.a.createElement(RenderHtml["a" /* default */], {
className: Topicmodules_default.a.otehrContentHtml,
value: item.choice_text
}));
}));
};
var renderCompletionAnswer = function renderCompletionAnswer() {
var _data$standard_answer;
return /*#__PURE__*/external_window_React_default.a.createElement("div", null, (_data$standard_answer = data.standard_answer) === null || _data$standard_answer === void 0 ? void 0 : _data$standard_answer.map(function (item, key) {
return /*#__PURE__*/external_window_React_default.a.createElement(RenderHtml["a" /* default */], {
key: key,
className: Topicmodules_default.a.answerHtml,
value: "\u7B54\u6848\uFF08\u586B\u7A7A".concat(item.position, "\uFF09\uFF1A").concat(item.answer_text.join('、'))
});
}));
};
var renderAnswer = function renderAnswer() {
var _data$answer_texts, _data$choices, _data$choices$find;
var rightKeyMapping = {
"SUBJECTIVE": (_data$answer_texts = data.answer_texts) === null || _data$answer_texts === void 0 ? void 0 : _data$answer_texts[0],
"JUDGMENT": (_data$choices = data.choices) === null || _data$choices === void 0 ? void 0 : (_data$choices$find = _data$choices.find(function (item) {
return item.is_answer;
})) === null || _data$choices$find === void 0 ? void 0 : _data$choices$find.choice_text
};
var singleIndex = data.choices.map(function (item) {
return item.is_answer;
}).findIndex(function (item) {
return item;
});
var singleAnswer = singleIndex > -1 ? tagData[singleIndex] : '';
var multipleAnswer = '';
data.choices.map(function (item, index) {
if (item.is_answer) {
multipleAnswer += tagData[index];
}
});
var otherAnswer = rightKeyMapping[data.item_type];
var answerMapping = {
"SINGLE": /*#__PURE__*/external_window_React_default.a.createElement(RenderHtml["a" /* default */], {
className: Topicmodules_default.a.answerHtml,
value: "\u7B54\u6848\uFF1A".concat(singleAnswer || '无')
}),
"MULTIPLE": /*#__PURE__*/external_window_React_default.a.createElement(RenderHtml["a" /* default */], {
className: Topicmodules_default.a.answerHtml,
value: "\u7B54\u6848\uFF1A".concat(multipleAnswer || '无')
}),
"COMPLETION": renderCompletionAnswer()
};
var otherAnswerElement = /*#__PURE__*/external_window_React_default.a.createElement(RenderHtml["a" /* default */], {
className: Topicmodules_default.a.answerHtml,
value: "\u7B54\u6848\uFF1A".concat(otherAnswer || '无')
});
return answerMapping[data.item_type] || otherAnswerElement;
};
var handleSelectCheck = function handleSelectCheck(e) {
var ids = Object(toConsumableArray["a" /* default */])(selectIds);
if (e.target.checked) {
ids.push(data.id);
} else {
ids = ids.filter(function (k) {
return k !== data.id;
});
}
onSelectCheckBox(ids);
};
return /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Topicmodules_default.a.itemWrap
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Topicmodules_default.a.list
}, /*#__PURE__*/external_window_React_default.a.createElement(es_checkbox["a" /* default */], {
className: "mr10",
onChange: handleSelectCheck,
checked: selectIds.includes(data.id)
}), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Topicmodules_default.a.title
}, /*#__PURE__*/external_window_React_default.a.createElement(RenderHtml["a" /* default */], {
key: 1,
showLines: 1,
showTextOnly: true,
className: Topicmodules_default.a.topicTitleContent,
value: data.name
})), !visible && /*#__PURE__*/external_window_React_default.a.createElement("div", {
onClick: function onClick() {
return setVisible(!visible);
},
className: Topicmodules_default.a.tr
}, "\u5C55\u5F00", /*#__PURE__*/external_window_React_default.a.createElement("i", {
style: {
transform: 'rotate(90deg)'
},
className: "iconfont icon-lujing"
}))), /*#__PURE__*/external_window_React_default.a.createElement("aside", {
style: visible ? {
height: 'auto'
} : {
overflow: 'hidden',
height: 0
}
}, /*#__PURE__*/external_window_React_default.a.createElement(RenderHtml["a" /* default */], {
key: 2,
className: "".concat(Topicmodules_default.a.topicTitleContent, " mt20"),
value: data.name
}), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "".concat(Topicmodules_default.a.row, " mt15")
}, renderContent()), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Topicmodules_default.a.row
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Topicmodules_default.a.updateTimeRow
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Topicmodules_default.a.updateTimeWrap
}, data.item_type === "PROGRAM" && /*#__PURE__*/external_window_React_default.a.createElement("p", {
className: Topicmodules_default.a.programLanguage
}, "\u7F16\u7A0B\u8BED\u8A00\uFF1A", (_data$program_attr2 = data.program_attr) === null || _data$program_attr2 === void 0 ? void 0 : _data$program_attr2.language)))), data.item_type !== "PROGRAM" && data.item_type !== "COMBINATION" && /*#__PURE__*/external_window_React_default.a.createElement("div", null, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Topicmodules_default.a.parseAnswerBorder
}), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Topicmodules_default.a.answer
}, renderAnswer()), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Topicmodules_default.a.parse
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Topicmodules_default.a.parseText
}, "\u89E3\u6790\uFF1A"), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Topicmodules_default.a.parseAnswer
}, data.analysis ? /*#__PURE__*/external_window_React_default.a.createElement(RenderHtml["a" /* default */], {
className: Topicmodules_default.a.parseAnswerHtml,
value: data.analysis
}) : "暂无解析"))), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Topicmodules_default.a.bottom
}, data.item_type !== "SUBJECTIVE" && data.item_type !== "COMBINATION" && /*#__PURE__*/external_window_React_default.a.createElement("span", {
onClick: function onClick() {
return onStartExperience(data);
}
}, "\u4F53\u9A8C"), /*#__PURE__*/external_window_React_default.a.createElement("span", {
onClick: function onClick() {
return setVisible(false);
}
}, "\u6536\u8D77", /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: "iconfont icon-zhankaijiantou"
}), " "))));
};
var Topic_MenuMore = function MenuMore(_ref2) {
var _data$program_attr3, _data$program_attr4, _data$program_attr5, _data$author, _user$userInfo, _data$author2, _user$userInfo2, _data$author3, _user$userInfo3, _data$program_attr7, _data$author4, _user$userInfo4, _data$author5, _user$userInfo5, _data$author6, _user$userInfo6;
var isProblemset = _ref2.isProblemset,
data = _ref2.data,
user = _ref2.user,
activeTabsKey = _ref2.activeTabsKey,
_ref2$onPublicReview = _ref2.onPublicReview,
onPublicReview = _ref2$onPublicReview === void 0 ? function () {} : _ref2$onPublicReview,
_ref2$onStartExperien = _ref2.onStartExperience,
onStartExperience = _ref2$onStartExperien === void 0 ? function () {} : _ref2$onStartExperien,
_ref2$onSetPrivate = _ref2.onSetPrivate,
onSetPrivate = _ref2$onSetPrivate === void 0 ? function () {} : _ref2$onSetPrivate,
_ref2$onCorrection = _ref2.onCorrection,
onCorrection = _ref2$onCorrection === void 0 ? function () {} : _ref2$onCorrection,
_ref2$onCollect = _ref2.onCollect,
onCollect = _ref2$onCollect === void 0 ? function () {} : _ref2$onCollect,
_ref2$onSetPublic = _ref2.onSetPublic,
onSetPublic = _ref2$onSetPublic === void 0 ? function () {} : _ref2$onSetPublic,
_ref2$onDelete = _ref2.onDelete,
onDelete = _ref2$onDelete === void 0 ? function () {} : _ref2$onDelete,
_ref2$onCancel = _ref2.onCancel,
onCancel = _ref2$onCancel === void 0 ? function () {} : _ref2$onCancel,
_ref2$onSelect = _ref2.onSelect,
onSelect = _ref2$onSelect === void 0 ? function () {} : _ref2$onSelect,
_ref2$onMoveTo = _ref2.onMoveTo,
onMoveTo = _ref2$onMoveTo === void 0 ? function () {} : _ref2$onMoveTo,
_ref2$onSetShare = _ref2.onSetShare,
onSetShare = _ref2$onSetShare === void 0 ? function () {} : _ref2$onSetShare,
_ref2$onCancelShare = _ref2.onCancelShare,
onCancelShare = _ref2$onCancelShare === void 0 ? function () {} : _ref2$onCancelShare,
_ref2$onPublish = _ref2.onPublish,
onPublish = _ref2$onPublish === void 0 ? function () {} : _ref2$onPublish,
_ref2$onCancelPublish = _ref2.onCancelPublish,
onCancelPublish = _ref2$onCancelPublish === void 0 ? function () {} : _ref2$onCancelPublish;
var editUrl = data.item_type === "PROGRAM" ? "/problems/".concat((_data$program_attr3 = data.program_attr) === null || _data$program_attr3 === void 0 ? void 0 : _data$program_attr3.identifier, "/edit") : "/problemset/edit/".concat(data.id);
var showPrivateFlag = activeTabsKey === "0" && !data.public && !data.apply && (data.item_type === "PROGRAM" && ((_data$program_attr4 = data.program_attr) === null || _data$program_attr4 === void 0 ? void 0 : _data$program_attr4.status) !== 0 || data.item_type !== "PROGRAM");
var menu = /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */], {
forceSubMenuRender: true,
className: Topicmodules_default.a.menu
}, activeTabsKey === "0" && !data.public && /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */].Item, {
key: "-1"
}, /*#__PURE__*/external_window_React_default.a.createElement("a", {
className: Topicmodules_default.a.actionLink,
target: "_blank",
href: editUrl
}, "\u7F16\u8F91")), (activeTabsKey === "0" || activeTabsKey === "3") && data.item_type === "PROGRAM" && ((_data$program_attr5 = data.program_attr) === null || _data$program_attr5 === void 0 ? void 0 : _data$program_attr5.status) !== 0 && !data.public && ((_data$author = data.author) === null || _data$author === void 0 ? void 0 : _data$author.login) === ((_user$userInfo = user.userInfo) === null || _user$userInfo === void 0 ? void 0 : _user$userInfo.login) && /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */].Item, {
key: "0"
}, /*#__PURE__*/external_window_React_default.a.createElement("a", {
className: Topicmodules_default.a.actionLink,
onClick: function onClick() {
var _data$program_attr6;
return onCancelPublish(data === null || data === void 0 ? void 0 : (_data$program_attr6 = data.program_attr) === null || _data$program_attr6 === void 0 ? void 0 : _data$program_attr6.identifier);
}
}, "\u64A4\u9500\u53D1\u5E03")), activeTabsKey === "0" && /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */].Item, {
key: "1"
}, /*#__PURE__*/external_window_React_default.a.createElement("a", {
className: Topicmodules_default.a.actionLink,
onClick: function onClick() {
return onMoveTo(data.id);
}
}, "\u79FB\u52A8\u5230")), activeTabsKey === "0" && !(data !== null && data !== void 0 && data.is_share) && /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */].Item, {
key: "3"
}, /*#__PURE__*/external_window_React_default.a.createElement("a", {
className: Topicmodules_default.a.actionLink,
onClick: function onClick() {
return onSetShare(data.id);
}
}, "\u5171\u4EAB")), (activeTabsKey === "0" && (data === null || data === void 0 ? void 0 : data.is_share) || activeTabsKey === "3" && ((_data$author2 = data.author) === null || _data$author2 === void 0 ? void 0 : _data$author2.login) === ((_user$userInfo2 = user.userInfo) === null || _user$userInfo2 === void 0 ? void 0 : _user$userInfo2.login)) && /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */].Item, {
key: "3"
}, /*#__PURE__*/external_window_React_default.a.createElement("a", {
className: Topicmodules_default.a.actionLink,
onClick: function onClick() {
return onCancelShare(data.id);
}
}, "\u64A4\u9500\u5171\u4EAB")), showPrivateFlag && /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */].Item, {
key: "4"
}, /*#__PURE__*/external_window_React_default.a.createElement("a", {
className: Topicmodules_default.a.actionLink,
onClick: function onClick() {
return onSetPublic(data.id);
}
}, "\u516C\u5F00")), activeTabsKey === "0" && !data.public && data.apply && (data.item_type === "PROGRAM" && data.program_attr.status !== 0 || data.item_type !== "PROGRAM") && /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */].Item, {
key: "5"
}, /*#__PURE__*/external_window_React_default.a.createElement("a", {
className: Topicmodules_default.a.reviewFlag,
onClick: onPublicReview
}, "\u5BA1\u6838\u4E2D")), (activeTabsKey === "0" || activeTabsKey === "1") && data.public && ((_data$author3 = data.author) === null || _data$author3 === void 0 ? void 0 : _data$author3.login) === ((_user$userInfo3 = user.userInfo) === null || _user$userInfo3 === void 0 ? void 0 : _user$userInfo3.login) && /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */].Item, {
key: "6"
}, /*#__PURE__*/external_window_React_default.a.createElement("a", {
className: Topicmodules_default.a.actionLink,
onClick: function onClick() {
return onSetPrivate(data.id);
}
}, "\u64A4\u9500\u516C\u5F00")), activeTabsKey === "2" && /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */].Item, {
key: "7"
}, /*#__PURE__*/external_window_React_default.a.createElement("a", {
className: Topicmodules_default.a.actionLink,
onClick: function onClick() {
return onCollect(data.id, data.is_collected);
}
}, "\u53D6\u6D88\u6536\u85CF")), (activeTabsKey === "0" || activeTabsKey === "3") && data.item_type === "PROGRAM" && ((_data$program_attr7 = data.program_attr) === null || _data$program_attr7 === void 0 ? void 0 : _data$program_attr7.status) === 0 && !data.public && ((_data$author4 = data.author) === null || _data$author4 === void 0 ? void 0 : _data$author4.login) === ((_user$userInfo4 = user.userInfo) === null || _user$userInfo4 === void 0 ? void 0 : _user$userInfo4.login) && /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */].Item, {
key: "8"
}, /*#__PURE__*/external_window_React_default.a.createElement("a", {
className: Topicmodules_default.a.actionLink,
onClick: function onClick() {
var _data$program_attr8;
return onPublish(data === null || data === void 0 ? void 0 : (_data$program_attr8 = data.program_attr) === null || _data$program_attr8 === void 0 ? void 0 : _data$program_attr8.identifier);
}
}, "\u53D1\u5E03")), (activeTabsKey === "1" || activeTabsKey === "3") && !Object(authority["o" /* isCommonSuperAdminOrOperation */])() && !Object(authority["m" /* isCommonStudent */])() && ((_data$author5 = data.author) === null || _data$author5 === void 0 ? void 0 : _data$author5.login) !== ((_user$userInfo5 = user.userInfo) === null || _user$userInfo5 === void 0 ? void 0 : _user$userInfo5.login) && /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */].Item, {
key: "9"
}, /*#__PURE__*/external_window_React_default.a.createElement("a", {
className: Topicmodules_default.a.actionLink,
onClick: function onClick() {
return onCollect(data.id, data.is_collected);
}
}, data.is_collected ? '取消收藏' : '收藏')), activeTabsKey !== "0" && !Object(authority["o" /* isCommonSuperAdminOrOperation */])() && !Object(authority["m" /* isCommonStudent */])() && /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */].Item, {
key: "10"
}, /*#__PURE__*/external_window_React_default.a.createElement("a", {
className: Topicmodules_default.a.actionLink,
onClick: function onClick() {
return onCorrection(data.id);
}
}, "\u7EA0\u9519")), (activeTabsKey === "0" && !data.public || activeTabsKey === "1" && Object(authority["o" /* isCommonSuperAdminOrOperation */])() && ((_data$author6 = data.author) === null || _data$author6 === void 0 ? void 0 : _data$author6.login) !== ((_user$userInfo6 = user.userInfo) === null || _user$userInfo6 === void 0 ? void 0 : _user$userInfo6.login)) && /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */].Item, {
key: "11"
}, /*#__PURE__*/external_window_React_default.a.createElement("a", {
className: Topicmodules_default.a.actionLink,
onClick: function onClick() {
return onDelete(data.id);
}
}, "\u5220\u9664")));
var smMenu = /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */], {
forceSubMenuRender: true,
className: Topicmodules_default.a.menu
}, /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */].Item, {
key: "10"
}, /*#__PURE__*/external_window_React_default.a.createElement("a", {
className: Topicmodules_default.a.actionLink,
onClick: function onClick() {
return onCorrection(data.id);
}
}, "\u7EA0\u9519")));
var showMore = activeTabsKey !== "0" && !Object(authority["o" /* isCommonSuperAdminOrOperation */])() && !Object(authority["m" /* isCommonStudent */])();
return /*#__PURE__*/external_window_React_default.a.createElement(external_window_React_default.a.Fragment, null, isProblemset ? /*#__PURE__*/external_window_React_default.a.createElement(dropdown["a" /* default */], {
className: "ml40",
overlay: menu
}, /*#__PURE__*/external_window_React_default.a.createElement("span", {
style: {
cursor: "default"
},
onClick: function onClick(e) {
return e.preventDefault();
}
}, /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: "c-light-primary"
}, "\u66F4\u591A"))) : showMore ? /*#__PURE__*/external_window_React_default.a.createElement(dropdown["a" /* default */], {
className: "ml40",
overlay: smMenu
}, /*#__PURE__*/external_window_React_default.a.createElement("span", {
style: {
cursor: "default"
},
onClick: function onClick(e) {
return e.preventDefault();
}
}, /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: "c-light-primary"
}, "\u66F4\u591A"))) : /*#__PURE__*/external_window_React_default.a.createElement("span", null));
};
/* harmony default export */ var Topic = (Topic_List);
// EXTERNAL MODULE: ./src/pages/Problemset/components/Folder/index.less?modules
var Foldermodules = __webpack_require__("YaiT");
var Foldermodules_default = /*#__PURE__*/__webpack_require__.n(Foldermodules);
// EXTERNAL MODULE: ./src/utils/fetch.ts
var fetch = __webpack_require__("ErOA");
// CONCATENATED MODULE: ./src/pages/Problemset/components/Folder/index.tsx
var Folder_List = function List(_ref) {
var isProblemset = _ref.isProblemset,
data = _ref.data,
user = _ref.user,
_ref$onOpen = _ref.onOpen,
onOpen = _ref$onOpen === void 0 ? function () {} : _ref$onOpen,
_ref$onMove = _ref.onMove,
onMove = _ref$onMove === void 0 ? function () {} : _ref$onMove,
_ref$onRenameOk = _ref.onRenameOk,
onRenameOk = _ref$onRenameOk === void 0 ? function () {} : _ref$onRenameOk,
_ref$onDeleteOk = _ref.onDeleteOk,
onDeleteOk = _ref$onDeleteOk === void 0 ? function () {} : _ref$onDeleteOk;
var _useState = Object(external_window_React_["useState"])(false),
_useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
visible = _useState2[0],
setVisible = _useState2[1];
var _useState3 = Object(external_window_React_["useState"])(''),
_useState4 = Object(slicedToArray["a" /* default */])(_useState3, 2),
value = _useState4[0],
setValue = _useState4[1];
Object(external_window_React_["useEffect"])(function () {
if (data.name) {
setValue(data === null || data === void 0 ? void 0 : data.name);
}
}, [data === null || data === void 0 ? void 0 : data.name]);
var onRename = /*#__PURE__*/function () {
var _ref2 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee(id) {
var array, i, res;
return regenerator_default.a.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
array = ['?', '、', '/', '╲', '*', '<', '>', '|'];
if (value.trim()) {
_context.next = 4;
break;
}
message["b" /* default */].warn('请输入文件夹名称');
return _context.abrupt("return");
case 4:
if (!(value.charAt(0) === ' ')) {
_context.next = 7;
break;
}
message["b" /* default */].warn('首字符不能为空格');
return _context.abrupt("return");
case 7:
i = 0;
case 8:
if (!(i < value.length)) {
_context.next = 15;
break;
}
if (!array.includes(value.charAt(i))) {
_context.next = 12;
break;
}
message["b" /* default */].warn('文件夹名称包含特殊字符');
return _context.abrupt("return", false);
case 12:
i++;
_context.next = 8;
break;
case 15:
_context.next = 17;
return Object(fetch["a" /* default */])("/api/item_banks_groups/".concat(Math.abs(id), ".json"), {
method: 'put',
body: {
name: value
}
});
case 17:
res = _context.sent;
if (res.status === 0) {
setVisible(false);
onRenameOk();
}
case 19:
case "end":
return _context.stop();
}
}
}, _callee);
}));
return function onRename(_x) {
return _ref2.apply(this, arguments);
};
}();
var onDelete = function onDelete(id) {
modal["a" /* default */].confirm({
title: '提示',
okText: '确认删除',
className: "custom-modal-divider ",
icon: null,
content: /*#__PURE__*/external_window_React_default.a.createElement("div", null, /*#__PURE__*/external_window_React_default.a.createElement("p", null, "\u672C\u6B21\u5220\u9664\u64CD\u4F5C\u786E\u5B9A\u540E\u5185\u5BB9\u5C06\u65E0\u6CD5\u6062\u590D\uFF0C\u662F\u5426\u7EE7\u7EED\uFF1F"), /*#__PURE__*/external_window_React_default.a.createElement("p", null, "\u5220\u9664\u6587\u4EF6\u5939\uFF0C\u5C06\u540C\u6B65\u5220\u9664\u5176\u6240\u5305\u542B\u7684\u5168\u90E8\u5B50\u6587\u4EF6\u5939\u548C\u8BD5\u9898\uFF0C\u8BF7\u614E\u91CD\u64CD\u4F5C\uFF01")),
cancelText: '取消',
onOk: function () {
var _onOk = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee2() {
var res;
return regenerator_default.a.wrap(function _callee2$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return Object(fetch["a" /* default */])("/api/item_banks_groups/".concat(Math.abs(id), ".json"), {
method: 'delete',
body: {}
});
case 2:
res = _context2.sent;
if (res.status === 0) {
onDeleteOk([id]);
}
case 4:
case "end":
return _context2.stop();
}
}
}, _callee2);
}));
function onOk() {
return _onOk.apply(this, arguments);
}
return onOk;
}()
});
};
return /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Foldermodules_default.a.list
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "iconfont icon-wenjianjia2 c-light-primary mr10"
}), visible ? /*#__PURE__*/external_window_React_default.a.createElement(input["a" /* default */], {
style: {
maxWidth: 800
},
value: value,
onChange: function onChange(e) {
return setValue(e.target.value);
}
}) : /*#__PURE__*/external_window_React_default.a.createElement("div", {
title: data === null || data === void 0 ? void 0 : data.name,
onClick: function onClick() {
return onOpen(data.id);
},
className: Foldermodules_default.a.name
}, data === null || data === void 0 ? void 0 : data.name), isProblemset && /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Foldermodules_default.a.btns
}, visible ? /*#__PURE__*/external_window_React_default.a.createElement(external_window_React_default.a.Fragment, null, /*#__PURE__*/external_window_React_default.a.createElement("div", {
onClick: function onClick() {
return onRename(data.id);
},
className: "ml0"
}, /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: "iconfont icon-chenggong1",
style: {
color: '#33BD8C'
}
})), /*#__PURE__*/external_window_React_default.a.createElement("div", {
onClick: function onClick() {
return setVisible(false);
},
className: "ml10"
}, /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: "iconfont icon-qingchu"
}))) : /*#__PURE__*/external_window_React_default.a.createElement(external_window_React_default.a.Fragment, null, /*#__PURE__*/external_window_React_default.a.createElement("div", {
onClick: function onClick() {
return onMove(data.id, true);
},
className: "ml0"
}, /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: "iconfont icon-shangyi3",
style: {
transform: 'translateY(2px)'
}
})), /*#__PURE__*/external_window_React_default.a.createElement("div", {
onClick: function onClick() {
return onMove(data.id, false);
},
className: "ml10",
style: {
transform: 'rotate(180deg) translateY(1px)'
}
}, /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: "iconfont icon-shangyi3"
}))), /*#__PURE__*/external_window_React_default.a.createElement(es_button["a" /* default */], {
style: {
marginLeft: 16
},
onClick: function onClick() {
return setVisible(true);
},
type: "link"
}, "\u91CD\u547D\u540D"), /*#__PURE__*/external_window_React_default.a.createElement(es_button["a" /* default */], {
onClick: function onClick() {
return onDelete(data.id);
},
type: "link",
danger: true
}, "\u5220\u9664")));
};
/* harmony default export */ var Folder = (Folder_List);
// EXTERNAL MODULE: ./src/pages/Problemset/components/TeachGroup/index.less?modules
var TeachGroupmodules = __webpack_require__("rCGY");
var TeachGroupmodules_default = /*#__PURE__*/__webpack_require__.n(TeachGroupmodules);
// CONCATENATED MODULE: ./src/pages/Problemset/components/TeachGroup/index.tsx
var TeachGroup_TeachGroup = function TeachGroup(_ref) {
var _teachGroupData$group, _teachGroupData$group2;
var dispatch = _ref.dispatch,
problemset = _ref.problemset,
_ref$groupIds = _ref.groupIds,
groupIds = _ref$groupIds === void 0 ? [] : _ref$groupIds,
_ref$onChangeTeachGro = _ref.onChangeTeachGroup,
onChangeTeachGroup = _ref$onChangeTeachGro === void 0 ? function () {} : _ref$onChangeTeachGro;
var teachGroupData = problemset.teachGroupData;
return !!(teachGroupData !== null && teachGroupData !== void 0 && (_teachGroupData$group = teachGroupData.groups) !== null && _teachGroupData$group !== void 0 && _teachGroupData$group.length) && /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: TeachGroupmodules_default.a.groupWrap
}, /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: "".concat(TeachGroupmodules_default.a.minWidth73, " ml20 mt3")
}, "\u6559\u7814\u56E2\u961F\uFF1A"), /*#__PURE__*/external_window_React_default.a.createElement("span", null, /*#__PURE__*/external_window_React_default.a.createElement("li", {
className: "mr10 mb10 ".concat(TeachGroupmodules_default.a.minWidth60, " ").concat(TeachGroupmodules_default.a.directionItem, " ").concat(!(groupIds !== null && groupIds !== void 0 && groupIds.length) ? TeachGroupmodules_default.a.active : ''),
onClick: function onClick() {
return onChangeTeachGroup([]);
}
}, "\u5168\u90E8")), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: TeachGroupmodules_default.a.directionContentWrap
}, teachGroupData === null || teachGroupData === void 0 ? void 0 : (_teachGroupData$group2 = teachGroupData.groups) === null || _teachGroupData$group2 === void 0 ? void 0 : _teachGroupData$group2.map(function (item) {
return /*#__PURE__*/external_window_React_default.a.createElement("span", null, /*#__PURE__*/external_window_React_default.a.createElement("li", {
key: item.group_id,
onClick: function onClick() {
return onChangeTeachGroup([item.group_id]);
},
className: "".concat(TeachGroupmodules_default.a.directionItem, " ").concat(groupIds !== null && groupIds !== void 0 && groupIds.includes(item.group_id) ? TeachGroupmodules_default.a.active : '')
}, item.name));
})));
};
// EXTERNAL MODULE: ./src/utils/util.tsx + 1 modules
var util = __webpack_require__("1vsH");
// EXTERNAL MODULE: ./node_modules/antd/es/divider/style/index.js
var divider_style = __webpack_require__("/zsF");
// EXTERNAL MODULE: ./node_modules/antd/es/divider/index.js
var divider = __webpack_require__("PArb");
// EXTERNAL MODULE: ./node_modules/antd/es/row/style/index.js
var row_style = __webpack_require__("14J3");
// EXTERNAL MODULE: ./node_modules/antd/es/row/index.js
var row = __webpack_require__("BMrR");
// EXTERNAL MODULE: ./node_modules/antd/es/col/style/index.js
var col_style = __webpack_require__("jCWc");
// EXTERNAL MODULE: ./node_modules/antd/es/col/index.js
var col = __webpack_require__("kPKH");
// EXTERNAL MODULE: ./node_modules/antd/es/form/style/index.js
var form_style = __webpack_require__("y8nQ");
// EXTERNAL MODULE: ./node_modules/antd/es/form/index.js + 11 modules
var es_form = __webpack_require__("Vl3Y");
// EXTERNAL MODULE: ./src/pages/Problemset/components/SelectShixuns/index.less?modules
var SelectShixunsmodules = __webpack_require__("nSDg");
var SelectShixunsmodules_default = /*#__PURE__*/__webpack_require__.n(SelectShixunsmodules);
// EXTERNAL MODULE: ./src/service/shixuns.ts
var shixuns = __webpack_require__("HBuW");
// EXTERNAL MODULE: ./src/utils/verifyLogin.tsx
var verifyLogin = __webpack_require__("NLgs");
// CONCATENATED MODULE: ./src/pages/Problemset/components/SelectShixuns/index.tsx
var Search = input["a" /* default */].Search;
var typeFilter = {
id: "type",
name: "来源",
children: [{
name: "全部",
id: "all",
type: "type"
}, {
name: "我的",
id: "mine",
type: "type"
}]
};
var diffFilter = {
id: "diff",
name: "难度",
children: [{
name: "全部",
id: "",
type: "diff"
}, {
name: "初级",
id: 1,
type: "diff"
}, {
name: "中级",
id: 2,
type: "diff"
}, {
name: "中高级",
id: 3,
type: "diff"
}, {
name: "高级",
id: 4,
type: "diff"
}]
};
var SelectShixuns_PublishShixun = function PublishShixun(_ref) {
var _typeFilter$children, _diffFilter$children, _shixunLists$shixun_l3, _shixunLists$shixun_l4;
var classroomList = _ref.classroomList,
loading = _ref.loading,
dispatch = _ref.dispatch,
cb = _ref.cb,
_ref$shixunIds = _ref.shixunIds,
shixunIds = _ref$shixunIds === void 0 ? [] : _ref$shixunIds;
var params = Object(react_router["i" /* useParams */])();
var location = Object(react_router["h" /* useLocation */])();
var actionTabs = classroomList.actionTabs;
var _Form$useForm = es_form["a" /* default */].useForm(),
_Form$useForm2 = Object(slicedToArray["a" /* default */])(_Form$useForm, 1),
form = _Form$useForm2[0];
var shixunLists = classroomList.shixunLists;
var _useState = Object(external_window_React_["useState"])([]),
_useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
selectArrs = _useState2[0],
setSelectArrs = _useState2[1];
var _useState3 = Object(external_window_React_["useState"])([]),
_useState4 = Object(slicedToArray["a" /* default */])(_useState3, 2),
directionData = _useState4[0],
setDirectionData = _useState4[1];
var _useState5 = Object(external_window_React_["useState"])({
page: 1,
type: "all",
diff: 0,
status: "published",
order: "desc",
limit: 10,
sort: "myshixuns_count",
tag_level: null,
sub_discipline_id: null,
discipline_id: null
}),
_useState6 = Object(slicedToArray["a" /* default */])(_useState5, 2),
query = _useState6[0],
setQuery = _useState6[1];
Object(external_window_React_["useEffect"])(function () {
if (classroomList.actionTabs.key === '选用实践项目') {
// query.page = 1;
dispatch({
type: 'classroomList/getShixunLists',
payload: Object(objectSpread2["a" /* default */])({}, query)
});
}
}, [classroomList.actionTabs.key, query]);
Object(external_window_React_["useEffect"])(function () {
try {
if (classroomList.actionTabs.key === '选用实践项目') {
document.body.removeAttribute('data-custom');
document.body.setAttribute('data-self', 'height');
} else {
document.body.removeAttribute('data-self');
}
} catch (_unused) {}
return function () {
document.body.removeAttribute('data-self');
document.body.setAttribute('data-custom', 'initial');
};
}, [classroomList.actionTabs.key]);
Object(external_window_React_["useEffect"])(function () {
getData();
}, [params]);
var getData = /*#__PURE__*/function () {
var _ref2 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee() {
var res;
return regenerator_default.a.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return Object(shixuns["ob" /* getShixunsMenus */])({});
case 2:
res = _context.sent;
//
setDirectionData((res === null || res === void 0 ? void 0 : res.disciplines) || []);
case 4:
case "end":
return _context.stop();
}
}
}, _callee);
}));
return function getData() {
return _ref2.apply(this, arguments);
};
}();
var menuChange = function menuChange(tag_level, sub_discipline_id, discipline_id) {
query.tag_level = tag_level;
query.sub_discipline_id = sub_discipline_id;
query.discipline_id = discipline_id;
setQuery(Object(objectSpread2["a" /* default */])({}, query));
dispatch({
type: 'classroomList/getShixunLists',
payload: Object(objectSpread2["a" /* default */])({}, query)
});
};
var handleCancel = function handleCancel() {
dispatch({
type: 'classroomList/setActionTabs',
payload: {}
});
setQuery({
page: 1,
type: "all",
diff: 0,
status: "all",
order: "desc",
limit: 10,
sort: "myshixuns_count",
tag_level: null,
sub_discipline_id: null,
discipline_id: null
});
};
if (classroomList.actionTabs.key !== '选用实践项目') return null;
return /*#__PURE__*/external_window_React_default.a.createElement(drawer["a" /* default */], {
placement: "bottom",
height: "100%",
closable: true,
onClose: handleCancel,
visible: classroomList.actionTabs.key === '选用实践项目' ? true : false,
key: "bottom",
className: SelectShixunsmodules_default.a.drawer,
footer: /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "tc"
}, /*#__PURE__*/external_window_React_default.a.createElement(es_button["a" /* default */], {
size: "large",
onClick: function onClick() {
handleCancel();
setSelectArrs([]);
},
style: {
marginRight: 8
}
}, "\u53D6\u6D88"), /*#__PURE__*/external_window_React_default.a.createElement(es_button["a" /* default */], {
size: "large",
onClick: /*#__PURE__*/Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee2() {
var _loop, i, _ret;
return regenerator_default.a.wrap(function _callee2$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
_loop = function _loop(i) {
var selectItem = selectArrs[i];
if (shixunIds.includes(selectItem)) {
var _shixunLists$shixun_l, _shixunLists$shixun_l2;
message["b" /* default */].info("\u8BF7\u52FF\u91CD\u590D\u9009\u62E9\uFF1A".concat(shixunLists === null || shixunLists === void 0 ? void 0 : (_shixunLists$shixun_l = shixunLists.shixun_list) === null || _shixunLists$shixun_l === void 0 ? void 0 : (_shixunLists$shixun_l2 = _shixunLists$shixun_l.find(function (item) {
return item.id === selectItem;
})) === null || _shixunLists$shixun_l2 === void 0 ? void 0 : _shixunLists$shixun_l2.title));
return {
v: void 0
};
}
};
i = 0;
case 2:
if (!(i < (selectArrs === null || selectArrs === void 0 ? void 0 : selectArrs.length))) {
_context2.next = 9;
break;
}
_ret = _loop(i);
if (!(typeof _ret === "object")) {
_context2.next = 6;
break;
}
return _context2.abrupt("return", _ret.v);
case 6:
i++;
_context2.next = 2;
break;
case 9:
handleCancel();
cb(selectArrs);
setSelectArrs([]);
case 12:
case "end":
return _context2.stop();
}
}
}, _callee2);
})),
type: "primary"
}, "\u786E\u5B9A"))
}, /*#__PURE__*/external_window_React_default.a.createElement("section", {
className: "tc"
}, /*#__PURE__*/external_window_React_default.a.createElement(Search, {
placeholder: "\u5B9E\u8BAD\u4FE1\u606F/\u9662\u6821\u540D\u79F0/\u521B\u5EFA\u8005",
enterButton: "\u641C\u7D22",
size: "large",
className: SelectShixunsmodules_default.a.search,
onSearch: function onSearch(value) {
query.keyword = value;
query.page = 1;
dispatch({
type: 'classroomList/getShixunLists',
payload: Object(objectSpread2["a" /* default */])({}, query)
});
}
})), /*#__PURE__*/external_window_React_default.a.createElement("section", {
className: "edu-container"
}, /*#__PURE__*/external_window_React_default.a.createElement("ul", {
className: SelectShixunsmodules_default.a.menu
}, /*#__PURE__*/external_window_React_default.a.createElement("li", null, typeFilter.name), typeFilter === null || typeFilter === void 0 ? void 0 : (_typeFilter$children = typeFilter.children) === null || _typeFilter$children === void 0 ? void 0 : _typeFilter$children.map(function (val, key) {
return /*#__PURE__*/external_window_React_default.a.createElement("li", {
className: query[typeFilter.id] == val.id ? SelectShixunsmodules_default.a.actived : '',
onClick: function onClick() {
query[typeFilter.id] = val.id;
setQuery(Object(objectSpread2["a" /* default */])({}, query));
dispatch({
type: 'classroomList/getShixunLists',
payload: Object(objectSpread2["a" /* default */])({}, query)
});
}
}, /*#__PURE__*/external_window_React_default.a.createElement("strong", null, val.name));
})), /*#__PURE__*/external_window_React_default.a.createElement("ul", {
className: SelectShixunsmodules_default.a.menuDirection
}, /*#__PURE__*/external_window_React_default.a.createElement("li", {
className: SelectShixunsmodules_default.a.directionName
}, "\u65B9\u5411"), /*#__PURE__*/external_window_React_default.a.createElement("li", {
className: !query.discipline_id ? SelectShixunsmodules_default.a.actived : '',
onClick: function onClick() {
menuChange(null, null, null);
}
}, /*#__PURE__*/external_window_React_default.a.createElement("strong", null, "\u5168\u90E8")), directionData === null || directionData === void 0 ? void 0 : directionData.map(function (v, k) {
return /*#__PURE__*/external_window_React_default.a.createElement("li", {
key: k,
className: query.discipline_id == v.id ? SelectShixunsmodules_default.a.actived : ''
}, /*#__PURE__*/external_window_React_default.a.createElement("strong", {
onClick: function onClick() {
menuChange(1, null, v.id);
}
}, v.name), /*#__PURE__*/external_window_React_default.a.createElement("div", null, v.sub_disciplines.map(function (val, key) {
return /*#__PURE__*/external_window_React_default.a.createElement("div", {
key: key,
className: "mt5"
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: query.sub_discipline_id == val.id ? "".concat(SelectShixunsmodules_default.a.actived2, " ").concat(SelectShixunsmodules_default.a.subTag) : SelectShixunsmodules_default.a.subTag,
onClick: function onClick() {
menuChange(2, val.id, v.id);
}
}, val.name), /*#__PURE__*/external_window_React_default.a.createElement("ul", {
className: "mt5"
}, val.tags && val.tags.map(function (value, index) {
return /*#__PURE__*/external_window_React_default.a.createElement("li", {
key: index,
className: query.sub_discipline_id == value.id && query.tag_level === 3 ? SelectShixunsmodules_default.a.actived2 : '',
onClick: function onClick() {
menuChange(3, value.id, v.id);
}
}, value.name);
})));
})));
})), /*#__PURE__*/external_window_React_default.a.createElement("ul", {
className: SelectShixunsmodules_default.a.menu
}, /*#__PURE__*/external_window_React_default.a.createElement("li", null, diffFilter.name), diffFilter === null || diffFilter === void 0 ? void 0 : (_diffFilter$children = diffFilter.children) === null || _diffFilter$children === void 0 ? void 0 : _diffFilter$children.map(function (val, key) {
return /*#__PURE__*/external_window_React_default.a.createElement("li", {
className: query[diffFilter.id] == val.id ? SelectShixunsmodules_default.a.actived : '',
onClick: function onClick() {
query[diffFilter.id] = val.id;
setQuery(Object(objectSpread2["a" /* default */])({}, query));
dispatch({
type: 'classroomList/getShixunLists',
payload: Object(objectSpread2["a" /* default */])({}, query)
});
}
}, /*#__PURE__*/external_window_React_default.a.createElement("strong", null, val.name));
})), /*#__PURE__*/external_window_React_default.a.createElement(row["a" /* default */], null, /*#__PURE__*/external_window_React_default.a.createElement(col["a" /* default */], {
flex: "1"
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: SelectShixunsmodules_default.a.menuCourse,
style: {
margin: '0px 15px'
}
}, /*#__PURE__*/external_window_React_default.a.createElement("ul", null, /*#__PURE__*/external_window_React_default.a.createElement("li", null, "\u5DF2\u9009", /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: "c-blue"
}, selectArrs.length), "\u4E2A\u5B9E\u8BAD"), /*#__PURE__*/external_window_React_default.a.createElement("li", null, "\u5171", /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: "c-blue"
}, shixunLists.shixuns_count), "\u4E2A\u8BFE\u7A0B"), /*#__PURE__*/external_window_React_default.a.createElement("li", {
className: "current",
onClick: function onClick() {
query.order = query.order === 'asc' ? "desc" : "asc";
setQuery(Object(objectSpread2["a" /* default */])({}, query));
}
}, "\u5B66\u4E60\u4EBA\u6570", /*#__PURE__*/external_window_React_default.a.createElement("p", {
className: "edu-sorter current ".concat(query.order)
}, query.order === 'asc' ? /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: "iconfont icon-sanjiaoxing-up"
}) : /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: "iconfont icon-sanjiaoxing-down"
})))))), /*#__PURE__*/external_window_React_default.a.createElement(col["a" /* default */], {
className: "c-grey-999"
}, "\u4EC5\u5DF2\u53D1\u5E03\u7684\u5B9E\u8BAD\u8FDB\u5165\u672C\u5217\u8868\u5907\u9009")), shixunLists === null || shixunLists === void 0 ? void 0 : (_shixunLists$shixun_l3 = shixunLists.shixun_list) === null || _shixunLists$shixun_l3 === void 0 ? void 0 : _shixunLists$shixun_l3.map(function (v, k) {
return /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: SelectShixunsmodules_default.a.listItem,
key: k
}, /*#__PURE__*/external_window_React_default.a.createElement(es_checkbox["a" /* default */], {
checked: selectArrs.includes(v.id),
value: v.id,
disabled: v === null || v === void 0 ? void 0 : v.need_authorize,
onChange: function onChange(e) {
var key = selectArrs.indexOf(v.id);
if (selectArrs.indexOf(v.id) > -1) {
setSelectArrs(selectArrs.filter(function (val) {
return val !== v.id;
}));
} else {
setSelectArrs(selectArrs.concat(v.id));
}
}
}), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: SelectShixunsmodules_default.a.info
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: SelectShixunsmodules_default.a.title
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: SelectShixunsmodules_default.a.titleLeft
}, /*#__PURE__*/external_window_React_default.a.createElement("a", {
className: "c-black",
href: "/shixuns/".concat(v === null || v === void 0 ? void 0 : v.identifier, "/challenges"),
target: "_blank"
}, /*#__PURE__*/external_window_React_default.a.createElement("strong", {
className: "font16",
dangerouslySetInnerHTML: {
__html: v.title
}
})), (v === null || v === void 0 ? void 0 : v.need_authorize) && /*#__PURE__*/external_window_React_default.a.createElement("span", {
onClick: function onClick() {
Object(verifyLogin["a" /* AuthorizeModel */])(false);
},
style: {
marginRight: 'auto'
},
className: "tag-style bg-pink current ml10"
}, "\u9700\u6388\u6743"), Object(authority["v" /* isSuperAdmins */])() && (v === null || v === void 0 ? void 0 : v.mark_status) === 1 && /*#__PURE__*/external_window_React_default.a.createElement(tooltip["a" /* default */], {
title: v === null || v === void 0 ? void 0 : v.mark_content
}, /*#__PURE__*/external_window_React_default.a.createElement("span", {
style: {
marginRight: 'auto',
background: '#2FA34F'
},
className: "tag-style current ml10"
}, "\u6B63\u5E38")), Object(authority["v" /* isSuperAdmins */])() && (v === null || v === void 0 ? void 0 : v.mark_status) === 2 && /*#__PURE__*/external_window_React_default.a.createElement(tooltip["a" /* default */], {
title: v === null || v === void 0 ? void 0 : v.mark_content
}, /*#__PURE__*/external_window_React_default.a.createElement("span", {
style: {
marginRight: 'auto',
background: '#FF8C29'
},
className: "tag-style current ml10"
}, "\u9700\u5B8C\u5584")), Object(authority["v" /* isSuperAdmins */])() && (v === null || v === void 0 ? void 0 : v.mark_status) === 3 && /*#__PURE__*/external_window_React_default.a.createElement(tooltip["a" /* default */], {
title: v === null || v === void 0 ? void 0 : v.mark_content
}, /*#__PURE__*/external_window_React_default.a.createElement("span", {
style: {
marginRight: 'auto',
background: '#E53333'
},
className: "tag-style current ml10"
}, "\u65E0\u6CD5\u4F7F\u7528")))), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "flex-wrp mt10 font14 c-light-black"
}, /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: SelectShixunsmodules_default.a.description,
dangerouslySetInnerHTML: {
__html: v.description
}
})), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: " mt15"
}, v.challenge_names.map(function (val, key) {
return /*#__PURE__*/external_window_React_default.a.createElement("span", {
key: key,
className: "mr30 font12"
}, "\u7B2C", key + 1, "\u5173 ", val, " ");
})), /*#__PURE__*/external_window_React_default.a.createElement(divider["a" /* default */], {
dashed: true
}), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "c-light-black mt20 font12"
}, /*#__PURE__*/external_window_React_default.a.createElement("span", null, v.author_name), /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: "ml15 mr15"
}, "|"), /*#__PURE__*/external_window_React_default.a.createElement("span", null, v.author_school_name), /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: "ml15 mr15"
}, "|"), /*#__PURE__*/external_window_React_default.a.createElement("span", null, "\u96BE\u5EA6\u7CFB\u6570 ", v.level), /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: "ml15 mr15"
}, "|"), /*#__PURE__*/external_window_React_default.a.createElement("span", null, "\u5B66\u4E60\u4EBA\u6570 "), /*#__PURE__*/external_window_React_default.a.createElement("span", null, v.study_count))));
}), (shixunLists === null || shixunLists === void 0 ? void 0 : (_shixunLists$shixun_l4 = shixunLists.shixun_list) === null || _shixunLists$shixun_l4 === void 0 ? void 0 : _shixunLists$shixun_l4.length) === 0 && /*#__PURE__*/external_window_React_default.a.createElement(NoData["a" /* default */], null), /*#__PURE__*/external_window_React_default.a.createElement("p", null)), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "tc mt20"
}, /*#__PURE__*/external_window_React_default.a.createElement(pagination["a" /* default */], {
defaultCurrent: 1,
hideOnSinglePage: true,
defaultPageSize: 20,
showSizeChanger: false,
current: query.page || 1,
showQuickJumper: true,
total: shixunLists === null || shixunLists === void 0 ? void 0 : shixunLists.shixuns_count,
onChange: function onChange(page) {
query.page = page;
setQuery(Object(objectSpread2["a" /* default */])({}, query));
}
})));
};
/* harmony default export */ var SelectShixuns = (Object(umiExports["a" /* connect */])(function (_ref4) {
var classroomList = _ref4.classroomList,
loading = _ref4.loading;
return {
classroomList: classroomList,
loading: loading
};
})(SelectShixuns_PublishShixun));
// CONCATENATED MODULE: ./src/pages/Problemset/index.tsx
var TabPane = tabs["a" /* default */].TabPane;
var Problemset_Search = input["a" /* default */].Search;
var TextArea = input["a" /* default */].TextArea;
var Problemset_ProblemsetPage = function ProblemsetPage(_ref) {
var _props$location, _props$location$query, _match$params, _match$params2, _problemset$disciplin10, _problemset$teachGrou5, _problemset$teachGrou6;
var problemset = _ref.problemset,
user = _ref.user,
globalSetting = _ref.globalSetting,
loading = _ref.loading,
dispatch = _ref.dispatch,
match = _ref.match,
props = Object(objectWithoutProperties["a" /* default */])(_ref, ["problemset", "user", "globalSetting", "loading", "dispatch", "match"]);
var _useState = Object(external_window_React_["useState"])({
discipline_id: null,
sub_discipline_id: null,
tag_discipline_id: null,
group_id: null,
type: "0",
item_type: null,
difficulty: null,
keyword: null,
page: 1,
per_page: 20,
// order_by: 'new',
sort_by: 'updated_at',
sort_direction: 'desc',
id: ((_props$location = props.location) === null || _props$location === void 0 ? void 0 : (_props$location$query = _props$location.query) === null || _props$location$query === void 0 ? void 0 : _props$location$query.id) || null,
exam_id: (match === null || match === void 0 ? void 0 : (_match$params = match.params) === null || _match$params === void 0 ? void 0 : _match$params.id) || null,
exercise_id: (match === null || match === void 0 ? void 0 : (_match$params2 = match.params) === null || _match$params2 === void 0 ? void 0 : _match$params2.categoryId) || null
}),
_useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
params = _useState2[0],
setParams = _useState2[1];
var _useState3 = Object(external_window_React_["useState"])(0),
_useState4 = Object(slicedToArray["a" /* default */])(_useState3, 2),
problemsetCount = _useState4[0],
setProblemsetCount = _useState4[1];
var _useState5 = Object(external_window_React_["useState"])([]),
_useState6 = Object(slicedToArray["a" /* default */])(_useState5, 2),
problemsetList = _useState6[0],
setProblemsetList = _useState6[1];
var _useState7 = Object(external_window_React_["useState"])("0"),
_useState8 = Object(slicedToArray["a" /* default */])(_useState7, 2),
activeTabsKey = _useState8[0],
setActiveTabsKey = _useState8[1];
var _useState9 = Object(external_window_React_["useState"])(0),
_useState10 = Object(slicedToArray["a" /* default */])(_useState9, 2),
addedNum = _useState10[0],
setAddedNum = _useState10[1];
var _useState11 = Object(external_window_React_["useState"])(-1),
_useState12 = Object(slicedToArray["a" /* default */])(_useState11, 2),
knowledgeValue = _useState12[0],
setKnowledgeValue = _useState12[1];
var _useState13 = Object(external_window_React_["useState"])([]),
_useState14 = Object(slicedToArray["a" /* default */])(_useState13, 2),
knowledgeData = _useState14[0],
setKnowledgeData = _useState14[1];
var _useState15 = Object(external_window_React_["useState"])(false),
_useState16 = Object(slicedToArray["a" /* default */])(_useState15, 2),
batchDeleteLoading = _useState16[0],
setBatchDeleteLoading = _useState16[1];
var _useState17 = Object(external_window_React_["useState"])([]),
_useState18 = Object(slicedToArray["a" /* default */])(_useState17, 2),
navigation = _useState18[0],
setNavigation = _useState18[1];
var _useState19 = Object(external_window_React_["useState"])(0),
_useState20 = Object(slicedToArray["a" /* default */])(_useState19, 2),
basketTotal = _useState20[0],
setBasketTotal = _useState20[1];
var _useState21 = Object(external_window_React_["useState"])(false),
_useState22 = Object(slicedToArray["a" /* default */])(_useState21, 2),
visibleBasketDrawer = _useState22[0],
setVisibleBasketDrawer = _useState22[1];
var _useState23 = Object(external_window_React_["useState"])(false),
_useState24 = Object(slicedToArray["a" /* default */])(_useState23, 2),
backIcon = _useState24[0],
setBackIcon = _useState24[1]; // const [selectAll, setSelectAll] = useState(false);
var unpublishedAll = Object(external_window_React_["useRef"])(false);
var groupValueRef = Object(external_window_React_["useRef"])('');
var correctionTypeRef = Object(external_window_React_["useRef"])();
var correctionDescRef = Object(external_window_React_["useRef"])();
var joinGroupDataRef = Object(external_window_React_["useRef"])();
var _useState25 = Object(external_window_React_["useState"])(),
_useState26 = Object(slicedToArray["a" /* default */])(_useState25, 2),
useShixunIds = _useState26[0],
setUseShixunIds = _useState26[1];
var _useState27 = Object(external_window_React_["useState"])([]),
_useState28 = Object(slicedToArray["a" /* default */])(_useState27, 2),
selectIds = _useState28[0],
setSelectIds = _useState28[1];
var hintFlagRef = Object(external_window_React_["useRef"])(false);
var isProblemset = (match === null || match === void 0 ? void 0 : match.url) === '/problemset';
var _ref2 = user.userInfo || {},
admin = _ref2.admin,
business = _ref2.business,
is_shixun_marker = _ref2.is_shixun_marker,
is_teacher = _ref2.is_teacher,
user_identity = _ref2.user_identity;
var showSelectButton = admin || business || is_shixun_marker || is_teacher || user_identity !== "学生";
var _useState29 = Object(external_window_React_["useState"])('按更新时间降序'),
_useState30 = Object(slicedToArray["a" /* default */])(_useState29, 2),
SortMenuName = _useState30[0],
setSortMenuName = _useState30[1];
var _useState31 = Object(external_window_React_["useState"])([]),
_useState32 = Object(slicedToArray["a" /* default */])(_useState31, 2),
treeData = _useState32[0],
setTreeData = _useState32[1];
var _useState33 = Object(external_window_React_["useState"])(0),
_useState34 = Object(slicedToArray["a" /* default */])(_useState33, 2),
show = _useState34[0],
setShow = _useState34[1];
var treeDataWarp = Object(external_window_React_["useRef"])(null);
var moveRef = Object(external_window_React_["useRef"])(false);
var _useState35 = Object(external_window_React_["useState"])(false),
_useState36 = Object(slicedToArray["a" /* default */])(_useState35, 2),
folderLoading = _useState36[0],
setFolderLoading = _useState36[1];
var SortMenus = [{
name: '按更新时间升序',
type: 'updated_at',
direction: 'asc'
}, {
name: '按更新时间降序',
type: 'updated_at',
direction: 'desc'
}, {
name: '按使用次数升序',
type: 'quotes',
direction: 'asc'
}, {
name: '按使用次数降序',
type: 'quotes',
direction: 'desc'
}]; // useEffect(() => {
// if (treeData.length !== 0) {
// if (treeDataWarp?.current?.clientHeight > 210) {
// setShow(1)
// } else {
// setShow(0)
// }
// }
// if (treeData.length === 0) {
// setShow(0)
// }
// }, [treeData])
Object(external_window_React_["useEffect"])(function () {
document.body.setAttribute('data-custom', 'initial');
return function () {
document.body.removeAttribute('data-custom');
};
}, []);
Object(external_window_React_["useEffect"])(function () {
var _query;
dispatch({
type: 'problemset/getDisciplines',
payload: {
source: "question"
}
});
var group_id = ((_query = props.location.query) === null || _query === void 0 ? void 0 : _query.group_id) || 0;
params.group_id = Number(group_id);
setParams(params);
getItemBanks(params);
getBasketList();
handleGetTeachGroupData();
}, []); //出现页面右侧悬浮按钮
Object(external_window_React_["useEffect"])(function () {
dispatch({
type: 'globalSetting/onlyShowBackTopToggle',
payload: false
});
dispatch({
type: 'globalSetting/onlyShowBackTopIconToggle',
payload: false
});
return function () {
dispatch({
type: 'globalSetting/onlyShowBackTopToggle',
payload: true
});
dispatch({
type: 'globalSetting/onlyShowBackTopIconToggle',
payload: true
});
};
}, []);
Object(external_window_React_["useEffect"])(function () {
dispatch({
type: 'globalSetting/headerFixedToggle',
payload: true
});
return function () {
dispatch({
type: 'globalSetting/headerFixedToggle',
payload: false
});
};
}, []);
Object(external_window_React_["useEffect"])(function () {
dispatch({
type: 'globalSetting/headerFooterToggle',
payload: isProblemset
});
return function () {
dispatch({
type: 'globalSetting/headerFooterToggle',
payload: true
});
};
}, []);
Object(external_window_React_["useEffect"])(function () {
if (problemset.disciplinesData) {
var _problemset$disciplin;
setKnowledgeData((problemset === null || problemset === void 0 ? void 0 : (_problemset$disciplin = problemset.disciplinesData) === null || _problemset$disciplin === void 0 ? void 0 : _problemset$disciplin.tag_disciplines) || []);
}
;
Object(util["V" /* setDocumentTitle */])('试题库');
}, [problemset === null || problemset === void 0 ? void 0 : problemset.disciplinesData]);
var dealData = function dealData(id, subId) {
var array = [];
if (!id) {
var _problemset$disciplin2, _problemset$disciplin3;
problemset === null || problemset === void 0 ? void 0 : (_problemset$disciplin2 = problemset.disciplinesData) === null || _problemset$disciplin2 === void 0 ? void 0 : (_problemset$disciplin3 = _problemset$disciplin2.disciplines) === null || _problemset$disciplin3 === void 0 ? void 0 : _problemset$disciplin3.forEach(function (e1) {
var _e1$sub_disciplines;
e1 === null || e1 === void 0 ? void 0 : (_e1$sub_disciplines = e1.sub_disciplines) === null || _e1$sub_disciplines === void 0 ? void 0 : _e1$sub_disciplines.forEach(function (e2) {
var _e2$tag_disciplines;
e2 === null || e2 === void 0 ? void 0 : (_e2$tag_disciplines = e2.tag_disciplines) === null || _e2$tag_disciplines === void 0 ? void 0 : _e2$tag_disciplines.forEach(function (e3) {
if (e3.name !== '未匹配知识点') {
array.push(e3);
}
});
});
});
}
if (id && !subId) {
var _problemset$disciplin4, _problemset$disciplin5, _items$sub_discipline;
var items = problemset === null || problemset === void 0 ? void 0 : (_problemset$disciplin4 = problemset.disciplinesData) === null || _problemset$disciplin4 === void 0 ? void 0 : (_problemset$disciplin5 = _problemset$disciplin4.disciplines) === null || _problemset$disciplin5 === void 0 ? void 0 : _problemset$disciplin5.find(function (item) {
return item.id === id;
});
items === null || items === void 0 ? void 0 : (_items$sub_discipline = items.sub_disciplines) === null || _items$sub_discipline === void 0 ? void 0 : _items$sub_discipline.forEach(function (e2) {
var _e2$tag_disciplines2;
e2 === null || e2 === void 0 ? void 0 : (_e2$tag_disciplines2 = e2.tag_disciplines) === null || _e2$tag_disciplines2 === void 0 ? void 0 : _e2$tag_disciplines2.forEach(function (e3) {
if (e3.name !== '未匹配知识点') {
array.push(e3);
}
});
});
}
if (id && subId) {
var _problemset$disciplin6, _problemset$disciplin7, _items$sub_discipline2, _subItems$tag_discipl;
var _items = problemset === null || problemset === void 0 ? void 0 : (_problemset$disciplin6 = problemset.disciplinesData) === null || _problemset$disciplin6 === void 0 ? void 0 : (_problemset$disciplin7 = _problemset$disciplin6.disciplines) === null || _problemset$disciplin7 === void 0 ? void 0 : _problemset$disciplin7.find(function (item) {
return item.id === id;
});
var subItems = _items === null || _items === void 0 ? void 0 : (_items$sub_discipline2 = _items.sub_disciplines) === null || _items$sub_discipline2 === void 0 ? void 0 : _items$sub_discipline2.find(function (item) {
return item.id === subId;
});
subItems === null || subItems === void 0 ? void 0 : (_subItems$tag_discipl = subItems.tag_disciplines) === null || _subItems$tag_discipl === void 0 ? void 0 : _subItems$tag_discipl.forEach(function (e3) {
if (e3.name !== '未匹配知识点') {
array.push(e3);
}
});
}
return array;
};
var handleGetTeachGroupData = /*#__PURE__*/function () {
var _ref3 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee() {
return regenerator_default.a.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
dispatch({
type: 'problemset/getTeachGroupData'
});
case 1:
case "end":
return _context.stop();
}
}
}, _callee);
}));
return function handleGetTeachGroupData() {
return _ref3.apply(this, arguments);
};
}();
Object(external_window_React_["useEffect"])(function () {
var _ref4 = problemset.basketData || {},
_ref4$completion_ques = _ref4.completion_questions_count,
completion_questions_count = _ref4$completion_ques === void 0 ? 0 : _ref4$completion_ques,
_ref4$judgement_quest = _ref4.judgement_questions_count,
judgement_questions_count = _ref4$judgement_quest === void 0 ? 0 : _ref4$judgement_quest,
_ref4$multiple_questi = _ref4.multiple_questions_count,
multiple_questions_count = _ref4$multiple_questi === void 0 ? 0 : _ref4$multiple_questi,
_ref4$practical_quest = _ref4.practical_questions_count,
practical_questions_count = _ref4$practical_quest === void 0 ? 0 : _ref4$practical_quest,
_ref4$program_questio = _ref4.program_questions_count,
program_questions_count = _ref4$program_questio === void 0 ? 0 : _ref4$program_questio,
_ref4$single_question = _ref4.single_questions_count,
single_questions_count = _ref4$single_question === void 0 ? 0 : _ref4$single_question,
_ref4$subjective_ques = _ref4.subjective_questions_count,
subjective_questions_count = _ref4$subjective_ques === void 0 ? 0 : _ref4$subjective_ques,
_ref4$combination_que = _ref4.combination_questions_count,
combination_questions_count = _ref4$combination_que === void 0 ? 0 : _ref4$combination_que;
var total = completion_questions_count + judgement_questions_count + multiple_questions_count + practical_questions_count + program_questions_count + single_questions_count + subjective_questions_count + combination_questions_count;
setBasketTotal(total);
}, [problemset.basketData]);
var getItemBanks = /*#__PURE__*/function () {
var _ref5 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee2(query) {
var res, _res$item_banks_group;
return regenerator_default.a.wrap(function _callee2$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return dispatch({
type: 'problemset/getItemBanks',
payload: query
});
case 2:
res = _context2.sent;
if (res && res.status !== 403 && res.status !== 401 && res.status !== 500) {
setProblemsetCount(res.items_count || 0);
setProblemsetList(res.items || []);
setUseShixunIds(res.used_shixun_ids || []);
handleData(res.items || []);
setSelectIds([]);
setNavigation((res === null || res === void 0 ? void 0 : res.navigation) || []);
setTreeData((res === null || res === void 0 ? void 0 : res.item_banks_group) || []);
if (!moveRef.current) {
setShow((res === null || res === void 0 ? void 0 : (_res$item_banks_group = res.item_banks_group) === null || _res$item_banks_group === void 0 ? void 0 : _res$item_banks_group.length) > 5 ? 1 : 0);
moveRef.current = false;
}
setAddedNum((res === null || res === void 0 ? void 0 : res.added_num) || 0);
setFolderLoading(false);
}
case 4:
case "end":
return _context2.stop();
}
}
}, _callee2);
}));
return function getItemBanks(_x) {
return _ref5.apply(this, arguments);
};
}();
var getBasketList = function getBasketList() {
dispatch({
type: 'problemset/getBasketList',
payload: {}
});
};
var handleData = function handleData(problemsetData) {
// 1. 过滤掉编程题中的未发布的情况
// 2. 再判断剩下的数据中是否都选中了
var unpublished = problemsetData.every(function (item) {
var _item$program_attr;
return ((_item$program_attr = item.program_attr) === null || _item$program_attr === void 0 ? void 0 : _item$program_attr.status) === 0;
});
unpublishedAll.current = unpublished;
};
var handleDirectionChange = function handleDirectionChange(id, subId) {
params.discipline_id = id || '';
params.sub_discipline_id = subId || '';
params.tag_discipline_id = '';
params.page = 1;
params.per_page = 20;
delete params.id;
setKnowledgeValue(id === null ? -1 : null);
setParams(params);
getItemBanks(params);
if (id === null) {
var _problemset$disciplin8;
setKnowledgeData((problemset === null || problemset === void 0 ? void 0 : (_problemset$disciplin8 = problemset.disciplinesData) === null || _problemset$disciplin8 === void 0 ? void 0 : _problemset$disciplin8.tag_disciplines) || []);
return;
}
setKnowledgeData(dealData(id, subId));
};
var handleTypeChange = function handleTypeChange(value) {
params.item_type = value || '';
params.page = 1;
params.per_page = 20;
setParams(params);
getItemBanks(params);
};
var handleDifficultyChange = function handleDifficultyChange(value) {
params.difficulty = value || '';
params.page = 1;
params.per_page = 20;
delete params.id;
setParams(params);
getItemBanks(params);
};
var handleKnowledgeChange = function handleKnowledgeChange(value) {
params.tag_discipline_id = value;
params.page = 1;
params.per_page = 20;
delete params.id;
if (value === -1) {
var _problemset$disciplin9;
params.discipline_id = '';
params.sub_discipline_id = '';
params.tag_discipline_id = '';
setKnowledgeData((problemset === null || problemset === void 0 ? void 0 : (_problemset$disciplin9 = problemset.disciplinesData) === null || _problemset$disciplin9 === void 0 ? void 0 : _problemset$disciplin9.tag_disciplines) || []);
}
setKnowledgeValue(value);
setParams(params);
getItemBanks(params);
};
var handleTabsChange = function handleTabsChange(activeKey) {
params.discipline_id = '';
params.sub_discipline_id = '';
params.tag_discipline_id = '';
params.item_type = null;
params.difficulty = null;
params.type = activeKey;
if (activeKey === '0') {
params.group_id = 0;
} else {
params.group_id = null;
}
params.page = 1;
params.per_page = 20;
delete params.id;
setKnowledgeValue(-1);
setActiveTabsKey(activeKey);
setParams(params);
getItemBanks(params);
};
var handleChangePage = function handleChangePage(page, pagesize) {
// const { field, order } = sorter || {};
// let sort_direction = null;
// if (order === "descend") {
// sort_direction = "desc";
// } else if (order === "ascend") {
// sort_direction = "asc";
// }
// if (sort_direction) {
// params.order_by = ''
// } else {
// params.order_by = 'new'
// }
// params.sort_by = sort_direction ? field : null;
// params.sort_direction = sort_direction;
params.page = page;
params.per_page = 20;
setParams(params);
getItemBanks(params);
};
var handleSearch = function handleSearch(value) {
params.discipline_id = '';
params.sub_discipline_id = '';
params.tag_discipline_id = '';
params.item_type = null;
params.difficulty = null;
params.page = 1;
params.keyword = value;
delete params.id;
if (value) {
setBackIcon(true);
} else {
setBackIcon(false);
}
setKnowledgeValue(-1);
setParams(params);
getItemBanks(params);
};
var handleReloadData = function handleReloadData() {
params.per_page = 20;
setParams(params);
getItemBanks(params);
};
var handleDeleteData = function handleDeleteData(deleteId) {
var page = deleteId.length === problemsetList.length && params.page > 1 ? params.page - 1 : params.page;
params.page = page;
params.per_page = 20;
getBasketList();
setParams(params);
getItemBanks(params);
};
var handlePublicReview = function handlePublicReview() {
dispatch({
type: 'problemset/setActionTabs',
payload: {
key: 'Problemset-PublicReview'
}
});
};
var handleCollect = /*#__PURE__*/function () {
var _ref6 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee3(id, isCollect) {
var res;
return regenerator_default.a.wrap(function _callee3$(_context3) {
while (1) {
switch (_context3.prev = _context3.next) {
case 0:
if (!isCollect) {
_context3.next = 6;
break;
}
_context3.next = 3;
return Object(service_problemset["l" /* cancelCollection */])({
id: id
});
case 3:
_context3.t0 = _context3.sent;
_context3.next = 9;
break;
case 6:
_context3.next = 8;
return Object(service_problemset["C" /* joinCollection */])({
id: id
});
case 8:
_context3.t0 = _context3.sent;
case 9:
res = _context3.t0;
(res === null || res === void 0 ? void 0 : res.status) === 0 && handleReloadData();
case 11:
case "end":
return _context3.stop();
}
}
}, _callee3);
}));
return function handleCollect(_x2, _x3) {
return _ref6.apply(this, arguments);
};
}();
var handleSetPublic = /*#__PURE__*/function () {
var _ref7 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee4(id) {
return regenerator_default.a.wrap(function _callee4$(_context4) {
while (1) {
switch (_context4.prev = _context4.next) {
case 0:
handleBatchSetPublicRequest(id);
case 1:
case "end":
return _context4.stop();
}
}
}, _callee4);
}));
return function handleSetPublic(_x4) {
return _ref7.apply(this, arguments);
};
}();
var handleSetShare = /*#__PURE__*/function () {
var _ref8 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee5(id) {
return regenerator_default.a.wrap(function _callee5$(_context5) {
while (1) {
switch (_context5.prev = _context5.next) {
case 0:
handleBatchShare(id);
case 1:
case "end":
return _context5.stop();
}
}
}, _callee5);
}));
return function handleSetShare(_x5) {
return _ref8.apply(this, arguments);
};
}();
var handleCorrection = function handleCorrection(id) {
correctionDescRef.current = '';
correctionTypeRef.current = '';
modal["a" /* default */].confirm({
centered: true,
width: 530,
icon: null,
okText: '确定',
cancelText: '取消',
title: '试题纠错',
content: /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "font14"
}, /*#__PURE__*/external_window_React_default.a.createElement("div", null, "\u9519\u8BEF\u7C7B\u578B\uFF1A"), /*#__PURE__*/external_window_React_default.a.createElement(es_radio["a" /* default */].Group, {
className: "mt10",
onChange: function onChange(e) {
return correctionTypeRef.current = e.target.value;
}
}, /*#__PURE__*/external_window_React_default.a.createElement(es_radio["a" /* default */], {
value: '题干'
}, "\u9898\u5E72"), /*#__PURE__*/external_window_React_default.a.createElement(es_radio["a" /* default */], {
value: '答案'
}, "\u7B54\u6848"), /*#__PURE__*/external_window_React_default.a.createElement(es_radio["a" /* default */], {
value: '解析'
}, "\u89E3\u6790"), /*#__PURE__*/external_window_React_default.a.createElement(es_radio["a" /* default */], {
value: '属性'
}, "\u5C5E\u6027"), /*#__PURE__*/external_window_React_default.a.createElement(es_radio["a" /* default */], {
value: '其它'
}, "\u5176\u5B83")), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "mt10"
}, "\u9519\u8BEF\u63CF\u8FF0\uFF1A"), /*#__PURE__*/external_window_React_default.a.createElement(TextArea, {
className: "mt10",
rows: 4,
defaultValue: correctionDescRef.current,
onChange: function onChange(e) {
return correctionDescRef.current = e.target.value;
}
})),
onOk: function onOk() {
return new Promise( /*#__PURE__*/function () {
var _ref9 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee6(resolve, reject) {
var res;
return regenerator_default.a.wrap(function _callee6$(_context6) {
while (1) {
switch (_context6.prev = _context6.next) {
case 0:
if (correctionTypeRef.current && correctionDescRef.current) {
_context6.next = 3;
break;
}
message["b" /* default */].info('请填写错误类型和错误描述!');
return _context6.abrupt("return", reject());
case 3:
_context6.next = 5;
return Object(service_problemset["m" /* createFeedback */])({
id: id,
clazz: correctionTypeRef.current,
description: correctionDescRef.current
});
case 5:
res = _context6.sent;
if (res.status === 0) {
message["b" /* default */].info('添加成功!');
}
resolve();
case 8:
case "end":
return _context6.stop();
}
}
}, _callee6);
}));
return function (_x6, _x7) {
return _ref9.apply(this, arguments);
};
}());
}
});
};
var handleSetPrivate = function handleSetPrivate(id) {
dispatch({
type: 'problemset/setActionTabs',
payload: {
key: 'Problemset-SetPrivate',
params: {
id: id
}
}
});
};
var handleDelete = function handleDelete(id) {
dispatch({
type: 'problemset/setActionTabs',
payload: {
key: 'Problemset-Delete',
params: {
id: id
}
}
});
};
var handleStartExperience = /*#__PURE__*/function () {
var _ref10 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee7(gather) {
var item_type, identifier, res, identifiers;
return regenerator_default.a.wrap(function _callee7$(_context7) {
while (1) {
switch (_context7.prev = _context7.next) {
case 0:
item_type = gather.item_type; //编程题
if (!(item_type === 'PROGRAM')) {
_context7.next = 12;
break;
}
identifier = gather.program_attr.identifier;
_context7.next = 5;
return dispatch({
type: 'problemset/startExperience',
payload: {
id: identifier
}
});
case 5:
res = _context7.sent;
if (!(res.status === 0)) {
_context7.next = 10;
break;
}
identifiers = res.identifier;
Object(util["Q" /* openNewWindow */])("/myproblems/".concat(identifiers));
return _context7.abrupt("return");
case 10:
message["b" /* default */].warn(res.message);
return _context7.abrupt("return");
case 12:
// 单选题 多选题 判断题 填空题
dispatch({
type: 'problemset/setActionTabs',
payload: {
key: item_type,
params: gather
}
});
case 13:
case "end":
return _context7.stop();
}
}
}, _callee7);
}));
return function handleStartExperience(_x8) {
return _ref10.apply(this, arguments);
};
}();
var handleCancel = /*#__PURE__*/function () {
var _ref11 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee8(id) {
var _res, _res2, res;
return regenerator_default.a.wrap(function _callee8$(_context8) {
while (1) {
switch (_context8.prev = _context8.next) {
case 0:
if (!params.exam_id) {
_context8.next = 6;
break;
}
_context8.next = 3;
return Object(service_problemset["I" /* revokeItem */])({
item_id: id,
id: params.exam_id
});
case 3:
_res = _context8.sent;
if (_res.status === 0) {
handleReloadData();
}
return _context8.abrupt("return");
case 6:
if (!(params !== null && params !== void 0 && params.exercise_id)) {
_context8.next = 12;
break;
}
_context8.next = 9;
return Object(fetch["a" /* default */])("/api/exercise_questions/delete_by_item_bank.json ", {
method: 'post',
body: {
exercise_id: params === null || params === void 0 ? void 0 : params.exercise_id,
item_bank_ids: [id]
}
});
case 9:
_res2 = _context8.sent;
if (_res2.status === 0) {
handleReloadData();
}
return _context8.abrupt("return");
case 12:
_context8.next = 14;
return dispatch({
type: 'problemset/cancel',
payload: {
id: id,
item_bank: 1
}
});
case 14:
res = _context8.sent;
if (res.status === 0) {
handleReloadData();
getBasketList();
}
case 16:
case "end":
return _context8.stop();
}
}
}, _callee8);
}));
return function handleCancel(_x9) {
return _ref11.apply(this, arguments);
};
}();
var handleOpen = /*#__PURE__*/function () {
var _ref12 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee9(id) {
return regenerator_default.a.wrap(function _callee9$(_context9) {
while (1) {
switch (_context9.prev = _context9.next) {
case 0:
params.page = 1;
params.per_page = 20;
params.group_id = Math.abs(id);
setParams(params);
getItemBanks(params);
case 5:
case "end":
return _context9.stop();
}
}
}, _callee9);
}));
return function handleOpen(_x10) {
return _ref12.apply(this, arguments);
};
}();
var handleMove = /*#__PURE__*/function () {
var _ref13 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee10(id, bool) {
var res;
return regenerator_default.a.wrap(function _callee10$(_context10) {
while (1) {
switch (_context10.prev = _context10.next) {
case 0:
moveRef.current = true;
setFolderLoading(true);
if (!bool) {
_context10.next = 8;
break;
}
_context10.next = 5;
return Object(service_problemset["E" /* moveUp */])({
id: Math.abs(id)
});
case 5:
_context10.t0 = _context10.sent;
_context10.next = 11;
break;
case 8:
_context10.next = 10;
return Object(service_problemset["D" /* moveDown */])({
id: Math.abs(id)
});
case 10:
_context10.t0 = _context10.sent;
case 11:
res = _context10.t0;
if (res.status === 0) {
handleReloadData();
} else {
moveRef.current = false;
setFolderLoading(false);
}
case 13:
case "end":
return _context10.stop();
}
}
}, _callee10);
}));
return function handleMove(_x11, _x12) {
return _ref13.apply(this, arguments);
};
}();
var handleSelect = /*#__PURE__*/function () {
var _ref14 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee11(id) {
var _res3, _res4, res;
return regenerator_default.a.wrap(function _callee11$(_context11) {
while (1) {
switch (_context11.prev = _context11.next) {
case 0:
if (!params.exam_id) {
_context11.next = 6;
break;
}
_context11.next = 3;
return Object(service_problemset["q" /* examinationItems */])({
exam_id: params.exam_id,
item_bank_ids: [id]
});
case 3:
_res3 = _context11.sent;
if (_res3.status === 0) {
handleReloadData();
}
return _context11.abrupt("return");
case 6:
if (!(params !== null && params !== void 0 && params.exercise_id)) {
_context11.next = 12;
break;
}
_context11.next = 9;
return Object(fetch["a" /* default */])("/api/exercises/".concat(params === null || params === void 0 ? void 0 : params.exercise_id, "/select_questions.json"), {
method: 'post',
body: {
item_bank_ids: [id]
}
});
case 9:
_res4 = _context11.sent;
if (_res4.status === 0) {
handleReloadData();
}
return _context11.abrupt("return");
case 12:
if (!(basketTotal === 200)) {
_context11.next = 15;
break;
}
message["b" /* default */].info('已选200个试题(不能在选用更多试题)');
return _context11.abrupt("return");
case 15:
_context11.next = 17;
return dispatch({
type: 'problemset/select',
payload: {
item_bank_ids: [id]
}
});
case 17:
res = _context11.sent;
if (res.status === 0) {
handleReloadData();
getBasketList();
}
case 19:
case "end":
return _context11.stop();
}
}
}, _callee11);
}));
return function handleSelect(_x13) {
return _ref14.apply(this, arguments);
};
}();
var handleOnMoveTo = /*#__PURE__*/function () {
var _ref15 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee13(id) {
return regenerator_default.a.wrap(function _callee13$(_context13) {
while (1) {
switch (_context13.prev = _context13.next) {
case 0:
if (id) {
_context13.next = 3;
break;
}
if (selectIds !== null && selectIds !== void 0 && selectIds.length) {
_context13.next = 3;
break;
}
return _context13.abrupt("return", message["b" /* default */].info('请先选择试题'));
case 3:
joinGroupDataRef.current = [0];
modal["a" /* default */].confirm({
centered: true,
width: 530,
okText: '确定',
cancelText: '取消',
title: '移动到',
maskClosable: true,
className: 'custom-modal-divider',
icon: null,
content: /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "font14 ".concat(Problemsetmodules_default.a.overflow),
style: {
maxHeight: 500,
overflow: 'auto'
}
}, /*#__PURE__*/external_window_React_default.a.createElement("p", {
className: "c-grey-333"
}, "\u8BF7\u9009\u62E9\u9700\u8981\u79FB\u52A8\u5230\u7684\u6587\u4EF6\u5939"), /*#__PURE__*/external_window_React_default.a.createElement(CustomTree["a" /* default */], {
defaultValue: true,
value: joinGroupDataRef.current,
onChange: function onChange(v) {
return joinGroupDataRef.current = v;
}
})),
onOk: function () {
var _onOk = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee12() {
var _joinGroupDataRef$cur;
var res;
return regenerator_default.a.wrap(function _callee12$(_context12) {
while (1) {
switch (_context12.prev = _context12.next) {
case 0:
_context12.next = 2;
return Object(service_problemset["f" /* batchGroup */])({
ids: id ? [id] : selectIds,
groups_ids: (_joinGroupDataRef$cur = joinGroupDataRef.current) === null || _joinGroupDataRef$cur === void 0 ? void 0 : _joinGroupDataRef$cur[0]
});
case 2:
res = _context12.sent;
joinGroupDataRef.current = [];
if ((res === null || res === void 0 ? void 0 : res.status) === 0) {
handleReloadData();
}
case 5:
case "end":
return _context12.stop();
}
}
}, _callee12);
}));
function onOk() {
return _onOk.apply(this, arguments);
}
return onOk;
}()
});
case 5:
case "end":
return _context13.stop();
}
}
}, _callee13);
}));
return function handleOnMoveTo(_x14) {
return _ref15.apply(this, arguments);
};
}();
var handleCancelShare = /*#__PURE__*/function () {
var _ref16 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee16(id) {
var res, data;
return regenerator_default.a.wrap(function _callee16$(_context16) {
while (1) {
switch (_context16.prev = _context16.next) {
case 0:
_context16.next = 2;
return Object(service_problemset["z" /* getTeachGroupDataById */])({
clazz: 'ItemBank',
id: id
});
case 2:
res = _context16.sent;
data = (res === null || res === void 0 ? void 0 : res.groups) || [];
joinGroupDataRef.current = [];
modal["a" /* default */].confirm({
centered: true,
width: 530,
okText: '确定撤销',
cancelText: '取消',
title: '本题已共享的教研团队',
maskClosable: true,
icon: null,
content: /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "font14 ".concat(Problemsetmodules_default.a.overflow)
}, /*#__PURE__*/external_window_React_default.a.createElement("p", {
className: "c-grey-999"
}, "\u9009\u4E2D\u5E76\u786E\u5B9A\uFF0C\u5373\u64A4\u9500\u672C\u9898\u5BF9\u9009\u4E2D\u6559\u7814\u56E2\u961F\u7684\u5206\u4EAB"), /*#__PURE__*/external_window_React_default.a.createElement(es_checkbox["a" /* default */].Group, {
className: Problemsetmodules_default.a.checkbox,
defaultValue: joinGroupDataRef.current,
onChange: function onChange(value) {
return joinGroupDataRef.current = value;
}
}, data === null || data === void 0 ? void 0 : data.map(function (item) {
return /*#__PURE__*/external_window_React_default.a.createElement(es_checkbox["a" /* default */], {
key: item.group_id,
value: item.group_id
}, item.name);
}))),
onOk: function () {
var _onOk2 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee15() {
return regenerator_default.a.wrap(function _callee15$(_context15) {
while (1) {
switch (_context15.prev = _context15.next) {
case 0:
return _context15.abrupt("return", new Promise( /*#__PURE__*/function () {
var _ref17 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee14(resolve, reject) {
var _data$map;
var group_ids, res;
return regenerator_default.a.wrap(function _callee14$(_context14) {
while (1) {
switch (_context14.prev = _context14.next) {
case 0:
if (joinGroupDataRef.current.length) {
_context14.next = 3;
break;
}
message["b" /* default */].warn('请选择需要撤销共享的教研团队');
return _context14.abrupt("return", reject());
case 3:
group_ids = data === null || data === void 0 ? void 0 : (_data$map = data.map(function (x) {
return x.group_id;
})) === null || _data$map === void 0 ? void 0 : _data$map.filter(function (id) {
return !joinGroupDataRef.current.includes(id);
});
_context14.next = 6;
return Object(service_problemset["j" /* batchShare */])({
ids: [id],
clazz: 'ItemBank',
group_ids: group_ids
});
case 6:
res = _context14.sent;
joinGroupDataRef.current = [];
if ((res === null || res === void 0 ? void 0 : res.status) === 0) {
message["b" /* default */].info('撤销共享成功');
handleReloadData();
}
return _context14.abrupt("return", resolve());
case 10:
case "end":
return _context14.stop();
}
}
}, _callee14);
}));
return function (_x16, _x17) {
return _ref17.apply(this, arguments);
};
}()));
case 1:
case "end":
return _context15.stop();
}
}
}, _callee15);
}));
function onOk() {
return _onOk2.apply(this, arguments);
}
return onOk;
}()
});
case 6:
case "end":
return _context16.stop();
}
}
}, _callee16);
}));
return function handleCancelShare(_x15) {
return _ref16.apply(this, arguments);
};
}();
var handleBasketDelete = function handleBasketDelete(type) {
dispatch({
type: 'problemset/setActionTabs',
payload: {
key: 'Problemset-BasketDelete',
params: {
type: type
}
}
});
};
var handleNewGroup = function handleNewGroup() {
dispatch({
type: 'problemset/setActionTabs',
payload: {
key: '新建文件夹',
params: params
}
});
return;
};
var handleNew = function handleNew() {
var newMapping = {
"discipline_id": "&discipline_id=".concat(params.discipline_id),
"sub_discipline_id": "&sub_discipline_id=".concat(params.sub_discipline_id),
"tag_discipline_id": "&sub_discipline_id=".concat(params.tag_discipline_id),
"difficulty": "&difficulty=".concat(params.difficulty),
"item_type": "&item_type=".concat(params.item_type),
"group_id": "&group_id=".concat(params.group_id || 0)
};
var url = "/problemset/newitem?pages=".concat(params.page);
Object.keys(newMapping).forEach(function (key) {
if (params[key]) {
url = url + newMapping[key];
}
});
umiExports["d" /* history */] === null || umiExports["d" /* history */] === void 0 ? void 0 : umiExports["d" /* history */].push(url);
};
var handleSelectAll = function handleSelectAll(selectAll) {
var ids = selectIds;
if (!(ids !== null && ids !== void 0 && ids.length)) {
return message["b" /* default */].info('请先选择试题');
}
if (basketTotal + ids.length > 200 && selectAll && isProblemset) {
message["b" /* default */].info("\u8BD5\u9898\u7BEE\u4E2D\u6700\u591A\u53EF\u518D\u52A0\u5165".concat(200 - basketTotal, "\u9898\uFF0C\u5F53\u524D\u9009\u4E2D").concat(ids.length, "\u9898\uFF0C\u8BF7\u91CD\u65B0\u9009\u62E9"));
return;
} // if (unpublishedAll.current) {
// message.info(`本页全部试题未发布,不能选择`);
// return;
// }
selectAll ? handleSelectAllRequest(ids) : handleUnselectAllRequest(ids);
};
var handleSelectAllRequest = /*#__PURE__*/function () {
var _ref18 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee18(preIds) {
var ids;
return regenerator_default.a.wrap(function _callee18$(_context18) {
while (1) {
switch (_context18.prev = _context18.next) {
case 0:
ids = Object(toConsumableArray["a" /* default */])(preIds);
problemsetList.forEach(function (e) {
if (ids.includes(e.id)) {
var _e$program_attr;
if (e.item_type === "PROGRAM" && ((_e$program_attr = e.program_attr) === null || _e$program_attr === void 0 ? void 0 : _e$program_attr.status) === 0) {
Object(lodash["remove"])(ids, function (t) {
return t === e.id;
});
}
}
});
modal["a" /* default */].confirm({
width: 530,
title: '提示',
className: "custom-modal-divider ",
icon: null,
centered: true,
okText: '确定',
cancelText: '取消',
content: /*#__PURE__*/external_window_React_default.a.createElement("div", null, "\u5F53\u524D\u5DF2\u9009\u62E9", preIds.length, "\u9053\u8BD5\u9898\uFF0C\u5DF2\u52A0\u5165\u8FC7\u7684\u8BD5\u9898\u6216\u672A\u53D1\u5E03\u7684\u7F16\u7A0B\u9898\u5C06\u4E0D\u4F1A\u91CD\u590D\u52A0\u5165 "),
onOk: function () {
var _onOk3 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee17() {
var res;
return regenerator_default.a.wrap(function _callee17$(_context17) {
while (1) {
switch (_context17.prev = _context17.next) {
case 0:
if (!params.exam_id) {
_context17.next = 6;
break;
}
_context17.next = 3;
return Object(service_problemset["q" /* examinationItems */])({
exam_id: params.exam_id,
item_bank_ids: ids
});
case 3:
res = _context17.sent;
_context17.next = 15;
break;
case 6:
if (!(params !== null && params !== void 0 && params.exercise_id)) {
_context17.next = 12;
break;
}
_context17.next = 9;
return Object(fetch["a" /* default */])("/api/exercises/".concat(params === null || params === void 0 ? void 0 : params.exercise_id, "/select_questions.json"), {
method: 'post',
body: {
item_bank_ids: ids
}
});
case 9:
res = _context17.sent;
_context17.next = 15;
break;
case 12:
_context17.next = 14;
return dispatch({
type: 'problemset/select',
payload: {
item_bank_ids: ids
}
});
case 14:
res = _context17.sent;
case 15:
if (res.status === 0) {
handleReloadData();
getBasketList();
}
case 16:
case "end":
return _context17.stop();
}
}
}, _callee17);
}));
function onOk() {
return _onOk3.apply(this, arguments);
}
return onOk;
}()
});
case 3:
case "end":
return _context18.stop();
}
}
}, _callee18);
}));
return function handleSelectAllRequest(_x18) {
return _ref18.apply(this, arguments);
};
}();
var handleUnselectAllRequest = /*#__PURE__*/function () {
var _ref19 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee19(ids) {
var res;
return regenerator_default.a.wrap(function _callee19$(_context19) {
while (1) {
switch (_context19.prev = _context19.next) {
case 0:
if (!params.exam_id) {
_context19.next = 6;
break;
}
_context19.next = 3;
return Object(fetch["a" /* default */])("/api/examination_banks/".concat(params.exam_id, "/batch_revoke_item.json"), {
method: 'post',
body: {
item_ids: ids
}
});
case 3:
res = _context19.sent;
_context19.next = 15;
break;
case 6:
if (!(params !== null && params !== void 0 && params.exercise_id)) {
_context19.next = 12;
break;
}
_context19.next = 9;
return Object(fetch["a" /* default */])("/api/exercise_questions/delete_by_item_bank.json ", {
method: 'post',
body: {
exercise_id: params === null || params === void 0 ? void 0 : params.exercise_id,
item_bank_ids: ids
}
});
case 9:
res = _context19.sent;
_context19.next = 15;
break;
case 12:
_context19.next = 14;
return dispatch({
type: 'problemset/unselectAll',
payload: {
item_ids: ids
}
});
case 14:
res = _context19.sent;
case 15:
if (res.status === 0) {
handleReloadData();
getBasketList();
}
case 16:
case "end":
return _context19.stop();
}
}
}, _callee19);
}));
return function handleUnselectAllRequest(_x19) {
return _ref19.apply(this, arguments);
};
}();
var handleShixuns = /*#__PURE__*/function () {
var _ref20 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee20(ids) {
var res;
return regenerator_default.a.wrap(function _callee20$(_context20) {
while (1) {
switch (_context20.prev = _context20.next) {
case 0:
if (!(isProblemset && basketTotal === 200)) {
_context20.next = 3;
break;
}
message["b" /* default */].info('已选200个试题(不能在选用更多试题)');
return _context20.abrupt("return");
case 3:
if (!params.exam_id) {
_context20.next = 10;
break;
}
_context20.next = 6;
return Object(service_problemset["q" /* examinationItems */])({
exam_id: params.exam_id,
shixun_ids: ids
});
case 6:
res = _context20.sent;
if (res.status === 0) {
handleReloadData();
}
_context20.next = 14;
break;
case 10:
_context20.next = 12;
return dispatch({
type: 'problemset/select',
payload: {
shixun_ids: ids
}
});
case 12:
res = _context20.sent;
if (res.status === 0) {
getBasketList();
handleReloadData();
}
case 14:
case "end":
return _context20.stop();
}
}
}, _callee20);
}));
return function handleShixuns(_x20) {
return _ref20.apply(this, arguments);
};
}();
var handleShixunChange = function handleShixunChange() {
dispatch({
type: "classroomList/setActionTabs",
payload: {
key: "选用实践项目"
}
});
};
var handleBatchShare = function handleBatchShare(id) {
var _problemset$teachGrou, _problemset$teachGrou2, _problemset$teachGrou3, _problemset$teachGrou4;
if (!(selectIds !== null && selectIds !== void 0 && selectIds.length) && !id) {
dispatch({
type: 'problemset/setActionTabs',
payload: {
key: '共享试题',
params: params
}
});
return;
}
if (!((_problemset$teachGrou = problemset.teachGroupData) !== null && _problemset$teachGrou !== void 0 && (_problemset$teachGrou2 = _problemset$teachGrou.groups) !== null && _problemset$teachGrou2 !== void 0 && _problemset$teachGrou2.length)) {
return message["b" /* default */].info('您暂未创建或加入任何教研团队,请前往“我的个人中心-教研团队”查看');
}
modal["a" /* default */].confirm({
centered: true,
width: 530,
okText: '确定',
cancelText: '取消',
title: '共享至教研团队',
maskClosable: true,
icon: null,
content: /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "font14 ".concat(Problemsetmodules_default.a.overflow)
}, /*#__PURE__*/external_window_React_default.a.createElement(es_checkbox["a" /* default */].Group, {
className: Problemsetmodules_default.a.checkbox,
defaultValue: joinGroupDataRef.current,
onChange: function onChange(value) {
return joinGroupDataRef.current = value;
}
}, (_problemset$teachGrou3 = problemset.teachGroupData) === null || _problemset$teachGrou3 === void 0 ? void 0 : (_problemset$teachGrou4 = _problemset$teachGrou3.groups) === null || _problemset$teachGrou4 === void 0 ? void 0 : _problemset$teachGrou4.map(function (item) {
return /*#__PURE__*/external_window_React_default.a.createElement(es_checkbox["a" /* default */], {
key: item.group_id,
value: item.group_id
}, item.name);
}))),
onOk: function onOk() {
return new Promise( /*#__PURE__*/function () {
var _ref21 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee21(resolve, reject) {
var _joinGroupDataRef$cur2;
var res;
return regenerator_default.a.wrap(function _callee21$(_context21) {
while (1) {
switch (_context21.prev = _context21.next) {
case 0:
if ((_joinGroupDataRef$cur2 = joinGroupDataRef.current) !== null && _joinGroupDataRef$cur2 !== void 0 && _joinGroupDataRef$cur2.length) {
_context21.next = 3;
break;
}
message["b" /* default */].info('请先选择教研团队');
return _context21.abrupt("return", reject());
case 3:
_context21.next = 5;
return Object(service_problemset["j" /* batchShare */])({
ids: id ? [id] : selectIds,
clazz: 'ItemBank',
group_ids: joinGroupDataRef.current
});
case 5:
res = _context21.sent;
if ((res === null || res === void 0 ? void 0 : res.status) === 0) {
message["b" /* default */].info('所选试题成功分享至教研团队');
joinGroupDataRef.current = [];
setSelectIds([]);
handleReloadData();
resolve();
}
case 7:
case "end":
return _context21.stop();
}
}
}, _callee21);
}));
return function (_x21, _x22) {
return _ref21.apply(this, arguments);
};
}());
}
});
};
var handleBatchDelete = function handleBatchDelete() {
var handleOk = /*#__PURE__*/function () {
var _ref22 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee22() {
var res;
return regenerator_default.a.wrap(function _callee22$(_context22) {
while (1) {
switch (_context22.prev = _context22.next) {
case 0:
setBatchDeleteLoading(true);
_context22.next = 3;
return Object(service_problemset["h" /* batchQuestionsDelete */])({
ids: selectIds
});
case 3:
res = _context22.sent;
setBatchDeleteLoading(false);
if ((res === null || res === void 0 ? void 0 : res.status) === 0) {
modal["a" /* default */].info({
centered: true,
width: 530,
className: "custom-modal-divider ",
okText: '确定',
title: '删除结果',
maskClosable: false,
keyboard: false,
icon: null,
content: "\u672C\u6B21\u6210\u529F\u5220\u9664".concat(res.success, "\u6761\u8BD5\u9898\uFF0C\u6709").concat(res.fail, "\u6761\u8BD5\u9898\u56E0\u4E3A\u516C\u5F00\u65E0\u6CD5\u5220\u9664\uFF0C\u8BF7\u64A4\u9500\u540E\u518D\u8FDB\u884C\u5220\u9664\u3002"),
onOk: function onOk() {
handleDeleteData(new Array(res.success));
}
});
}
case 6:
case "end":
return _context22.stop();
}
}
}, _callee22);
}));
return function handleOk() {
return _ref22.apply(this, arguments);
};
}();
if (selectIds !== null && selectIds !== void 0 && selectIds.length) {
modal["a" /* default */].confirm({
centered: true,
width: 530,
className: "custom-modal-divider ",
okText: '确定',
title: '提示',
cancelText: '取消',
// maskClosable: true,
icon: null,
content: "\u672C\u6B21\u9009\u4E2D\u4E86".concat(selectIds === null || selectIds === void 0 ? void 0 : selectIds.length, "\u6761\u8BD5\u9898\u8FDB\u884C\u5220\u9664\u64CD\u4F5C\uFF0C\u5220\u9664\u540E\u5C06\u65E0\u6CD5\u6062\u590D\uFF0C\u8BF7\u786E\u8BA4\u662F\u5426\u5220\u9664\uFF1F"),
onOk: handleOk
});
return;
}
message["b" /* default */].warn('请选择需要删除的试题');
};
var handleBatchSetPublic = function handleBatchSetPublic() {
var _problemsetList$filte, _problemsetList$filte2;
if (!(selectIds !== null && selectIds !== void 0 && selectIds.length)) {
return message["b" /* default */].info('请先选择试题');
}
if (problemsetList !== null && problemsetList !== void 0 && (_problemsetList$filte = problemsetList.filter(function (x) {
return selectIds.includes(x.id);
})) !== null && _problemsetList$filte !== void 0 && _problemsetList$filte.every(function (x) {
return x.public;
})) {
return message["b" /* default */].info('所选试题已公开,请重新选择');
}
if (problemsetList !== null && problemsetList !== void 0 && (_problemsetList$filte2 = problemsetList.filter(function (x) {
return selectIds.includes(x.id);
})) !== null && _problemsetList$filte2 !== void 0 && _problemsetList$filte2.find(function (x) {
var _x$program_attr;
return x.item_type === "PROGRAM" && ((_x$program_attr = x.program_attr) === null || _x$program_attr === void 0 ? void 0 : _x$program_attr.status) === 0;
})) {
return message["b" /* default */].info('已选题中存在未发布的编程题');
}
window.localStorage.getItem('problemset-set-public-hint-flag') === "1" || user.userInfo.professional_certification ? handleBatchSetPublicRequest() : modal["a" /* default */].confirm({
centered: true,
width: 530,
okText: '确定',
cancelText: '取消',
title: '公开规则告知',
maskClosable: true,
icon: null,
content: /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "font16 c-grey-333"
}, "\u516C\u5F00\u5E76\u7ECF\u5E73\u53F0\u5BA1\u6838\u540E\uFF0C\u8BE5\u9898\u5C06\u5728\u516C\u5171\u8BD5\u9898\u5E93\u53EF\u89C1\uFF0CEducoder\u6240\u6709\u7528\u6237\u5747\u53EF\u4F7F\u7528\u8BE5\u9898\u3002", /*#__PURE__*/external_window_React_default.a.createElement("br", null), "\u516C\u5F00\u540E\u4E0D\u53EF\u4FEE\u6539\uFF0C\u4F46\u53EF\u4EE5\u64A4\u9500\uFF1B\u64A4\u9500\u516C\u5F00\u540E\u53EF\u4EE5\u4FEE\u6539\u3002", /*#__PURE__*/external_window_React_default.a.createElement("br", null), "\u662F\u5426\u786E\u8BA4\u7533\u8BF7\u516C\u5F00\uFF1F", /*#__PURE__*/external_window_React_default.a.createElement("br", null), /*#__PURE__*/external_window_React_default.a.createElement(es_checkbox["a" /* default */], {
className: "mt10",
defaultChecked: false,
onChange: function onChange(e) {
return hintFlagRef.current = e.target.checked;
}
}, "\u4E0D\u518D\u63D0\u793A")),
onOk: function onOk() {
handleBatchSetPublicRequest();
}
});
};
var handleBatchSetPublicRequest = /*#__PURE__*/function () {
var _ref23 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee23(id) {
var source, res;
return regenerator_default.a.wrap(function _callee23$(_context23) {
while (1) {
switch (_context23.prev = _context23.next) {
case 0:
source = activeTabsKey === "3" ? 1 : 2; // 试题来源;1 教研团队分享的, 2 我创建的
_context23.next = 3;
return Object(service_problemset["g" /* batchPublic */])({
ids: id ? [id] : selectIds,
source: source
});
case 3:
res = _context23.sent;
if (res.status === 0) {
hintFlagRef.current && window.localStorage.setItem('problemset-set-public-hint-flag', '1');
hintFlagRef.current = false;
setSelectIds([]);
handleReloadData();
}
case 5:
case "end":
return _context23.stop();
}
}
}, _callee23);
}));
return function handleBatchSetPublicRequest(_x23) {
return _ref23.apply(this, arguments);
};
}();
var handlePublish = function handlePublish(identifier) {
modal["a" /* default */].confirm({
centered: true,
icon: null,
title: '提示',
className: 'custom-modal-divider',
content: /*#__PURE__*/external_window_React_default.a.createElement(external_window_React_default.a.Fragment, null, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.modalContent
}, "\u53D1\u5E03\u540E\u5373\u53EF\u5E94\u7528\u5230\u81EA\u5DF1\u7BA1\u7406\u7684\u8BFE\u5802"), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.modalContent
}, " \u662F\u5426\u786E\u8BA4\u53D1\u5E03?")),
okText: '确定',
cancelText: '取消',
onOk: function () {
var _onOk4 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee24() {
var res;
return regenerator_default.a.wrap(function _callee24$(_context24) {
while (1) {
switch (_context24.prev = _context24.next) {
case 0:
_context24.next = 2;
return Object(service_problemset["H" /* programPublish */])({
identifier: identifier
});
case 2:
res = _context24.sent;
if ((res === null || res === void 0 ? void 0 : res.status) === 0) {
message["b" /* default */].success('发布成功');
handleReloadData();
}
case 4:
case "end":
return _context24.stop();
}
}
}, _callee24);
}));
function onOk() {
return _onOk4.apply(this, arguments);
}
return onOk;
}()
});
};
var handleCancelPublish = function handleCancelPublish(identifier) {
modal["a" /* default */].confirm({
centered: true,
icon: null,
title: '提示',
className: 'custom-modal-divider',
content: /*#__PURE__*/external_window_React_default.a.createElement("p", {
className: Problemsetmodules_default.a.modalContent
}, "\u662F\u5426\u786E\u8BA4\u64A4\u9500\u53D1\u5E03\uFF1F"),
okText: '确定',
cancelText: '取消',
onOk: function () {
var _onOk5 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/regenerator_default.a.mark(function _callee25() {
var res;
return regenerator_default.a.wrap(function _callee25$(_context25) {
while (1) {
switch (_context25.prev = _context25.next) {
case 0:
_context25.next = 2;
return Object(service_problemset["G" /* programCancelPublish */])({
identifier: identifier
});
case 2:
res = _context25.sent;
if ((res === null || res === void 0 ? void 0 : res.status) === 0) {
message["b" /* default */].success('撤销发布成功');
handleReloadData();
}
case 4:
case "end":
return _context25.stop();
}
}
}, _callee25);
}));
function onOk() {
return _onOk5.apply(this, arguments);
}
return onOk;
}()
});
};
var handleChangeTeachGroup = function handleChangeTeachGroup(ids) {
params.page = 1;
params.group_id = ids[0] || null;
delete params.id;
setParams(params);
getItemBanks(params);
};
var handleMenuChange = function handleMenuChange(item) {
params.sort_by = item.type;
params.sort_direction = item.direction;
params.page = 1;
params.per_page = 20;
setSortMenuName(item.name);
setParams(params);
getItemBanks(params);
};
var handleShare = function handleShare() {
params.page = 1;
setParams(params);
getItemBanks(params);
};
var handleAddOk = function handleAddOk(id) {
params.discipline_id = '';
params.sub_discipline_id = '';
params.tag_discipline_id = '';
params.item_type = null;
params.difficulty = null;
params.page = 1;
params.per_page = 20;
params.group_id = id;
setKnowledgeValue(-1);
setParams(params);
getItemBanks(params);
};
var handleExport = function handleExport() {
if (!(selectIds !== null && selectIds !== void 0 && selectIds.length)) {
dispatch({
type: 'problemset/setActionTabs',
payload: {
key: '导出试题',
params: params
}
});
return;
}
modal["a" /* default */].confirm({
centered: true,
width: 530,
okText: '确定',
cancelText: '取消',
title: '导出提示',
maskClosable: true,
icon: null,
content: /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "font14 ".concat(Problemsetmodules_default.a.overflow)
}, "\u5DF2\u9009\u4E2D", selectIds === null || selectIds === void 0 ? void 0 : selectIds.length, "\u9053\u9898\uFF0C\u5176\u4E2D\u7F16\u7A0B\u9898\u4E0E\u5B9E\u8BAD\u9898\u6682\u4E0D\u652F\u6301\u5BFC\u51FA\u3002"),
onOk: function onOk() {
Object(utils_export["k" /* ExportProblemset */])({
ids: selectIds
});
}
});
};
var menu = /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */], null, showSelectButton && /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */].Item, {
onClick: function onClick() {
return handleSelectAll(true);
}
}, "\u6279\u91CF\u52A0\u5165"), showSelectButton && /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */].Item, {
onClick: function onClick() {
return handleSelectAll(false);
}
}, "\u6279\u91CF\u79FB\u51FA"), activeTabsKey === "0" && isProblemset && /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */].Item, {
onClick: function onClick() {
return handleOnMoveTo();
}
}, "\u79FB\u52A8\u5230"), activeTabsKey === "0" && isProblemset && /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */].Item, {
onClick: handleBatchSetPublic
}, "\u6279\u91CF\u516C\u5F00"), activeTabsKey === "0" && isProblemset && /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */].Item, {
onClick: function onClick() {
return handleBatchShare();
}
}, "\u6279\u91CF\u5171\u4EAB"), activeTabsKey === "0" && isProblemset && /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */].Item, {
onClick: handleBatchDelete
}, "\u6279\u91CF\u5220\u9664"));
var onSelectChange = function onSelectChange(keys) {
setSelectIds(keys);
};
var handleSelectCheckedAll = function handleSelectCheckedAll(checked) {
setSelectIds(checked ? problemsetList === null || problemsetList === void 0 ? void 0 : problemsetList.map(function (x) {
return x.id;
}) : []);
};
var goPath = function goPath() {
var url = '/problemset/preview';
if (params.exam_id) {
url = "/paperlibrary/edit/".concat(params.exam_id);
}
if (params !== null && params !== void 0 && params.exercise_id) {
var _match$params3;
url = "/classrooms/".concat(match === null || match === void 0 ? void 0 : (_match$params3 = match.params) === null || _match$params3 === void 0 ? void 0 : _match$params3.coursesId, "/exercise/").concat(params === null || params === void 0 ? void 0 : params.exercise_id, "/edit");
}
umiExports["d" /* history */].push(url);
}; // const rowSelection = {
// selectedRowKeys: selectIds,
// // columnTitle: '全选',
// columnWidth: 40,
// getCheckboxProps: (record: any) => ({
// disabled: record.id < 0,
// style: { display: record.id < 0 ? 'none' : 'block' }
// }),
// onChange: onSelectChange
// };
var questionType = [{
type: 'SINGLE',
name: '单选题'
}, {
type: 'MULTIPLE',
name: '多选题'
}, {
type: 'JUDGMENT',
name: '判断题'
}, {
type: 'PROGRAM',
name: '编程题'
}, {
type: 'SUBJECTIVE',
name: '简答题'
}, {
type: 'COMPLETION',
name: '填空题'
}, {
type: 'COMBINATION',
name: '组合题'
}];
var difficultyMapping = {
1: "简单",
2: "适中",
3: "困难"
};
var renderActionBtns = function renderActionBtns(v, r) {
var _r$program_attr;
var domBtn = r.id < 0 ? '--' : !showSelectButton ? /*#__PURE__*/external_window_React_default.a.createElement(external_window_React_default.a.Fragment, null) : r[params.exercise_id ? 'added' : 'choosed'] ? /*#__PURE__*/external_window_React_default.a.createElement("span", {
key: 1,
className: Problemsetmodules_default.a.btnCancel,
onClick: function onClick(e) {
e.target.style.pointerEvents = 'none';
handleCancel(r.id);
}
}, isProblemset ? '移出试题篮' : /*#__PURE__*/external_window_React_default.a.createElement("span", null, /*#__PURE__*/external_window_React_default.a.createElement("b", {
className: "iconfont icon-yichu ".concat(Problemsetmodules_default.a.cancelC)
}), "\u79FB\u51FA")) : r.item_type === "PROGRAM" && ((_r$program_attr = r.program_attr) === null || _r$program_attr === void 0 ? void 0 : _r$program_attr.status) === 0 ? /*#__PURE__*/external_window_React_default.a.createElement(tooltip["a" /* default */], {
placement: "top",
title: "\u7F16\u7A0B\u9898\u672A\u53D1\u5E03\uFF0C\u4E0D\u80FD\u52A0\u5165\uFF01"
}, /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: Problemsetmodules_default.a.btnAdd,
style: {
cursor: 'not-allowed',
background: '#E3E6EC',
color: '#B1BACD'
}
}, " ", isProblemset ? '加入试题篮' : /*#__PURE__*/external_window_React_default.a.createElement("span", {
style: {
padding: '0 3px'
}
}, /*#__PURE__*/external_window_React_default.a.createElement("b", {
className: "iconfont icon-jiaru ".concat(Problemsetmodules_default.a.addC)
}), "\u52A0\u5165"), " ")) : /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: Problemsetmodules_default.a.btnAdd,
onClick: function onClick() {
return handleSelect(r.id);
}
}, isProblemset ? '加入试题篮' : /*#__PURE__*/external_window_React_default.a.createElement("span", {
style: {
padding: '0 3px'
}
}, /*#__PURE__*/external_window_React_default.a.createElement("b", {
className: "iconfont icon-jiaru ".concat(Problemsetmodules_default.a.addC)
}), "\u52A0\u5165"));
var dom = /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: Problemsetmodules_default.a.actonBtn
}, domBtn, r.id > 0 && /*#__PURE__*/external_window_React_default.a.createElement(Topic_MenuMore, {
isProblemset: isProblemset,
user: user,
key: r.id,
data: r,
activeTabsKey: activeTabsKey,
selectIds: selectIds,
onCollect: handleCollect,
onSetPublic: handleSetPublic,
onStartExperience: handleStartExperience,
onCorrection: handleCorrection,
onPublicReview: handlePublicReview,
onSetPrivate: handleSetPrivate,
onDelete: handleDelete,
onCancel: handleCancel,
onSelect: handleSelect,
onMoveTo: handleOnMoveTo,
onSetShare: handleSetShare,
onCancelShare: handleCancelShare,
onPublish: handlePublish,
onCancelPublish: handleCancelPublish
}));
return dom;
};
var columns = [{
title: activeTabsKey === '0' ? '文件夹/题目' : '题目',
dataIndex: 'name',
key: 'name',
align: 'left',
render: function render(v, item) {
return item.id > 0 ? /*#__PURE__*/external_window_React_default.a.createElement(Topic, {
isProblemset: isProblemset,
user: user,
key: item.id,
data: item,
activeTabsKey: activeTabsKey,
selectIds: selectIds,
onCollect: handleCollect,
onSetPublic: handleSetPublic,
onStartExperience: handleStartExperience,
onCorrection: handleCorrection,
onPublicReview: handlePublicReview,
onSetPrivate: handleSetPrivate,
onDelete: handleDelete,
onCancel: handleCancel,
onSelect: handleSelect,
onMoveTo: handleOnMoveTo,
onSetShare: handleSetShare,
onCancelShare: handleCancelShare,
onPublish: handlePublish,
onCancelPublish: handleCancelPublish
}) : /*#__PURE__*/external_window_React_default.a.createElement(Folder, {
isProblemset: isProblemset,
onRenameOk: handleReloadData,
onDeleteOk: handleDeleteData,
user: user,
key: item.id,
data: item,
onOpen: handleOpen,
onMove: handleMove
});
}
}, {
title: '题型',
dataIndex: 'item_type',
key: 'item_type',
align: 'center',
width: 60,
render: function render(v) {
var _questionType$find;
return /*#__PURE__*/external_window_React_default.a.createElement("div", null, ((_questionType$find = questionType.find(function (item) {
return item.type === v;
})) === null || _questionType$find === void 0 ? void 0 : _questionType$find.name) || '--');
}
}, {
title: '难易度',
dataIndex: 'difficulty',
key: 'difficulty',
align: 'center',
width: 60,
render: function render(v, r) {
return /*#__PURE__*/external_window_React_default.a.createElement("span", null, (r === null || r === void 0 ? void 0 : r.id) < 0 ? '--' : difficultyMapping[v]);
}
}, {
title: '使用次数',
dataIndex: 'quotes',
key: 'quotes',
align: 'center',
ellipsis: true,
width: 80,
render: function render(v, r) {
return /*#__PURE__*/external_window_React_default.a.createElement("span", null, (r === null || r === void 0 ? void 0 : r.id) < 0 ? '--' : v);
} // sorter: true
}, {
title: '创建者',
dataIndex: 'author',
key: 'author',
ellipsis: true,
align: 'center',
width: 94,
render: function render(v) {
return /*#__PURE__*/external_window_React_default.a.createElement("span", null, v === null || v === void 0 ? void 0 : v.name);
}
}, {
title: '知识点',
dataIndex: 'tag_discipline',
key: 'tag_discipline',
align: 'center',
width: 146,
// sorter: true
render: function render(v) {
return /*#__PURE__*/external_window_React_default.a.createElement("span", null, v || '--');
}
}, {
title: '更新时间',
dataIndex: 'updated_at',
key: 'updated_at',
align: 'center',
width: 146,
// sorter: true,
render: function render(v, r) {
return /*#__PURE__*/external_window_React_default.a.createElement("span", null, (r === null || r === void 0 ? void 0 : r.id) < 0 ? '--' : v);
}
}, {
title: '操作',
dataIndex: 'choosed',
key: 'choosed',
align: 'center',
width: 146,
render: renderActionBtns
}];
return /*#__PURE__*/external_window_React_default.a.createElement(external_window_React_["Fragment"], null, /*#__PURE__*/external_window_React_default.a.createElement("section", null, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.wrap
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.title
}, "\u8BD5\u9898\u5E93"), /*#__PURE__*/external_window_React_default.a.createElement(LanguageSelect["a" /* LanguageSelect */], {
showSelectAll: false,
className: Problemsetmodules_default.a.select // selectAll={selectAll}
// onSelectAll={handleSelectAll}
,
disciplinesData: (_problemset$disciplin10 = problemset.disciplinesData) === null || _problemset$disciplin10 === void 0 ? void 0 : _problemset$disciplin10.disciplines,
knowledgeData: knowledgeData,
directionValue: params.discipline_id,
subDisciplineValue: params.sub_discipline_id,
typeValue: params.item_type,
showKnowledge: true,
knowledgeValue: knowledgeValue,
difficultyValue: params.difficulty,
showShixun: !Object(authority["m" /* isCommonStudent */])() && !params.exercise_id,
onShixunChange: handleShixunChange,
onDirectionChange: handleDirectionChange,
onTypeChange: handleTypeChange,
onDifficultyChange: handleDifficultyChange,
onKnowledgeChange: handleKnowledgeChange
}), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.contentWrap
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.tabsWrap
}, /*#__PURE__*/external_window_React_default.a.createElement(tabs["a" /* default */], {
activeKey: activeTabsKey,
onChange: handleTabsChange,
tabBarExtraContent: /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.searchWrap
}, activeTabsKey === "0" && isProblemset && /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.searchContent
}, /*#__PURE__*/external_window_React_default.a.createElement(es_button["a" /* default */], {
type: "primary",
ghost: true,
onClick: handleNewGroup,
className: "mr20"
}, /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: "iconfont icon-xinjianwenjianjia mr5 font14"
}), "\u65B0\u5EFA\u6587\u4EF6\u5939"), /*#__PURE__*/external_window_React_default.a.createElement(es_button["a" /* default */], {
type: "primary",
className: "mr30",
ghost: true,
onClick: handleNew
}, /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: "iconfont icon-xinzengshiti2 mr5 font14"
}), "\u65B0\u589E\u8BD5\u9898")), /*#__PURE__*/external_window_React_default.a.createElement(Problemset_Search, {
allowClear: true,
className: Problemsetmodules_default.a.search,
style: {
width: 300
},
placeholder: "\u8BF7\u8F93\u5165\u5173\u952E\u8BCD\u641C\u7D22",
value: params.keyword,
onChange: function onChange(e) {
params.keyword = e.target.value;
setParams(Object(objectSpread2["a" /* default */])({}, params));
},
onSearch: handleSearch
}))
}, /*#__PURE__*/external_window_React_default.a.createElement(TabPane, {
tab: "\u516C\u5171",
key: "1"
}), ((_problemset$teachGrou5 = problemset.teachGroupData) === null || _problemset$teachGrou5 === void 0 ? void 0 : (_problemset$teachGrou6 = _problemset$teachGrou5.groups) === null || _problemset$teachGrou6 === void 0 ? void 0 : _problemset$teachGrou6.length) && /*#__PURE__*/external_window_React_default.a.createElement(TabPane, {
tab: "\u6559\u7814\u5171\u4EAB",
key: "3"
}), !Object(authority["o" /* isCommonSuperAdminOrOperation */])() && !Object(authority["m" /* isCommonStudent */])() && /*#__PURE__*/external_window_React_default.a.createElement(TabPane, {
tab: "\u6536\u85CF\u5939",
key: "2"
}), /*#__PURE__*/external_window_React_default.a.createElement(TabPane, {
tab: "\u6211\u521B\u5EFA\u7684",
key: "0"
}))), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.batchWrap
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
style: {
flex: 1,
display: 'flex',
alignItems: 'center'
}
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "font14"
}, /*#__PURE__*/external_window_React_default.a.createElement(dropdown["a" /* default */], {
overlay: /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */], {
selectedKeys: [SortMenuName]
}, SortMenus === null || SortMenus === void 0 ? void 0 : SortMenus.map(function (item, index) {
return /*#__PURE__*/external_window_React_default.a.createElement(es_menu["a" /* default */].Item, {
key: item.name,
onClick: function onClick() {
return handleMenuChange(item);
}
}, item.name);
}))
}, /*#__PURE__*/external_window_React_default.a.createElement("span", {
style: {
color: '#464F66'
}
}, /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: "iconfont icon-paixu font14 mr5 c-light-primary"
}), SortMenuName))), activeTabsKey === "3" && /*#__PURE__*/external_window_React_default.a.createElement("div", {
style: {
paddingTop: 20,
marginLeft: 20
}
}, /*#__PURE__*/external_window_React_default.a.createElement(TeachGroup_TeachGroup, {
dispatch: dispatch,
problemset: problemset,
groupIds: params.group_id ? [params.group_id] : [],
onChangeTeachGroup: handleChangeTeachGroup
}))), /*#__PURE__*/external_window_React_default.a.createElement("div", null, activeTabsKey === "0" && isProblemset && /*#__PURE__*/external_window_React_default.a.createElement(es_button["a" /* default */], {
onClick: handleExport,
type: "link"
}, /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: "iconfont icon-daochushiti mr5 c-light-primary"
}), /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: "c-light-primary"
}, "\u5BFC\u51FA\u8BD5\u9898")))), backIcon ? /*#__PURE__*/external_window_React_default.a.createElement("div", null, /*#__PURE__*/external_window_React_default.a.createElement(es_button["a" /* default */], {
style: {
paddingLeft: 0,
marginLeft: 25
},
onClick: function onClick() {
params.page = 1;
params.keyword = null;
delete params.id;
setParams(params);
setBackIcon(false);
getItemBanks(params);
},
type: "link"
}, " ", /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: "iconfont icon-fanhui2 font14"
}), "\u8FD4\u56DE"), /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: "font14 mr20 c-grey-333"
}, "\u641C\u7D22\u201C", params.keyword, "\u201D")) : activeTabsKey === '0' ? /*#__PURE__*/external_window_React_default.a.createElement("div", {
style: {
overflow: 'hidden',
height: show === 1 ? 208 : 'auto' // opacity: show ? 1 : 0
},
ref: treeDataWarp,
className: Problemsetmodules_default.a.treeWarp
}, /*#__PURE__*/external_window_React_default.a.createElement(components_Crumbs, {
data: navigation,
onClick: handleOpen
}), /*#__PURE__*/external_window_React_default.a.createElement(spin["a" /* default */], {
spinning: folderLoading
}, treeData === null || treeData === void 0 ? void 0 : treeData.map(function (item) {
return /*#__PURE__*/external_window_React_default.a.createElement(Folder, {
isProblemset: isProblemset,
onRenameOk: function onRenameOk() {
moveRef.current = true;
handleReloadData();
},
onDeleteOk: function onDeleteOk() {
moveRef.current = true;
handleReloadData();
},
user: user,
key: item.id,
data: item,
onOpen: handleOpen,
onMove: handleMove
});
})), !!show && /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.action
}, show === 1 && /*#__PURE__*/external_window_React_default.a.createElement("span", {
onClick: function onClick() {
return setShow(2);
}
}, "\u5C55\u5F00", /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: "iconfont icon-xiala"
})), show === 2 && /*#__PURE__*/external_window_React_default.a.createElement("span", {
onClick: function onClick() {
return setShow(1);
}
}, "\u6536\u8D77", /*#__PURE__*/external_window_React_default.a.createElement("i", {
style: {
transform: 'scale(0.5) rotate(180deg) translateY(2px)'
},
className: "iconfont icon-xiala"
})))) : null, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.contentListWrap
}, problemsetCount !== 0 ? /*#__PURE__*/external_window_React_default.a.createElement(spin["a" /* default */], {
size: "large",
spinning: loading['problemset/getItemBanks']
}, problemsetList.map(function (v, index) {
var _questionType$find2, _v$author;
return /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.li
}, /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.top
}, /*#__PURE__*/external_window_React_default.a.createElement(Topic, {
isProblemset: isProblemset,
user: user,
key: v.id,
data: v,
activeTabsKey: activeTabsKey,
selectIds: selectIds,
onCollect: handleCollect,
onSetPublic: handleSetPublic,
onStartExperience: handleStartExperience,
onCorrection: handleCorrection,
onPublicReview: handlePublicReview,
onSetPrivate: handleSetPrivate,
onDelete: handleDelete,
onCancel: handleCancel,
onSelect: handleSelect,
onSelectCheckBox: onSelectChange,
onMoveTo: handleOnMoveTo,
onSetShare: handleSetShare,
onCancelShare: handleCancelShare,
onPublish: handlePublish,
onCancelPublish: handleCancelPublish
})), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.bottom
}, /*#__PURE__*/external_window_React_default.a.createElement("p", {
className: Problemsetmodules_default.a.actionLeftItem
}, (_questionType$find2 = questionType.find(function (item) {
return item.type === v.item_type;
})) === null || _questionType$find2 === void 0 ? void 0 : _questionType$find2.name), /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: Problemsetmodules_default.a.line
}), /*#__PURE__*/external_window_React_default.a.createElement("p", {
className: Problemsetmodules_default.a.actionLeftItem
}, difficultyMapping[v.difficulty]), /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: Problemsetmodules_default.a.line
}), /*#__PURE__*/external_window_React_default.a.createElement("p", {
className: Problemsetmodules_default.a.actionLeftItem
}, "\u521B\u5EFA\u8005:", /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: "c-grey-333"
}, v === null || v === void 0 ? void 0 : (_v$author = v.author) === null || _v$author === void 0 ? void 0 : _v$author.name)), /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: Problemsetmodules_default.a.line
}), /*#__PURE__*/external_window_React_default.a.createElement("p", {
className: Problemsetmodules_default.a.actionLeftItem
}, "\u66F4\u65B0:", /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: "c-grey-333"
}, v === null || v === void 0 ? void 0 : v.updated_at)), /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: Problemsetmodules_default.a.line
}), /*#__PURE__*/external_window_React_default.a.createElement("p", {
className: Problemsetmodules_default.a.actionLeftItem
}, "\u4F7F\u7528\u6B21\u6570:", /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: "c-grey-333"
}, v === null || v === void 0 ? void 0 : v.quotes)), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.more
}, renderActionBtns({}, v))));
})) : /*#__PURE__*/external_window_React_default.a.createElement(spin["a" /* default */], {
size: "large",
spinning: loading['problemset/getItemBanks']
}, /*#__PURE__*/external_window_React_default.a.createElement(NoData["a" /* default */], null))), problemsetCount !== 0 && /*#__PURE__*/external_window_React_default.a.createElement(pagination["a" /* default */], {
showSizeChanger: false,
showQuickJumper: true,
onChange: handleChangePage,
defaultCurrent: 1,
pageSize: params === null || params === void 0 ? void 0 : params.per_page,
current: params.page || 1,
total: problemsetCount,
showTotal: function showTotal(total) {
return /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: "mr10"
}, "\u5171", /*#__PURE__*/external_window_React_default.a.createElement("span", {
className: "c-orange"
}, total), "\u6761\u6570\u636E");
}
})), isProblemset && /*#__PURE__*/external_window_React_default.a.createElement(BasketDrawer_BasketDrawer, {
basketData: problemset.basketData,
visible: visibleBasketDrawer,
basketTotal: basketTotal,
onClose: function onClose() {
return setVisibleBasketDrawer(false);
},
onDelete: handleBasketDelete
}), !Object(authority["m" /* isCommonStudent */])() && isProblemset && /*#__PURE__*/external_window_React_default.a.createElement(BasketSideBar_BasketSideBar, {
visibleBasket: visibleBasketDrawer,
onToggleVisible: function onToggleVisible() {
return setVisibleBasketDrawer(!visibleBasketDrawer);
},
count: basketTotal
})), /*#__PURE__*/external_window_React_default.a.createElement(components_PublicReviewModal, null), /*#__PURE__*/external_window_React_default.a.createElement(components_SetPrivateModal, {
onReloadData: handleReloadData
}), /*#__PURE__*/external_window_React_default.a.createElement(components_DeleteModal, {
onReloadData: function onReloadData() {
return handleDeleteData([null]);
}
}), /*#__PURE__*/external_window_React_default.a.createElement(components_BasketDeleteModal, {
onReloadData: handleReloadData,
onReloadBasketData: getBasketList
}), /*#__PURE__*/external_window_React_default.a.createElement(SelectShixuns, {
shixunIds: useShixunIds,
cb: handleShixuns
}), /*#__PURE__*/external_window_React_default.a.createElement(components_Single, null), /*#__PURE__*/external_window_React_default.a.createElement(components_Multiple, null), /*#__PURE__*/external_window_React_default.a.createElement(components_Judgment, null), /*#__PURE__*/external_window_React_default.a.createElement(components_Completion, null), /*#__PURE__*/external_window_React_default.a.createElement(ExportFolderModal, null), /*#__PURE__*/external_window_React_default.a.createElement(components_ShareModal, {
onOk: handleShare
}), /*#__PURE__*/external_window_React_default.a.createElement(AddModal, {
onOk: handleAddOk
})), isProblemset ? /*#__PURE__*/external_window_React_default.a.createElement(external_window_React_["Fragment"], null, !!(selectIds !== null && selectIds !== void 0 && selectIds.length) && /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.batch
}, /*#__PURE__*/external_window_React_default.a.createElement("aside", null, /*#__PURE__*/external_window_React_default.a.createElement("div", {
style: {
flexShrink: 0,
marginRight: 20
}
}, /*#__PURE__*/external_window_React_default.a.createElement(es_checkbox["a" /* default */], {
className: "font14",
checked: !!(problemsetList !== null && problemsetList !== void 0 && problemsetList.length) ? selectIds.length === (problemsetList === null || problemsetList === void 0 ? void 0 : problemsetList.length) : false,
onChange: function onChange(e) {
return handleSelectCheckedAll(e.target.checked);
}
}, "\u672C\u9875\u5168\u9009", /*#__PURE__*/external_window_React_default.a.createElement("span", {
style: {
color: '#999',
fontSize: 12
}
}, "/\u5DF2\u9009(", selectIds === null || selectIds === void 0 ? void 0 : selectIds.length, ")"))), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.btns
}, showSelectButton && /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.btn,
onClick: function onClick() {
return handleSelectAll(true);
}
}, /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: "iconfont icon-piliangjiaru"
}), "\u6279\u91CF\u52A0\u5165"), showSelectButton && /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.btn,
onClick: function onClick() {
return handleSelectAll(false);
}
}, /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: "iconfont icon-piliangyichu"
}), "\u6279\u91CF\u79FB\u51FA"), activeTabsKey === "0" && /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.btn,
onClick: function onClick() {
return handleOnMoveTo();
}
}, /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: "iconfont icon-yidongmulu font16"
}), "\u6279\u91CF\u79FB\u52A8"), activeTabsKey === "0" && /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.btn,
onClick: handleBatchSetPublic
}, " ", /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: "iconfont icon-pilianggongkai"
}), "\u6279\u91CF\u516C\u5F00"), activeTabsKey === "0" && /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.btn,
onClick: function onClick() {
return handleBatchShare();
}
}, " ", /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: "iconfont icon-pilianggongxiang"
}), "\u6279\u91CF\u5171\u4EAB"), activeTabsKey === "0" && /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.btn,
onClick: handleBatchDelete
}, " ", /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: "iconfont icon-piliangshanchu3 c-red"
}), "\u6279\u91CF\u5220\u9664"), /*#__PURE__*/external_window_React_default.a.createElement("div", {
onClick: function onClick() {
return setSelectIds([]);
},
style: {
marginLeft: 'auto'
},
className: Problemsetmodules_default.a.btn
}, " ", /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: "iconfont icon-piliangcaozuoicon2"
}), "\u53D6\u6D88\u64CD\u4F5C"))))) : /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.batch
}, /*#__PURE__*/external_window_React_default.a.createElement("aside", null, /*#__PURE__*/external_window_React_default.a.createElement("div", {
style: {
flexShrink: 0,
marginRight: 20
}
}, /*#__PURE__*/external_window_React_default.a.createElement(es_checkbox["a" /* default */], {
className: "font14",
checked: !!(problemsetList !== null && problemsetList !== void 0 && problemsetList.length) ? selectIds.length === (problemsetList === null || problemsetList === void 0 ? void 0 : problemsetList.length) : false,
onChange: function onChange(e) {
return handleSelectCheckedAll(e.target.checked);
}
}, "\u672C\u9875\u5168\u9009", /*#__PURE__*/external_window_React_default.a.createElement("span", {
style: {
color: '#999',
fontSize: 12
}
}, "/\u5DF2\u9009(", selectIds === null || selectIds === void 0 ? void 0 : selectIds.length, ")"))), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.btns
}, showSelectButton && !!(selectIds !== null && selectIds !== void 0 && selectIds.length) && /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.btn,
onClick: function onClick() {
return handleSelectAll(true);
}
}, /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: "iconfont icon-piliangjiaru"
}), "\u6279\u91CF\u52A0\u5165"), showSelectButton && !!(selectIds !== null && selectIds !== void 0 && selectIds.length) && /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: Problemsetmodules_default.a.btn,
onClick: function onClick() {
return handleSelectAll(false);
}
}, /*#__PURE__*/external_window_React_default.a.createElement("i", {
className: "iconfont icon-piliangyichu"
}), "\u6279\u91CF\u79FB\u51FA"), /*#__PURE__*/external_window_React_default.a.createElement("div", {
className: "c-grey-333 font12 mr40",
style: {
marginLeft: 'auto'
}
}, "\u5DF2\u52A0\u5165:\xA0\xA0", addedNum, "\u9898"), /*#__PURE__*/external_window_React_default.a.createElement("div", {
onClick: goPath,
className: Problemsetmodules_default.a.btn
}, "\u8FD4\u56DE\u8BD5\u5377")))));
};
/* harmony default export */ var Problemset = __webpack_exports__["default"] = (Object(umiExports["a" /* connect */])(function (_ref24) {
var problemset = _ref24.problemset,
user = _ref24.user,
loading = _ref24.loading,
globalSetting = _ref24.globalSetting;
return {
problemset: problemset,
user: user,
globalSetting: globalSetting,
loading: loading.effects
};
})(Problemset_ProblemsetPage));
/***/ }),
/***/ "LdHM":
/*!********************************************************!*\
!*** ./node_modules/rc-select/es/index.js + 6 modules ***!
\********************************************************/
/*! exports provided: Option, OptGroup, default */
/*! exports used: OptGroup, Option, default */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@babel/runtime/helpers/esm/createClass.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@babel/runtime/helpers/esm/createSuper.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@babel/runtime/helpers/esm/defineProperty.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@babel/runtime/helpers/esm/inherits.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@babel/runtime/helpers/esm/objectSpread2.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/@babel/runtime/helpers/esm/typeof.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/classnames/index.js (<- Module is not an ECMAScript module) */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/rc-select/es/TransBtn.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/rc-select/es/generate.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/rc-select/es/utils/commonUtil.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/rc-select/es/utils/valueUtil.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/rc-util/es/Children/toArray.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/rc-util/es/KeyCode.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/rc-util/es/hooks/useMemo.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/rc-util/es/pickAttrs.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/rc-util/es/warning.js */
/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/rc-virtual-list/es/index.js */
/*! ModuleConcatenation bailout: Cannot concat with external "window.React" (<- Module is not an ECMAScript module) */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
// EXPORTS
__webpack_require__.d(__webpack_exports__, "b", function() { return /* reexport */ es_Option; });
__webpack_require__.d(__webpack_exports__, "a", function() { return /* reexport */ es_OptGroup; });
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
var classCallCheck = __webpack_require__("1OyB");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
var createClass = __webpack_require__("vuIU");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js
var inherits = __webpack_require__("Ji7U");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createSuper.js + 1 modules
var createSuper = __webpack_require__("LK+K");
// EXTERNAL MODULE: external "window.React"
var external_window_React_ = __webpack_require__("cDcd");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
var defineProperty = __webpack_require__("rePB");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js
var objectWithoutProperties = __webpack_require__("Ff2n");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
var slicedToArray = __webpack_require__("ODXe");
// EXTERNAL MODULE: ./node_modules/rc-util/es/KeyCode.js
var KeyCode = __webpack_require__("4IlW");
// EXTERNAL MODULE: ./node_modules/rc-util/es/pickAttrs.js
var pickAttrs = __webpack_require__("bX4T");
// EXTERNAL MODULE: ./node_modules/rc-util/es/hooks/useMemo.js
var useMemo = __webpack_require__("YrtM");
// EXTERNAL MODULE: ./node_modules/classnames/index.js
var classnames = __webpack_require__("TSYQ");
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
// EXTERNAL MODULE: ./node_modules/rc-virtual-list/es/index.js + 19 modules
var es = __webpack_require__("+nKL");
// EXTERNAL MODULE: ./node_modules/rc-select/es/TransBtn.js
var TransBtn = __webpack_require__("8OUc");
// CONCATENATED MODULE: ./node_modules/rc-select/es/OptionList.js
/**
* Using virtual list of option display.
* Will fallback to dom if use customize render.
*/
var OptionList_OptionList = function OptionList(_ref, ref) {
var prefixCls = _ref.prefixCls,
id = _ref.id,
flattenOptions = _ref.flattenOptions,
childrenAsData = _ref.childrenAsData,
values = _ref.values,
searchValue = _ref.searchValue,
multiple = _ref.multiple,
defaultActiveFirstOption = _ref.defaultActiveFirstOption,
height = _ref.height,
itemHeight = _ref.itemHeight,
notFoundContent = _ref.notFoundContent,
open = _ref.open,
menuItemSelectedIcon = _ref.menuItemSelectedIcon,
virtual = _ref.virtual,
onSelect = _ref.onSelect,
onToggleOpen = _ref.onToggleOpen,
onActiveValue = _ref.onActiveValue,
onScroll = _ref.onScroll,
onMouseEnter = _ref.onMouseEnter;
var itemPrefixCls = "".concat(prefixCls, "-item");
var memoFlattenOptions = Object(useMemo["a" /* default */])(function () {
return flattenOptions;
}, [open, flattenOptions], function (prev, next) {
return next[0] && prev[1] !== next[1];
}); // =========================== List ===========================
var listRef = external_window_React_["useRef"](null);
var onListMouseDown = function onListMouseDown(event) {
event.preventDefault();
};
var scrollIntoView = function scrollIntoView(index) {
if (listRef.current) {
listRef.current.scrollTo({
index: index
});
}
}; // ========================== Active ==========================
var getEnabledActiveIndex = function getEnabledActiveIndex(index) {
var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
var len = memoFlattenOptions.length;
for (var i = 0; i < len; i += 1) {
var current = (index + i * offset + len) % len;
var _memoFlattenOptions$c = memoFlattenOptions[current],
group = _memoFlattenOptions$c.group,
data = _memoFlattenOptions$c.data;
if (!group && !data.disabled) {
return current;
}
}
return -1;
};
var _React$useState = external_window_React_["useState"](function () {
return getEnabledActiveIndex(0);
}),
_React$useState2 = Object(slicedToArray["a" /* default */])(_React$useState, 2),
activeIndex = _React$useState2[0],
setActiveIndex = _React$useState2[1];
var setActive = function setActive(index) {
setActiveIndex(index); // Trigger active event
var flattenItem = memoFlattenOptions[index];
if (!flattenItem) {
onActiveValue(null, -1);
return;
}
onActiveValue(flattenItem.data.value, index);
}; // Auto active first item when list length or searchValue changed
external_window_React_["useEffect"](function () {
setActive(defaultActiveFirstOption !== false ? getEnabledActiveIndex(0) : -1);
}, [memoFlattenOptions.length, searchValue]); // Auto scroll to item position in single mode
external_window_React_["useEffect"](function () {
/**
* React will skip `onChange` when component update.
* `setActive` function will call root accessibility state update which makes re-render.
* So we need to delay to let Input component trigger onChange first.
*/
var timeoutId = setTimeout(function () {
if (!multiple && open && values.size === 1) {
var value = Array.from(values)[0];
var index = memoFlattenOptions.findIndex(function (_ref2) {
var data = _ref2.data;
return data.value === value;
});
setActive(index);
scrollIntoView(index);
}
});
return function () {
return clearTimeout(timeoutId);
};
}, [open]); // ========================== Values ==========================
var onSelectValue = function onSelectValue(value) {
if (value !== undefined) {
onSelect(value, {
selected: !values.has(value)
});
} // Single mode should always close by select
if (!multiple) {
onToggleOpen(false);
}
}; // ========================= Keyboard =========================
external_window_React_["useImperativeHandle"](ref, function () {
return {
onKeyDown: function onKeyDown(event) {
var which = event.which;
switch (which) {
// >>> Arrow keys
case KeyCode["a" /* default */].UP:
case KeyCode["a" /* default */].DOWN:
{
var offset = 0;
if (which === KeyCode["a" /* default */].UP) {
offset = -1;
} else if (which === KeyCode["a" /* default */].DOWN) {
offset = 1;
}
if (offset !== 0) {
var nextActiveIndex = getEnabledActiveIndex(activeIndex + offset, offset);
scrollIntoView(nextActiveIndex);
setActive(nextActiveIndex);
}
break;
}
// >>> Select
case KeyCode["a" /* default */].ENTER:
{
// value
var item = memoFlattenOptions[activeIndex];
if (item && !item.data.disabled) {
onSelectValue(item.data.value);
} else {
onSelectValue(undefined);
}
if (open) {
event.preventDefault();
}
break;
}
// >>> Close
case KeyCode["a" /* default */].ESC:
{
onToggleOpen(false);
}
}
},
onKeyUp: function onKeyUp() {},
scrollTo: function scrollTo(index) {
scrollIntoView(index);
}
};
}); // ========================== Render ==========================
if (memoFlattenOptions.length === 0) {
return external_window_React_["createElement"]("div", {
role: "listbox",
id: "".concat(id, "_list"),
className: "".concat(itemPrefixCls, "-empty"),
onMouseDown: onListMouseDown
}, notFoundContent);
}
function renderItem(index) {
var item = memoFlattenOptions[index];
if (!item) return null;
var itemData = item.data || {};
var value = itemData.value,
label = itemData.label,
children = itemData.children;
var attrs = Object(pickAttrs["a" /* default */])(itemData, true);
var mergedLabel = childrenAsData ? children : label;
return item ? external_window_React_["createElement"]("div", Object.assign({
"aria-label": typeof mergedLabel === 'string' ? mergedLabel : null
}, attrs, {
key: index,
role: "option",
id: "".concat(id, "_list_").concat(index),
"aria-selected": values.has(value)
}), value) : null;
}
return external_window_React_["createElement"](external_window_React_["Fragment"], null, external_window_React_["createElement"]("div", {
role: "listbox",
id: "".concat(id, "_list"),
style: {
height: 0,
width: 0,
overflow: 'hidden'
}
}, renderItem(activeIndex - 1), renderItem(activeIndex), renderItem(activeIndex + 1)), external_window_React_["createElement"](es["a" /* default */], {
itemKey: "key",
ref: listRef,
data: memoFlattenOptions,
height: height,
itemHeight: itemHeight,
fullHeight: false,
onMouseDown: onListMouseDown,
onScroll: onScroll,
virtual: virtual,
onMouseEnter: onMouseEnter
}, function (_ref3, itemIndex) {
var _classNames;
var group = _ref3.group,
groupOption = _ref3.groupOption,
data = _ref3.data;
var label = data.label,
key = data.key; // Group
if (group) {
return external_window_React_["createElement"]("div", {
className: classnames_default()(itemPrefixCls, "".concat(itemPrefixCls, "-group"))
}, label !== undefined ? label : key);
}
var disabled = data.disabled,
value = data.value,
title = data.title,
children = data.children,
style = data.style,
className = data.className,
otherProps = Object(objectWithoutProperties["a" /* default */])(data, ["disabled", "value", "title", "children", "style", "className"]); // Option
var selected = values.has(value);
var optionPrefixCls = "".concat(itemPrefixCls, "-option");
var optionClassName = classnames_default()(itemPrefixCls, optionPrefixCls, className, (_classNames = {}, Object(defineProperty["a" /* default */])(_classNames, "".concat(optionPrefixCls, "-grouped"), groupOption), Object(defineProperty["a" /* default */])(_classNames, "".concat(optionPrefixCls, "-active"), activeIndex === itemIndex && !disabled), Object(defineProperty["a" /* default */])(_classNames, "".concat(optionPrefixCls, "-disabled"), disabled), Object(defineProperty["a" /* default */])(_classNames, "".concat(optionPrefixCls, "-selected"), selected), _classNames));
var mergedLabel = childrenAsData ? children : label;
var iconVisible = !menuItemSelectedIcon || typeof menuItemSelectedIcon === 'function' || selected;
return external_window_React_["createElement"]("div", Object.assign({}, otherProps, {
"aria-selected": selected,
className: optionClassName,
title: title,
onMouseMove: function onMouseMove() {
if (activeIndex === itemIndex || disabled) {
return;
}
setActive(itemIndex);
},
onClick: function onClick() {
if (!disabled) {
onSelectValue(value);
}
},
style: style
}), external_window_React_["createElement"]("div", {
className: "".concat(optionPrefixCls, "-content")
}, mergedLabel || value), external_window_React_["isValidElement"](menuItemSelectedIcon) || selected, iconVisible && external_window_React_["createElement"](TransBtn["a" /* default */], {
className: "".concat(itemPrefixCls, "-option-state"),
customizeIcon: menuItemSelectedIcon,
customizeIconProps: {
isSelected: selected
}
}, selected ? '✓' : null));
}));
};
var RefOptionList = external_window_React_["forwardRef"](OptionList_OptionList);
RefOptionList.displayName = 'OptionList';
/* harmony default export */ var es_OptionList = (RefOptionList);
// CONCATENATED MODULE: ./node_modules/rc-select/es/Option.js
/** This is a placeholder, not real render in dom */
var Option = function Option() {
return null;
};
Option.isSelectOption = true;
/* harmony default export */ var es_Option = (Option);
// CONCATENATED MODULE: ./node_modules/rc-select/es/OptGroup.js
/** This is a placeholder, not real render in dom */
var OptGroup = function OptGroup() {
return null;
};
OptGroup.isSelectOptGroup = true;
/* harmony default export */ var es_OptGroup = (OptGroup);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectSpread2.js
var objectSpread2 = __webpack_require__("VTBJ");
// EXTERNAL MODULE: ./node_modules/rc-util/es/Children/toArray.js
var toArray = __webpack_require__("Zm9Q");
// CONCATENATED MODULE: ./node_modules/rc-select/es/utils/legacyUtil.js
function convertNodeToOption(node) {
var key = node.key,
_node$props = node.props,
children = _node$props.children,
value = _node$props.value,
restProps = Object(objectWithoutProperties["a" /* default */])(_node$props, ["children", "value"]);
return Object(objectSpread2["a" /* default */])({
key: key,
value: value !== undefined ? value : key,
children: children
}, restProps);
}
function convertChildrenToData(nodes) {
var optionOnly = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
return Object(toArray["a" /* default */])(nodes).map(function (node, index) {
if (!external_window_React_["isValidElement"](node) || !node.type) {
return null;
}
var isSelectOptGroup = node.type.isSelectOptGroup,
key = node.key,
_node$props2 = node.props,
children = _node$props2.children,
restProps = Object(objectWithoutProperties["a" /* default */])(_node$props2, ["children"]);
if (optionOnly || !isSelectOptGroup) {
return convertNodeToOption(node);
}
return Object(objectSpread2["a" /* default */])(Object(objectSpread2["a" /* default */])({
key: "__RC_SELECT_GRP__".concat(key === null ? index : key, "__"),
label: key
}, restProps), {}, {
options: convertChildrenToData(children)
});
}).filter(function (data) {
return data;
});
}
// EXTERNAL MODULE: ./node_modules/rc-select/es/utils/valueUtil.js
var valueUtil = __webpack_require__("2Qr1");
// EXTERNAL MODULE: ./node_modules/rc-select/es/generate.js + 11 modules
var generate = __webpack_require__("qNPg");
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/typeof.js
var esm_typeof = __webpack_require__("U8pU");
// EXTERNAL MODULE: ./node_modules/rc-util/es/warning.js
var warning = __webpack_require__("Kwbf");
// EXTERNAL MODULE: ./node_modules/rc-select/es/utils/commonUtil.js
var commonUtil = __webpack_require__("WKfj");
// CONCATENATED MODULE: ./node_modules/rc-select/es/utils/warningPropsUtil.js
function warningProps(props) {
var mode = props.mode,
options = props.options,
children = props.children,
backfill = props.backfill,
allowClear = props.allowClear,
placeholder = props.placeholder,
getInputElement = props.getInputElement,
showSearch = props.showSearch,
onSearch = props.onSearch,
defaultOpen = props.defaultOpen,
autoFocus = props.autoFocus,
labelInValue = props.labelInValue,
value = props.value,
inputValue = props.inputValue,
optionLabelProp = props.optionLabelProp;
var multiple = mode === 'multiple' || mode === 'tags';
var mergedShowSearch = showSearch !== undefined ? showSearch : multiple || mode === 'combobox';
var mergedOptions = options || convertChildrenToData(children); // `tags` should not set option as disabled
Object(warning["a" /* default */])(mode !== 'tags' || mergedOptions.every(function (opt) {
return !opt.disabled;
}), 'Please avoid setting option to disabled in tags mode since user can always type text as tag.'); // `combobox` & `tags` should option be `string` type
if (mode === 'tags' || mode === 'combobox') {
var hasNumberValue = mergedOptions.some(function (item) {
if (item.options) {
return item.options.some(function (opt) {
return typeof ('value' in opt ? opt.value : opt.key) === 'number';
});
}
return typeof ('value' in item ? item.value : item.key) === 'number';
});
Object(warning["a" /* default */])(!hasNumberValue, '`value` of Option should not use number type when `mode` is `tags` or `combobox`.');
} // `combobox` should not use `optionLabelProp`
Object(warning["a" /* default */])(mode !== 'combobox' || !optionLabelProp, '`combobox` mode not support `optionLabelProp`. Please set `value` on Option directly.'); // Only `combobox` support `backfill`
Object(warning["a" /* default */])(mode === 'combobox' || !backfill, '`backfill` only works with `combobox` mode.'); // Only `combobox` support `getInputElement`
Object(warning["a" /* default */])(mode === 'combobox' || !getInputElement, '`getInputElement` only work with `combobox` mode.'); // Customize `getInputElement` should not use `allowClear` & `placeholder`
Object(warning["b" /* noteOnce */])(mode !== 'combobox' || !getInputElement || !allowClear || !placeholder, 'Customize `getInputElement` should customize clear and placeholder logic instead of configuring `allowClear` and `placeholder`.'); // `onSearch` should use in `combobox` or `showSearch`
if (onSearch && !mergedShowSearch && mode !== 'combobox' && mode !== 'tags') {
Object(warning["a" /* default */])(false, '`onSearch` should work with `showSearch` instead of use alone.');
}
Object(warning["b" /* noteOnce */])(!defaultOpen || autoFocus, '`defaultOpen` makes Select open without focus which means it will not close by click outside. You can set `autoFocus` if needed.');
if (value !== undefined && value !== null) {
var values = Object(commonUtil["d" /* toArray */])(value);
Object(warning["a" /* default */])(!labelInValue || values.every(function (val) {
return Object(esm_typeof["a" /* default */])(val) === 'object' && ('key' in val || 'value' in val);
}), '`value` should in shape of `{ value: string | number, label?: ReactNode }` when you set `labelInValue` to `true`');
Object(warning["a" /* default */])(!multiple || Array.isArray(value), '`value` should be array when `mode` is `multiple` or `tags`');
} // Syntactic sugar should use correct children type
if (children) {
var invalidateChildType = null;
Object(toArray["a" /* default */])(children).some(function (node) {
if (!external_window_React_["isValidElement"](node) || !node.type) {
return false;
}
var type = node.type;
if (type.isSelectOption) {
return false;
}
if (type.isSelectOptGroup) {
var allChildrenValid = Object(toArray["a" /* default */])(node.props.children).every(function (subNode) {
if (!external_window_React_["isValidElement"](subNode) || !node.type || subNode.type.isSelectOption) {
return true;
}
invalidateChildType = subNode.type;
return false;
});
if (allChildrenValid) {
return false;
}
return true;
}
invalidateChildType = type;
return true;
});
if (invalidateChildType) {
Object(warning["a" /* default */])(false, "`children` should be `Select.Option` or `Select.OptGroup` instead of `".concat(invalidateChildType.displayName || invalidateChildType.name || invalidateChildType, "`."));
}
Object(warning["a" /* default */])(inputValue === undefined, '`inputValue` is deprecated, please use `searchValue` instead.');
}
}
/* harmony default export */ var warningPropsUtil = (warningProps);
// CONCATENATED MODULE: ./node_modules/rc-select/es/Select.js
/**
* To match accessibility requirement, we always provide an input in the component.
* Other element will not set `tabIndex` to avoid `onBlur` sequence problem.
* For focused select, we set `aria-live="polite"` to update the accessibility content.
*
* ref:
* - keyboard: https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/listbox_role#Keyboard_interactions
*
* New api:
* - listHeight
* - listItemHeight
* - component
*
* Remove deprecated api:
* - multiple
* - tags
* - combobox
* - firstActiveValue
* - dropdownMenuStyle
* - openClassName (Not list in api)
*
* Update:
* - `backfill` only support `combobox` mode
* - `combobox` mode not support `labelInValue` since it's meaningless
* - `getInputElement` only support `combobox` mode
* - `onChange` return OptionData instead of ReactNode
* - `filterOption` `onChange` `onSelect` accept OptionData instead of ReactNode
* - `combobox` mode trigger `onChange` will get `undefined` if no `value` match in Option
* - `combobox` mode not support `optionLabelProp`
*/
var RefSelect = Object(generate["a" /* default */])({
prefixCls: 'rc-select',
components: {
optionList: es_OptionList
},
convertChildrenToData: convertChildrenToData,
flattenOptions: valueUtil["d" /* flattenOptions */],
getLabeledValue: valueUtil["e" /* getLabeledValue */],
filterOptions: valueUtil["b" /* filterOptions */],
isValueDisabled: valueUtil["g" /* isValueDisabled */],
findValueOption: valueUtil["c" /* findValueOption */],
warningProps: warningPropsUtil,
fillOptionsWithMissingValue: valueUtil["a" /* fillOptionsWithMissingValue */]
});
/**
* Typescript not support generic with function component,
* we have to wrap an class component to handle this.
*/
var Select_Select = /*#__PURE__*/function (_React$Component) {
Object(inherits["a" /* default */])(Select, _React$Component);
var _super = Object(createSuper["a" /* default */])(Select);
function Select() {
var _this;
Object(classCallCheck["a" /* default */])(this, Select);
_this = _super.apply(this, arguments);
_this.selectRef = external_window_React_["createRef"]();
_this.focus = function () {
_this.selectRef.current.focus();
};
_this.blur = function () {
_this.selectRef.current.blur();
};
return _this;
}
Object(createClass["a" /* default */])(Select, [{
key: "render",
value: function render() {
return external_window_React_["createElement"](RefSelect, Object.assign({
ref: this.selectRef
}, this.props));
}
}]);
return Select;
}(external_window_React_["Component"]);
Select_Select.Option = es_Option;
Select_Select.OptGroup = es_OptGroup;
/* harmony default export */ var es_Select = (Select_Select);
// CONCATENATED MODULE: ./node_modules/rc-select/es/index.js
/* harmony default export */ var rc_select_es = __webpack_exports__["c"] = (es_Select);
/***/ }),
/***/ "NLgs":
/*!***********************************!*\
!*** ./src/utils/verifyLogin.tsx ***!
\***********************************/
/*! exports provided: handleVerify, handleVerifyLogin, handleProfleCompletedModal, handleProfessionalCertificationModal, handleCanShixunAddModal, AuthorizeModel, ShixunStatusModel */
/*! exports used: AuthorizeModel, ShixunStatusModel, handleCanShixunAddModal, handleProfessionalCertificationModal, handleVerify, handleVerifyLogin */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return handleVerify; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return handleVerifyLogin; });
/* unused harmony export handleProfleCompletedModal */
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return handleProfessionalCertificationModal; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return handleCanShixunAddModal; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return AuthorizeModel; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return ShixunStatusModel; });
/* harmony import */ var antd_es_message_style__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! antd/es/message/style */ "miYZ");
/* harmony import */ var antd_es_message__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! antd/es/message */ "tsqr");
/* harmony import */ var _Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_asyncToGenerator__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/asyncToGenerator */ "9og8");
/* harmony import */ var antd_es_modal_style__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! antd/es/modal/style */ "2qtc");
/* harmony import */ var antd_es_modal__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! antd/es/modal */ "kLXV");
/* harmony import */ var _Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/regenerator */ "WmNS");
/* harmony import */ var _Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! react */ "cDcd");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_6__);
/* harmony import */ var umi__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! umi */ "9kvl");
/* harmony import */ var _authority__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./authority */ "xKgJ");
/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./util */ "1vsH");
/* harmony import */ var _ant_design_icons__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @ant-design/icons */ "RCxd");
/* harmony import */ var _assets_images_403Qrcode_png__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @/assets/images/403Qrcode.png */ "mOS8");
/* harmony import */ var _assets_images_403Qrcode_png__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(_assets_images_403Qrcode_png__WEBPACK_IMPORTED_MODULE_11__);
/* harmony import */ var _assets_images_Authorize_png__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @/assets/images/Authorize.png */ "1ZF9");
/* harmony import */ var _assets_images_Authorize_png__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(_assets_images_Authorize_png__WEBPACK_IMPORTED_MODULE_12__);
/* harmony import */ var _assets_images_studnetqun_png__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @/assets/images/studnetqun.png */ "WdTA");
/* harmony import */ var _assets_images_studnetqun_png__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(_assets_images_studnetqun_png__WEBPACK_IMPORTED_MODULE_13__);
/* harmony import */ var _env__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./env */ "m3rI");
var handleVerify = function handleVerify(dispatch) {
var isShixun = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
if (handleVerifyLogin(dispatch) && handleProfleCompletedModal(isShixun)) {
return true;
}
return false;
};
var handleVerifyLogin = function handleVerifyLogin(dispatch) {
if (!Object(_authority__WEBPACK_IMPORTED_MODULE_8__[/* isLogin */ "p"])()) {
dispatch({
type: 'user/showPopLogin',
payload: {
showPopLogin: true,
showClosable: true
}
});
return false;
}
return true;
};
var handleProfleCompletedModal = function handleProfleCompletedModal() {
var _user$userInfo;
var isShixun = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
var _getDvaApp$_store$get = Object(umi__WEBPACK_IMPORTED_MODULE_7__[/* getDvaApp */ "c"])()._store.getState(),
user = _getDvaApp$_store$get.user;
if (!((_user$userInfo = user.userInfo) !== null && _user$userInfo !== void 0 && _user$userInfo.profile_completed)) {
antd_es_modal__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"].confirm({
title: '提示',
width: 530,
centered: true,
content: isShixun ? '按照有关政策规定,特殊实验需要先绑定手机号才能使用,请先绑定手机号码' : '您需要去完善您的个人资料,才能使用此功能',
okText: "\u7ACB\u5373\u5B8C\u5584",
cancelText: "稍后完善",
onOk: function onOk() {
umi__WEBPACK_IMPORTED_MODULE_7__[/* history */ "d"].push('/account/profile/edit');
}
});
return false;
}
return true;
};
var handleProfessionalCertificationModal = function handleProfessionalCertificationModal() {
var _user$userInfo2;
var _getDvaApp$_store$get2 = Object(umi__WEBPACK_IMPORTED_MODULE_7__[/* getDvaApp */ "c"])()._store.getState(),
user = _getDvaApp$_store$get2.user;
if (!((_user$userInfo2 = user.userInfo) !== null && _user$userInfo2 !== void 0 && _user$userInfo2.professional_certification)) {
antd_es_modal__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"].confirm({
title: '提示',
centered: true,
content: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("div", {
className: "tc"
}, "\u60A8\u9700\u8981\u53BB\u5B8C\u6210\u60A8\u7684\u804C\u4E1A\u8BA4\u8BC1\uFF0C\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD"),
okText: "\u7ACB\u5373\u5B8C\u5584",
cancelText: "稍后完善",
onOk: function onOk() {
Object(_util__WEBPACK_IMPORTED_MODULE_9__[/* openNewWindow */ "Q"])('/account/certification');
}
});
return false;
}
return true;
};
var handleCanShixunAddModal = function handleCanShixunAddModal() {
if (Object(_authority__WEBPACK_IMPORTED_MODULE_8__[/* canShixunAdd */ "a"])()) {
return true;
}
antd_es_modal__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"].warning({
centered: true,
width: 530,
title: '提示',
content: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("div", {
className: "tc",
style: {
marginLeft: -38
}
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("p", null, "\u60A8\u53EF\u4EE5\u626B\u7801\u52A0\u7FA4@\u7FA4\u7BA1\u7406\u5458\uFF0C\u7533\u8BF7\u64CD\u4F5C\u6743\u9650\u54E6\uFF01"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("img", {
src: Object(_authority__WEBPACK_IMPORTED_MODULE_8__[/* isStudents */ "t"])() ? _assets_images_studnetqun_png__WEBPACK_IMPORTED_MODULE_13___default.a : "".concat(_env__WEBPACK_IMPORTED_MODULE_14__[/* default */ "a"].IMG_SERVER, "/images/educoder/qqqun20191230.png"),
width: 200
})),
okText: "\u6211\u77E5\u9053\u4E86",
maskClosable: true
});
return false;
};
var AuthorizeModel = function AuthorizeModel(type, text) {
if (type) {
return true;
}
antd_es_modal__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"].confirm({
centered: true,
zIndex: 10000,
width: 530,
title: '提示',
content: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("p", null, text || '该实践资源需授权后才可使用。 您可以在QQ服务群向管理员申请,获得继续操作的权限。'), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("div", {
style: {
marginLeft: '110px'
}
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("img", {
src: _assets_images_Authorize_png__WEBPACK_IMPORTED_MODULE_12___default.a,
width: 200
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("div", {
style: {
marginLeft: '35px'
}
}, "\u7FA4\u53F7\uFF1A", '714336072'))),
okText: "\u7ACB\u5373\u8054\u7CFB",
cancelText: '取消',
onOk: function onOk() {
Object(_util__WEBPACK_IMPORTED_MODULE_9__[/* openNewWindow */ "Q"])("https://qm.qq.com/cgi-bin/qm/qr?k=tIyDPXUtE0yEk-MOJxhH55lTUJS-nYAM&jump_from=webapi");
}
});
return false;
};
var ShixunStatusModel = function ShixunStatusModel(dispatch) {
var text = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
var _getDvaApp$_store$get3 = Object(umi__WEBPACK_IMPORTED_MODULE_7__[/* getDvaApp */ "c"])()._store.getState(),
detail = _getDvaApp$_store$get3.shixunsDetail.detail;
if ((detail === null || detail === void 0 ? void 0 : detail.public) === 2 || (detail === null || detail === void 0 ? void 0 : detail.public) === 1 || (detail === null || detail === void 0 ? void 0 : detail.shixun_status) === 3) {
antd_es_modal__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"].info({
centered: true,
icon: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement(_ant_design_icons__WEBPACK_IMPORTED_MODULE_10__[/* default */ "a"], {
style: {
color: '#faad14'
}
}),
width: 460,
title: '提示',
content: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("div", {
className: "tc",
style: {
marginLeft: -38
}
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("div", {
style: {
display: 'flex',
flexDirection: 'column',
alignItems: 'flex-start',
paddingLeft: 38,
margin: '12px 0'
}
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("span", null, "\u8BE5\u5B9E\u8DF5\u9879\u76EE\u7684\u72B6\u6001\u4E3A", (detail === null || detail === void 0 ? void 0 : detail.public) === 2 ? '已公开' : (detail === null || detail === void 0 ? void 0 : detail.public) === 1 ? '待审核' : '已关闭', "\uFF0C", text, "\u3002"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("p", null, "\u5982\u6709\u9700\u8981\uFF0C\u8BF7\u8054\u7CFB\u5E73\u53F0\u7BA1\u7406\u5458\u8FDB\u884C\u6280\u672F\u652F\u6301\u3002")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("img", {
style: {
border: '4px solid #0152d9',
borderRadius: '4px'
},
src: _assets_images_403Qrcode_png__WEBPACK_IMPORTED_MODULE_11___default.a,
alt: "\u4E8C\u7EF4\u7801",
width: 160
})),
okText: '我知道了'
});
return true;
}
if ((detail === null || detail === void 0 ? void 0 : detail.shixun_status) === 2) {
antd_es_modal__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"].confirm({
centered: true,
icon: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement(_ant_design_icons__WEBPACK_IMPORTED_MODULE_10__[/* default */ "a"], null),
title: '提示',
content: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("span", null, "\u8BE5\u5B9E\u8DF5\u9879\u76EE\u5DF2\u53D1\u5E03\uFF0C", text, "\u3002"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("br", null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("span", null, "\u5982\u6709\u9700\u8981\uFF0C\u60A8\u53EF\u4EE5\u64A4\u9500\u53D1\u5E03\u540E\uFF0C\u518D\u8FDB\u884C\u64CD\u4F5C\u3002")),
okText: "\u64A4\u9500\u53D1\u5E03",
cancelText: '取消',
onOk: function onOk() {
antd_es_modal__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"].confirm({
width: 440,
centered: true,
icon: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement(_ant_design_icons__WEBPACK_IMPORTED_MODULE_10__[/* default */ "a"], {
style: {
color: '#faad14'
}
}),
title: '提示',
content: '撤销发布后,学员将无法进行练习。是否确认撤销发布?',
okText: "\u786E\u5B9A\u64A4\u9500\u53D1\u5E03",
cancelText: '取消',
onOk: function () {
var _onOk = Object(_Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_asyncToGenerator__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])( /*#__PURE__*/_Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default.a.mark(function _callee() {
var res;
return _Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_5___default.a.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return dispatch({
type: 'shixunsDetail/cancelRelease',
payload: {
id: detail === null || detail === void 0 ? void 0 : detail.identifier
}
});
case 2:
res = _context.sent;
if (res.status !== 401) {
antd_es_message__WEBPACK_IMPORTED_MODULE_1__[/* default */ "b"].success('撤销发布成功。实训回到未发布的状态。');
dispatch({
type: 'shixunsDetail/getShixunsDetail',
payload: {
id: detail === null || detail === void 0 ? void 0 : detail.identifier
}
});
dispatch({
type: 'practiceSetting/getCommonData',
payload: {
id: detail === null || detail === void 0 ? void 0 : detail.identifier
}
});
}
case 4:
case "end":
return _context.stop();
}
}
}, _callee);
}));
function onOk() {
return _onOk.apply(this, arguments);
}
return onOk;
}()
});
}
});
return true;
}
return false;
};
/***/ }),
/***/ "NvD2":
/*!******************************************************!*\
!*** ./node_modules/rc-tree/es/utils/conductUtil.js ***!
\******************************************************/
/*! exports provided: isCheckDisabled, conductCheck */
/*! exports used: conductCheck */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* unused harmony export isCheckDisabled */
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return conductCheck; });
/* harmony import */ var rc_util_es_warning__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! rc-util/es/warning */ "Kwbf");
function removeFromCheckedKeys(halfCheckedKeys, checkedKeys) {
var filteredKeys = new Set();
halfCheckedKeys.forEach(function (key) {
if (!checkedKeys.has(key)) {
filteredKeys.add(key);
}
});
return filteredKeys;
}
function isCheckDisabled(node) {
var _ref = node || {},
disabled = _ref.disabled,
disableCheckbox = _ref.disableCheckbox,
checkable = _ref.checkable;
return !!(disabled || disableCheckbox) || checkable === false;
} // Fill miss keys
function fillConductCheck(keys, levelEntities, maxLevel, syntheticGetCheckDisabled) {
var checkedKeys = new Set(keys);
var halfCheckedKeys = new Set(); // Add checked keys top to bottom
for (var level = 0; level <= maxLevel; level += 1) {
var entities = levelEntities.get(level) || new Set();
entities.forEach(function (entity) {
var key = entity.key,
node = entity.node,
_entity$children = entity.children,
children = _entity$children === void 0 ? [] : _entity$children;
if (checkedKeys.has(key) && !syntheticGetCheckDisabled(node)) {
children.filter(function (childEntity) {
return !syntheticGetCheckDisabled(childEntity.node);
}).forEach(function (childEntity) {
checkedKeys.add(childEntity.key);
});
}
});
} // Add checked keys from bottom to top
var visitedKeys = new Set();
for (var _level = maxLevel; _level >= 0; _level -= 1) {
var _entities = levelEntities.get(_level) || new Set();
_entities.forEach(function (entity) {
var parent = entity.parent,
node = entity.node; // Skip if no need to check
if (syntheticGetCheckDisabled(node) || !entity.parent || visitedKeys.has(entity.parent.key)) {
return;
} // Skip if parent is disabled
if (syntheticGetCheckDisabled(entity.parent.node)) {
visitedKeys.add(parent.key);
return;
}
var allChecked = true;
var partialChecked = false;
(parent.children || []).filter(function (childEntity) {
return !syntheticGetCheckDisabled(childEntity.node);
}).forEach(function (_ref2) {
var key = _ref2.key;
var checked = checkedKeys.has(key);
if (allChecked && !checked) {
allChecked = false;
}
if (!partialChecked && (checked || halfCheckedKeys.has(key))) {
partialChecked = true;
}
});
if (allChecked) {
checkedKeys.add(parent.key);
}
if (partialChecked) {
halfCheckedKeys.add(parent.key);
}
visitedKeys.add(parent.key);
});
}
return {
checkedKeys: Array.from(checkedKeys),
halfCheckedKeys: Array.from(removeFromCheckedKeys(halfCheckedKeys, checkedKeys))
};
} // Remove useless key
function cleanConductCheck(keys, halfKeys, levelEntities, maxLevel, syntheticGetCheckDisabled) {
var checkedKeys = new Set(keys);
var halfCheckedKeys = new Set(halfKeys); // Remove checked keys from top to bottom
for (var level = 0; level <= maxLevel; level += 1) {
var entities = levelEntities.get(level) || new Set();
entities.forEach(function (entity) {
var key = entity.key,
node = entity.node,
_entity$children2 = entity.children,
children = _entity$children2 === void 0 ? [] : _entity$children2;
if (!checkedKeys.has(key) && !halfCheckedKeys.has(key) && !syntheticGetCheckDisabled(node)) {
children.filter(function (childEntity) {
return !syntheticGetCheckDisabled(childEntity.node);
}).forEach(function (childEntity) {
checkedKeys.delete(childEntity.key);
});
}
});
} // Remove checked keys form bottom to top
halfCheckedKeys = new Set();
var visitedKeys = new Set();
for (var _level2 = maxLevel; _level2 >= 0; _level2 -= 1) {
var _entities2 = levelEntities.get(_level2) || new Set();
_entities2.forEach(function (entity) {
var parent = entity.parent,
node = entity.node; // Skip if no need to check
if (syntheticGetCheckDisabled(node) || !entity.parent || visitedKeys.has(entity.parent.key)) {
return;
} // Skip if parent is disabled
if (syntheticGetCheckDisabled(entity.parent.node)) {
visitedKeys.add(parent.key);
return;
}
var allChecked = true;
var partialChecked = false;
(parent.children || []).filter(function (childEntity) {
return !syntheticGetCheckDisabled(childEntity.node);
}).forEach(function (_ref3) {
var key = _ref3.key;
var checked = checkedKeys.has(key);
if (allChecked && !checked) {
allChecked = false;
}
if (!partialChecked && (checked || halfCheckedKeys.has(key))) {
partialChecked = true;
}
});
if (!allChecked) {
checkedKeys.delete(parent.key);
}
if (partialChecked) {
halfCheckedKeys.add(parent.key);
}
visitedKeys.add(parent.key);
});
}
return {
checkedKeys: Array.from(checkedKeys),
halfCheckedKeys: Array.from(removeFromCheckedKeys(halfCheckedKeys, checkedKeys))
};
}
/**
* Conduct with keys.
* @param keyList current key list
* @param keyEntities key - dataEntity map
* @param mode `fill` to fill missing key, `clean` to remove useless key
*/
function conductCheck(keyList, checked, keyEntities, getCheckDisabled) {
var warningMissKeys = [];
var syntheticGetCheckDisabled;
if (getCheckDisabled) {
syntheticGetCheckDisabled = getCheckDisabled;
} else {
syntheticGetCheckDisabled = isCheckDisabled;
} // We only handle exist keys
var keys = new Set(keyList.filter(function (key) {
var hasEntity = !!keyEntities[key];
if (!hasEntity) {
warningMissKeys.push(key);
}
return hasEntity;
}));
var levelEntities = new Map();
var maxLevel = 0; // Convert entities by level for calculation
Object.keys(keyEntities).forEach(function (key) {
var entity = keyEntities[key];
var level = entity.level;
var levelSet = levelEntities.get(level);
if (!levelSet) {
levelSet = new Set();
levelEntities.set(level, levelSet);
}
levelSet.add(entity);
maxLevel = Math.max(maxLevel, level);
});
Object(rc_util_es_warning__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(!warningMissKeys.length, "Tree missing follow keys: ".concat(warningMissKeys.slice(0, 100).map(function (key) {
return "'".concat(key, "'");
}).join(', ')));
var result;
if (checked === true) {
result = fillConductCheck(keys, levelEntities, maxLevel, syntheticGetCheckDisabled);
} else {
result = cleanConductCheck(keys, checked.halfCheckedKeys, levelEntities, maxLevel, syntheticGetCheckDisabled);
}
return result;
}
/***/ }),
/***/ "OZM5":
/*!*****************************************!*\
!*** ./node_modules/rc-tree/es/util.js ***!
\*****************************************/
/*! exports provided: arrDel, arrAdd, posToArr, getPosition, isTreeNode, getDragNodesKeys, calcDropPosition, calcSelectedKeys, convertDataToTree, parseCheckedKeys, conductExpandParent, getDataAndAria */
/*! exports used: arrAdd, arrDel, calcDropPosition, calcSelectedKeys, conductExpandParent, getDataAndAria, getDragNodesKeys, getPosition, isTreeNode, parseCheckedKeys, posToArr */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return arrDel; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return arrAdd; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "k", function() { return posToArr; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return getPosition; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "i", function() { return isTreeNode; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return getDragNodesKeys; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return calcDropPosition; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return calcSelectedKeys; });
/* unused harmony export convertDataToTree */
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "j", function() { return parseCheckedKeys; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return conductExpandParent; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return getDataAndAria; });
/* harmony import */ var _babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/toConsumableArray */ "KQm4");
/* harmony import */ var _babel_runtime_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/typeof */ "U8pU");
/* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/esm/objectWithoutProperties */ "Ff2n");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react */ "cDcd");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var rc_util_es_warning__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! rc-util/es/warning */ "Kwbf");
/* harmony import */ var _TreeNode__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./TreeNode */ "WaYH");
/**
* Legacy code. Should avoid to use if you are new to import these code.
*/
var DRAG_SIDE_RANGE = 0.25;
var DRAG_MIN_GAP = 2;
function arrDel(list, value) {
var clone = list.slice();
var index = clone.indexOf(value);
if (index >= 0) {
clone.splice(index, 1);
}
return clone;
}
function arrAdd(list, value) {
var clone = list.slice();
if (clone.indexOf(value) === -1) {
clone.push(value);
}
return clone;
}
function posToArr(pos) {
return pos.split('-');
}
function getPosition(level, index) {
return "".concat(level, "-").concat(index);
}
function isTreeNode(node) {
return node && node.type && node.type.isTreeNode;
}
function getDragNodesKeys(dragNodeKey, keyEntities) {
var dragNodesKeys = [dragNodeKey];
var entity = keyEntities[dragNodeKey];
function dig() {
var list = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
list.forEach(function (_ref) {
var key = _ref.key,
children = _ref.children;
dragNodesKeys.push(key);
dig(children);
});
}
dig(entity.children);
return dragNodesKeys;
} // Only used when drag, not affect SSR.
function calcDropPosition(event, treeNode) {
var clientY = event.clientY;
var _treeNode$selectHandl = treeNode.selectHandle.getBoundingClientRect(),
top = _treeNode$selectHandl.top,
bottom = _treeNode$selectHandl.bottom,
height = _treeNode$selectHandl.height;
var des = Math.max(height * DRAG_SIDE_RANGE, DRAG_MIN_GAP);
if (clientY <= top + des) {
return -1;
}
if (clientY >= bottom - des) {
return 1;
}
return 0;
}
/**
* Return selectedKeys according with multiple prop
* @param selectedKeys
* @param props
* @returns [string]
*/
function calcSelectedKeys(selectedKeys, props) {
if (!selectedKeys) return undefined;
var multiple = props.multiple;
if (multiple) {
return selectedKeys.slice();
}
if (selectedKeys.length) {
return [selectedKeys[0]];
}
return selectedKeys;
}
var internalProcessProps = function internalProcessProps(props) {
return props;
};
function convertDataToTree(treeData, processor) {
if (!treeData) return [];
var _ref2 = processor || {},
_ref2$processProps = _ref2.processProps,
processProps = _ref2$processProps === void 0 ? internalProcessProps : _ref2$processProps;
var list = Array.isArray(treeData) ? treeData : [treeData];
return list.map(function (_ref3) {
var children = _ref3.children,
props = Object(_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])(_ref3, ["children"]);
var childrenNodes = convertDataToTree(children, processor);
return react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(_TreeNode__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"], Object.assign({}, processProps(props)), childrenNodes);
});
}
/**
* Parse `checkedKeys` to { checkedKeys, halfCheckedKeys } style
*/
function parseCheckedKeys(keys) {
if (!keys) {
return null;
} // Convert keys to object format
var keyProps;
if (Array.isArray(keys)) {
// [Legacy] Follow the api doc
keyProps = {
checkedKeys: keys,
halfCheckedKeys: undefined
};
} else if (Object(_babel_runtime_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(keys) === 'object') {
keyProps = {
checkedKeys: keys.checked || undefined,
halfCheckedKeys: keys.halfChecked || undefined
};
} else {
Object(rc_util_es_warning__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(false, '`checkedKeys` is not an array or an object');
return null;
}
return keyProps;
}
/**
* If user use `autoExpandParent` we should get the list of parent node
* @param keyList
* @param keyEntities
*/
function conductExpandParent(keyList, keyEntities) {
var expandedKeys = new Set();
function conductUp(key) {
if (expandedKeys.has(key)) return;
var entity = keyEntities[key];
if (!entity) return;
expandedKeys.add(key);
var parent = entity.parent,
node = entity.node;
if (node.disabled) return;
if (parent) {
conductUp(parent.key);
}
}
(keyList || []).forEach(function (key) {
conductUp(key);
});
return Object(_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(expandedKeys);
}
/**
* Returns only the data- and aria- key/value pairs
*/
function getDataAndAria(props) {
var omitProps = {};
Object.keys(props).forEach(function (key) {
if (key.startsWith('data-') || key.startsWith('aria-')) {
omitProps[key] = props[key];
}
});
return omitProps;
}
/***/ }),
/***/ "P/tu":
/*!*********************************************!*\
!*** ./src/components/CustomTree/index.tsx ***!
\*********************************************/
/*! exports provided: default */
/*! exports used: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony import */ var antd_es_tree_style__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! antd/es/tree/style */ "ozfa");
/* harmony import */ var antd_es_tree__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! antd/es/tree */ "MJZm");
/* harmony import */ var _Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/extends */ "0Owb");
/* harmony import */ var _Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_asyncToGenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/asyncToGenerator */ "9og8");
/* harmony import */ var _Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/slicedToArray */ "tJVT");
/* harmony import */ var _Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties */ "PpiC");
/* harmony import */ var _Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/regenerator */ "WmNS");
/* harmony import */ var _Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! react */ "cDcd");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_7__);
/* harmony import */ var _service_problemset__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/service/problemset */ "WCUW");
/* harmony import */ var _index_less_modules__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./index.less?modules */ "spXi");
/* harmony import */ var _index_less_modules__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_index_less_modules__WEBPACK_IMPORTED_MODULE_9__);
var CustomTree = function CustomTree(_ref) {
var value = _ref.value,
onChange = _ref.onChange,
defaultValue = _ref.defaultValue,
disabled = _ref.disabled,
props = Object(_Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(_ref, ["value", "onChange", "defaultValue", "disabled"]);
var _useState = Object(react__WEBPACK_IMPORTED_MODULE_7__["useState"])([]),
_useState2 = Object(_Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(_useState, 2),
treeData = _useState2[0],
setTreeData = _useState2[1];
var _useState3 = Object(react__WEBPACK_IMPORTED_MODULE_7__["useState"])('1'),
_useState4 = Object(_Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(_useState3, 2),
keyIndex = _useState4[0],
setKeyIndex = _useState4[1]; // const sign = useRef(true)
Object(react__WEBPACK_IMPORTED_MODULE_7__["useEffect"])(function () {
getData();
}, []);
var getData = /*#__PURE__*/function () {
var _ref2 = Object(_Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_asyncToGenerator__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])( /*#__PURE__*/_Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default.a.mark(function _callee() {
var res, item;
return _Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_6___default.a.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return Object(_service_problemset__WEBPACK_IMPORTED_MODULE_8__[/* getPaperList */ "x"])({});
case 2:
res = _context.sent;
if (res !== null && res !== void 0 && res.data) {
item = [{
title: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_7___default.a.createElement("div", {
title: '根目录',
className: _index_less_modules__WEBPACK_IMPORTED_MODULE_9___default.a.name
}, "\u6839\u76EE\u5F55"),
value: 0,
key: 0,
icon: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_7___default.a.createElement("i", {
className: "iconfont icon-wenjianjia2 c-light-primary mr10",
style: {
lineHeight: '19px'
}
}),
children: transformTreeKey(res.data || [])
}];
setTreeData(item);
setKeyIndex('2');
}
case 4:
case "end":
return _context.stop();
}
}
}, _callee);
}));
return function getData() {
return _ref2.apply(this, arguments);
};
}();
var transformTreeKey = function transformTreeKey(items) {
function mapTree(org) {
var realChildren = org.children;
var haveChildren = Array.isArray(realChildren) && realChildren.length > 0;
var key = org === null || org === void 0 ? void 0 : org.group_id;
return {
//分别将我们查询出来的值做出改变他的key
title: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_7___default.a.createElement("div", {
title: org === null || org === void 0 ? void 0 : org.name,
className: _index_less_modules__WEBPACK_IMPORTED_MODULE_9___default.a.name
}, org === null || org === void 0 ? void 0 : org.name),
value: key,
key: key,
icon: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_7___default.a.createElement("i", {
className: "iconfont icon-wenjianjia2 c-light-primary mr10",
style: {
lineHeight: '19px'
}
}),
//判断它是否存在子集,若果存在就进行再次进行遍历操作,知道不存在子集便对其他的元素进行操作
children: haveChildren ? realChildren === null || realChildren === void 0 ? void 0 : realChildren.map(function (e) {
return mapTree(e);
}) : []
};
}
return items === null || items === void 0 ? void 0 : items.map(function (org) {
return mapTree(org);
});
};
var param = defaultValue ? {
defaultExpandedKeys: [0]
} : {
selectedKeys: value,
defaultExpandedKeys: value
};
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_7___default.a.createElement("div", {
className: _index_less_modules__WEBPACK_IMPORTED_MODULE_9___default.a.customTree
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_7___default.a.createElement(antd_es_tree__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"], Object(_Users_dingyongkang_Documents_workspace_zhiqing_educoder_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])({
key: keyIndex
}, param, {
showIcon: true,
treeData: treeData,
onSelect: onChange,
disabled: disabled
}, props)));
};
/* harmony default export */ __webpack_exports__["a"] = (CustomTree);
/***/ }),
/***/ "Q0Vu":
/*!**********************************************************!*\
!*** ./src/components/LanguageSelect/index.less?modules ***!
\**********************************************************/
/*! no static exports found */
/*! exports used: default */
/*! ModuleConcatenation bailout: Module is not an ECMAScript module */
/***/ (function(module, exports, __webpack_require__) {
// extracted by mini-css-extract-plugin
module.exports = {"flex_box_center":"flex_box_center___3fHaw","flex_space_between":"flex_space_between___1tu3K","flex_box_vertical_center":"flex_box_vertical_center___3kmTT","flex_box_center_end":"flex_box_center_end___19OcD","flex_box_column":"flex_box_column___1aMoy","main":"main___JkLSb","wrap":"wrap___1k_Ib","content":"content___1by-P","name":"name___2mlTd","directionContentWrap":"directionContentWrap___3qsxQ","directionItem":"directionItem___2aAvu","active":"active___ACZqb","subActive":"subActive___2RkoB","subItem":"subItem___3tJgX","subMenu":"subMenu___Y_7S_","action":"action___xqgFs"};
/***/ }),
/***/ "SJMd":
/*!****************************************************!*\
!*** ./node_modules/code-prettify/src/prettify.js ***!
\****************************************************/
/*! no static exports found */
/*! ModuleConcatenation bailout: Module is not an ECMAScript module */
/***/ (function(module, exports) {
/**
* @license
* Copyright (C) 2006 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* @fileoverview
* some functions for browser-side pretty printing of code contained in html.
*
*
* For a fairly comprehensive set of languages see the
* README
* file that came with this source. At a minimum, the lexer should work on a
* number of languages including C and friends, Java, Python, Bash, SQL, HTML,
* XML, CSS, Javascript, and Makefiles. It works passably on Ruby, PHP and Awk
* and a subset of Perl, but, because of commenting conventions, doesn't work on
* Smalltalk, Lisp-like, or CAML-like languages without an explicit lang class.
*
* Usage:
* include this source file in an html page via
* {@code }
* define style rules. See the example page for examples.
* mark the {@code } and {@code } tags in your source with
* {@code class=prettyprint.}
* You can also use the (html deprecated) {@code } tag, but the pretty
* printer needs to do more substantial DOM manipulations to support that, so
* some css styles may not be preserved.
*
* That's it. I wanted to keep the API as simple as possible, so there's no
* need to specify which language the code is in, but if you wish, you can add
* another class to the {@code } or {@code } element to specify the
* language, as in {@code }. Any class that
* starts with "lang-" followed by a file extension, specifies the file type.
* See the "lang-*.js" files in this directory for code that implements
* per-language file handlers.
*
* Change log:
* cbeust, 2006/08/22
*
* Java annotations (start with "@") are now captured as literals ("lit")
*
* @requires console
*/
// JSLint declarations
/*global console, document, navigator, setTimeout, window, define */
/**
* @typedef {!Array.}
* Alternating indices and the decorations that should be inserted there.
* The indices are monotonically increasing.
*/
var DecorationsT;
/**
* @typedef {!{
* sourceNode: !Element,
* pre: !(number|boolean),
* langExtension: ?string,
* numberLines: ?(number|boolean),
* sourceCode: ?string,
* spans: ?(Array.),
* basePos: ?number,
* decorations: ?DecorationsT
* }}
*
* sourceNode the element containing the source
* sourceCode source as plain text
* pre truthy if white-space in text nodes
* should be considered significant.
* spans alternating span start indices into source
* and the text node or element (e.g. {@code }) corresponding to that
* span.
* decorations an array of style classes preceded
* by the position at which they start in job.sourceCode in order
* basePos integer position of this.sourceCode in the larger chunk of
* source.
*
*/
var JobT;
/**
* @typedef {!{
* sourceCode: string,
* spans: !(Array.)
* }}
*
* sourceCode source as plain text
* spans alternating span start indices into source
* and the text node or element (e.g. {@code }) corresponding to that
* span.
*
*/
var SourceSpansT;
/** @define {boolean} */
var IN_GLOBAL_SCOPE = false;
var HACK_TO_FIX_JS_INCLUDE_PL;
/**
* {@type !{
* 'createSimpleLexer': function (Array, Array): (function (JobT)),
* 'registerLangHandler': function (function (JobT), Array.),
* 'PR_ATTRIB_NAME': string,
* 'PR_ATTRIB_NAME': string,
* 'PR_ATTRIB_VALUE': string,
* 'PR_COMMENT': string,
* 'PR_DECLARATION': string,
* 'PR_KEYWORD': string,
* 'PR_LITERAL': string,
* 'PR_NOCODE': string,
* 'PR_PLAIN': string,
* 'PR_PUNCTUATION': string,
* 'PR_SOURCE': string,
* 'PR_STRING': string,
* 'PR_TAG': string,
* 'PR_TYPE': string,
* 'prettyPrintOne': function (string, string, number|boolean),
* 'prettyPrint': function (?function, ?(HTMLElement|HTMLDocument))
* }}
* @const
*/
var PR;
/**
* Split {@code prettyPrint} into multiple timeouts so as not to interfere with
* UI events.
* If set to {@code false}, {@code prettyPrint()} is synchronous.
*/
window['PR_SHOULD_USE_CONTINUATION'] = true;
/**
* Pretty print a chunk of code.
* @param {string} sourceCodeHtml The HTML to pretty print.
* @param {string} opt_langExtension The language name to use.
* Typically, a filename extension like 'cpp' or 'java'.
* @param {number|boolean} opt_numberLines True to number lines,
* or the 1-indexed number of the first line in sourceCodeHtml.
* @return {string} code as html, but prettier
*/
var prettyPrintOne;
/**
* Find all the {@code } and {@code } tags in the DOM with
* {@code class=prettyprint} and prettify them.
*
* @param {Function} opt_whenDone called when prettifying is done.
* @param {HTMLElement|HTMLDocument} opt_root an element or document
* containing all the elements to pretty print.
* Defaults to {@code document.body}.
*/
var prettyPrint;
(function () {
var win = window;
// Keyword lists for various languages.
// We use things that coerce to strings to make them compact when minified
// and to defeat aggressive optimizers that fold large string constants.
var FLOW_CONTROL_KEYWORDS = ["break,continue,do,else,for,if,return,while"];
var C_KEYWORDS = [FLOW_CONTROL_KEYWORDS,"auto,case,char,const,default," +
"double,enum,extern,float,goto,inline,int,long,register,restrict,short,signed," +
"sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"];
var COMMON_KEYWORDS = [C_KEYWORDS,"catch,class,delete,false,import," +
"new,operator,private,protected,public,this,throw,true,try,typeof"];
var CPP_KEYWORDS = [COMMON_KEYWORDS,"alignas,alignof,align_union,asm,axiom,bool," +
"concept,concept_map,const_cast,constexpr,decltype,delegate," +
"dynamic_cast,explicit,export,friend,generic,late_check," +
"mutable,namespace,noexcept,noreturn,nullptr,property,reinterpret_cast,static_assert," +
"static_cast,template,typeid,typename,using,virtual,where"];
var JAVA_KEYWORDS = [COMMON_KEYWORDS,
"abstract,assert,boolean,byte,extends,finally,final,implements,import," +
"instanceof,interface,null,native,package,strictfp,super,synchronized," +
"throws,transient"];
var CSHARP_KEYWORDS = [COMMON_KEYWORDS,
"abstract,add,alias,as,ascending,async,await,base,bool,by,byte,checked,decimal,delegate,descending," +
"dynamic,event,finally,fixed,foreach,from,get,global,group,implicit,in,interface," +
"internal,into,is,join,let,lock,null,object,out,override,orderby,params," +
"partial,readonly,ref,remove,sbyte,sealed,select,set,stackalloc,string,select,uint,ulong," +
"unchecked,unsafe,ushort,value,var,virtual,where,yield"];
var COFFEE_KEYWORDS = "all,and,by,catch,class,else,extends,false,finally," +
"for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then," +
"throw,true,try,unless,until,when,while,yes";
var JSCRIPT_KEYWORDS = [COMMON_KEYWORDS,
"abstract,async,await,constructor,debugger,enum,eval,export,function," +
"get,implements,instanceof,interface,let,null,set,undefined,var,with," +
"yield,Infinity,NaN"];
var PERL_KEYWORDS = "caller,delete,die,do,dump,elsif,eval,exit,foreach,for," +
"goto,if,import,last,local,my,next,no,our,print,package,redo,require," +
"sub,undef,unless,until,use,wantarray,while,BEGIN,END";
var PYTHON_KEYWORDS = [FLOW_CONTROL_KEYWORDS, "and,as,assert,class,def,del," +
"elif,except,exec,finally,from,global,import,in,is,lambda," +
"nonlocal,not,or,pass,print,raise,try,with,yield," +
"False,True,None"];
var RUBY_KEYWORDS = [FLOW_CONTROL_KEYWORDS, "alias,and,begin,case,class," +
"def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo," +
"rescue,retry,self,super,then,true,undef,unless,until,when,yield," +
"BEGIN,END"];
var SH_KEYWORDS = [FLOW_CONTROL_KEYWORDS, "case,done,elif,esac,eval,fi," +
"function,in,local,set,then,until"];
var ALL_KEYWORDS = [
CPP_KEYWORDS, CSHARP_KEYWORDS, JAVA_KEYWORDS, JSCRIPT_KEYWORDS,
PERL_KEYWORDS, PYTHON_KEYWORDS, RUBY_KEYWORDS, SH_KEYWORDS];
var C_TYPES = /^(DIR|FILE|array|vector|(de|priority_)?queue|(forward_)?list|stack|(const_)?(reverse_)?iterator|(unordered_)?(multi)?(set|map)|bitset|u?(int|float)\d*)\b/;
// token style names. correspond to css classes
/**
* token style for a string literal
* @const
*/
var PR_STRING = 'str';
/**
* token style for a keyword
* @const
*/
var PR_KEYWORD = 'kwd';
/**
* token style for a comment
* @const
*/
var PR_COMMENT = 'com';
/**
* token style for a type
* @const
*/
var PR_TYPE = 'typ';
/**
* token style for a literal value. e.g. 1, null, true.
* @const
*/
var PR_LITERAL = 'lit';
/**
* token style for a punctuation string.
* @const
*/
var PR_PUNCTUATION = 'pun';
/**
* token style for plain text.
* @const
*/
var PR_PLAIN = 'pln';
/**
* token style for an sgml tag.
* @const
*/
var PR_TAG = 'tag';
/**
* token style for a markup declaration such as a DOCTYPE.
* @const
*/
var PR_DECLARATION = 'dec';
/**
* token style for embedded source.
* @const
*/
var PR_SOURCE = 'src';
/**
* token style for an sgml attribute name.
* @const
*/
var PR_ATTRIB_NAME = 'atn';
/**
* token style for an sgml attribute value.
* @const
*/
var PR_ATTRIB_VALUE = 'atv';
/**
* A class that indicates a section of markup that is not code, e.g. to allow
* embedding of line numbers within code listings.
* @const
*/
var PR_NOCODE = 'nocode';
/**
* A set of tokens that can precede a regular expression literal in
* javascript
* http://web.archive.org/web/20070717142515/http://www.mozilla.org/js/language/js20/rationale/syntax.html
* has the full list, but I've removed ones that might be problematic when
* seen in languages that don't support regular expression literals.
*
* Specifically, I've removed any keywords that can't precede a regexp
* literal in a syntactically legal javascript program, and I've removed the
* "in" keyword since it's not a keyword in many languages, and might be used
* as a count of inches.
*
*
The link above does not accurately describe EcmaScript rules since
* it fails to distinguish between (a=++/b/i) and (a++/b/i) but it works
* very well in practice.
*
* @private
* @const
*/
var REGEXP_PRECEDER_PATTERN = '(?:^^\\.?|[+-]|[!=]=?=?|\\#|%=?|&&?=?|\\(|\\*=?|[+\\-]=|->|\\/=?|::?|<=?|>>?>?=?|,|;|\\?|@|\\[|~|{|\\^\\^?=?|\\|\\|?=?|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*';
// CAVEAT: this does not properly handle the case where a regular
// expression immediately follows another since a regular expression may
// have flags for case-sensitivity and the like. Having regexp tokens
// adjacent is not valid in any language I'm aware of, so I'm punting.
// TODO: maybe style special characters inside a regexp as punctuation.
/**
* Given a group of {@link RegExp}s, returns a {@code RegExp} that globally
* matches the union of the sets of strings matched by the input RegExp.
* Since it matches globally, if the input strings have a start-of-input
* anchor (/^.../), it is ignored for the purposes of unioning.
* @param {Array.} regexs non multiline, non-global regexs.
* @return {RegExp} a global regex.
*/
function combinePrefixPatterns(regexs) {
var capturedGroupIndex = 0;
var needToFoldCase = false;
var ignoreCase = false;
for (var i = 0, n = regexs.length; i < n; ++i) {
var regex = regexs[i];
if (regex.ignoreCase) {
ignoreCase = true;
} else if (/[a-z]/i.test(regex.source.replace(
/\\u[0-9a-f]{4}|\\x[0-9a-f]{2}|\\[^ux]/gi, ''))) {
needToFoldCase = true;
ignoreCase = false;
break;
}
}
var escapeCharToCodeUnit = {
'b': 8,
't': 9,
'n': 0xa,
'v': 0xb,
'f': 0xc,
'r': 0xd
};
function decodeEscape(charsetPart) {
var cc0 = charsetPart.charCodeAt(0);
if (cc0 !== 92 /* \\ */) {
return cc0;
}
var c1 = charsetPart.charAt(1);
cc0 = escapeCharToCodeUnit[c1];
if (cc0) {
return cc0;
} else if ('0' <= c1 && c1 <= '7') {
return parseInt(charsetPart.substring(1), 8);
} else if (c1 === 'u' || c1 === 'x') {
return parseInt(charsetPart.substring(2), 16);
} else {
return charsetPart.charCodeAt(1);
}
}
function encodeEscape(charCode) {
if (charCode < 0x20) {
return (charCode < 0x10 ? '\\x0' : '\\x') + charCode.toString(16);
}
var ch = String.fromCharCode(charCode);
return (ch === '\\' || ch === '-' || ch === ']' || ch === '^')
? "\\" + ch : ch;
}
function caseFoldCharset(charSet) {
var charsetParts = charSet.substring(1, charSet.length - 1).match(
new RegExp(
'\\\\u[0-9A-Fa-f]{4}'
+ '|\\\\x[0-9A-Fa-f]{2}'
+ '|\\\\[0-3][0-7]{0,2}'
+ '|\\\\[0-7]{1,2}'
+ '|\\\\[\\s\\S]'
+ '|-'
+ '|[^-\\\\]',
'g'));
var ranges = [];
var inverse = charsetParts[0] === '^';
var out = ['['];
if (inverse) { out.push('^'); }
for (var i = inverse ? 1 : 0, n = charsetParts.length; i < n; ++i) {
var p = charsetParts[i];
if (/\\[bdsw]/i.test(p)) { // Don't muck with named groups.
out.push(p);
} else {
var start = decodeEscape(p);
var end;
if (i + 2 < n && '-' === charsetParts[i + 1]) {
end = decodeEscape(charsetParts[i + 2]);
i += 2;
} else {
end = start;
}
ranges.push([start, end]);
// If the range might intersect letters, then expand it.
// This case handling is too simplistic.
// It does not deal with non-latin case folding.
// It works for latin source code identifiers though.
if (!(end < 65 || start > 122)) {
if (!(end < 65 || start > 90)) {
ranges.push([Math.max(65, start) | 32, Math.min(end, 90) | 32]);
}
if (!(end < 97 || start > 122)) {
ranges.push([Math.max(97, start) & ~32, Math.min(end, 122) & ~32]);
}
}
}
}
// [[1, 10], [3, 4], [8, 12], [14, 14], [16, 16], [17, 17]]
// -> [[1, 12], [14, 14], [16, 17]]
ranges.sort(function (a, b) { return (a[0] - b[0]) || (b[1] - a[1]); });
var consolidatedRanges = [];
var lastRange = [];
for (var i = 0; i < ranges.length; ++i) {
var range = ranges[i];
if (range[0] <= lastRange[1] + 1) {
lastRange[1] = Math.max(lastRange[1], range[1]);
} else {
consolidatedRanges.push(lastRange = range);
}
}
for (var i = 0; i < consolidatedRanges.length; ++i) {
var range = consolidatedRanges[i];
out.push(encodeEscape(range[0]));
if (range[1] > range[0]) {
if (range[1] + 1 > range[0]) { out.push('-'); }
out.push(encodeEscape(range[1]));
}
}
out.push(']');
return out.join('');
}
function allowAnywhereFoldCaseAndRenumberGroups(regex) {
// Split into character sets, escape sequences, punctuation strings
// like ('(', '(?:', ')', '^'), and runs of characters that do not
// include any of the above.
var parts = regex.source.match(
new RegExp(
'(?:'
+ '\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]' // a character set
+ '|\\\\u[A-Fa-f0-9]{4}' // a unicode escape
+ '|\\\\x[A-Fa-f0-9]{2}' // a hex escape
+ '|\\\\[0-9]+' // a back-reference or octal escape
+ '|\\\\[^ux0-9]' // other escape sequence
+ '|\\(\\?[:!=]' // start of a non-capturing group
+ '|[\\(\\)\\^]' // start/end of a group, or line start
+ '|[^\\x5B\\x5C\\(\\)\\^]+' // run of other characters
+ ')',
'g'));
var n = parts.length;
// Maps captured group numbers to the number they will occupy in
// the output or to -1 if that has not been determined, or to
// undefined if they need not be capturing in the output.
var capturedGroups = [];
// Walk over and identify back references to build the capturedGroups
// mapping.
for (var i = 0, groupIndex = 0; i < n; ++i) {
var p = parts[i];
if (p === '(') {
// groups are 1-indexed, so max group index is count of '('
++groupIndex;
} else if ('\\' === p.charAt(0)) {
var decimalValue = +p.substring(1);
if (decimalValue) {
if (decimalValue <= groupIndex) {
capturedGroups[decimalValue] = -1;
} else {
// Replace with an unambiguous escape sequence so that
// an octal escape sequence does not turn into a backreference
// to a capturing group from an earlier regex.
parts[i] = encodeEscape(decimalValue);
}
}
}
}
// Renumber groups and reduce capturing groups to non-capturing groups
// where possible.
for (var i = 1; i < capturedGroups.length; ++i) {
if (-1 === capturedGroups[i]) {
capturedGroups[i] = ++capturedGroupIndex;
}
}
for (var i = 0, groupIndex = 0; i < n; ++i) {
var p = parts[i];
if (p === '(') {
++groupIndex;
if (!capturedGroups[groupIndex]) {
parts[i] = '(?:';
}
} else if ('\\' === p.charAt(0)) {
var decimalValue = +p.substring(1);
if (decimalValue && decimalValue <= groupIndex) {
parts[i] = '\\' + capturedGroups[decimalValue];
}
}
}
// Remove any prefix anchors so that the output will match anywhere.
// ^^ really does mean an anchored match though.
for (var i = 0; i < n; ++i) {
if ('^' === parts[i] && '^' !== parts[i + 1]) { parts[i] = ''; }
}
// Expand letters to groups to handle mixing of case-sensitive and
// case-insensitive patterns if necessary.
if (regex.ignoreCase && needToFoldCase) {
for (var i = 0; i < n; ++i) {
var p = parts[i];
var ch0 = p.charAt(0);
if (p.length >= 2 && ch0 === '[') {
parts[i] = caseFoldCharset(p);
} else if (ch0 !== '\\') {
// TODO: handle letters in numeric escapes.
parts[i] = p.replace(
/[a-zA-Z]/g,
function (ch) {
var cc = ch.charCodeAt(0);
return '[' + String.fromCharCode(cc & ~32, cc | 32) + ']';
});
}
}
}
return parts.join('');
}
var rewritten = [];
for (var i = 0, n = regexs.length; i < n; ++i) {
var regex = regexs[i];
if (regex.global || regex.multiline) { throw new Error('' + regex); }
rewritten.push(
'(?:' + allowAnywhereFoldCaseAndRenumberGroups(regex) + ')');
}
return new RegExp(rewritten.join('|'), ignoreCase ? 'gi' : 'g');
}
/**
* Split markup into a string of source code and an array mapping ranges in
* that string to the text nodes in which they appear.
*
*
* The HTML DOM structure:
*
* (Element "p"
* (Element "b"
* (Text "print ")) ; #1
* (Text "'Hello '") ; #2
* (Element "br") ; #3
* (Text " + 'World';")) ; #4
*
*
* corresponds to the HTML
* {@code
print 'Hello ' + 'World';
}.
*
*
* It will produce the output:
*
* {
* sourceCode: "print 'Hello '\n + 'World';",
* // 1 2
* // 012345678901234 5678901234567
* spans: [0, #1, 6, #2, 14, #3, 15, #4]
* }
*
*
* where #1 is a reference to the {@code "print "} text node above, and so
* on for the other text nodes.
*
*
*
* The {@code} spans array is an array of pairs. Even elements are the start
* indices of substrings, and odd elements are the text nodes (or BR elements)
* that contain the text for those substrings.
* Substrings continue until the next index or the end of the source.
*
*
* @param {Node} node an HTML DOM subtree containing source-code.
* @param {boolean|number} isPreformatted truthy if white-space in
* text nodes should be considered significant.
* @return {SourceSpansT} source code and the nodes in which they occur.
*/
function extractSourceSpans(node, isPreformatted) {
var nocode = /(?:^|\s)nocode(?:\s|$)/;
var chunks = [];
var length = 0;
var spans = [];
var k = 0;
function walk(node) {
var type = node.nodeType;
if (type == 1) { // Element
if (nocode.test(node.className)) { return; }
for (var child = node.firstChild; child; child = child.nextSibling) {
walk(child);
}
var nodeName = node.nodeName.toLowerCase();
if ('br' === nodeName || 'li' === nodeName) {
chunks[k] = '\n';
spans[k << 1] = length++;
spans[(k++ << 1) | 1] = node;
}
} else if (type == 3 || type == 4) { // Text
var text = node.nodeValue;
if (text.length) {
if (!isPreformatted) {
text = text.replace(/[ \t\r\n]+/g, ' ');
} else {
text = text.replace(/\r\n?/g, '\n'); // Normalize newlines.
}
// TODO: handle tabs here?
chunks[k] = text;
spans[k << 1] = length;
length += text.length;
spans[(k++ << 1) | 1] = node;
}
}
}
walk(node);
return {
sourceCode: chunks.join('').replace(/\n$/, ''),
spans: spans
};
}
/**
* Apply the given language handler to sourceCode and add the resulting
* decorations to out.
* @param {!Element} sourceNode
* @param {number} basePos the index of sourceCode within the chunk of source
* whose decorations are already present on out.
* @param {string} sourceCode
* @param {function(JobT)} langHandler
* @param {DecorationsT} out
*/
function appendDecorations(
sourceNode, basePos, sourceCode, langHandler, out) {
if (!sourceCode) { return; }
/** @type {JobT} */
var job = {
sourceNode: sourceNode,
pre: 1,
langExtension: null,
numberLines: null,
sourceCode: sourceCode,
spans: null,
basePos: basePos,
decorations: null
};
langHandler(job);
out.push.apply(out, job.decorations);
}
var notWs = /\S/;
/**
* Given an element, if it contains only one child element and any text nodes
* it contains contain only space characters, return the sole child element.
* Otherwise returns undefined.
*
* This is meant to return the CODE element in {@code
} when
* there is a single child element that contains all the non-space textual
* content, but not to return anything where there are multiple child elements
* as in {@code ...... } or when there
* is textual content.
*/
function childContentWrapper(element) {
var wrapper = undefined;
for (var c = element.firstChild; c; c = c.nextSibling) {
var type = c.nodeType;
wrapper = (type === 1) // Element Node
? (wrapper ? element : c)
: (type === 3) // Text Node
? (notWs.test(c.nodeValue) ? element : wrapper)
: wrapper;
}
return wrapper === element ? undefined : wrapper;
}
/** Given triples of [style, pattern, context] returns a lexing function,
* The lexing function interprets the patterns to find token boundaries and
* returns a decoration list of the form
* [index_0, style_0, index_1, style_1, ..., index_n, style_n]
* where index_n is an index into the sourceCode, and style_n is a style
* constant like PR_PLAIN. index_n-1 <= index_n, and style_n-1 applies to
* all characters in sourceCode[index_n-1:index_n].
*
* The stylePatterns is a list whose elements have the form
* [style : string, pattern : RegExp, DEPRECATED, shortcut : string].
*
* Style is a style constant like PR_PLAIN, or can be a string of the
* form 'lang-FOO', where FOO is a language extension describing the
* language of the portion of the token in $1 after pattern executes.
* E.g., if style is 'lang-lisp', and group 1 contains the text
* '(hello (world))', then that portion of the token will be passed to the
* registered lisp handler for formatting.
* The text before and after group 1 will be restyled using this decorator
* so decorators should take care that this doesn't result in infinite
* recursion. For example, the HTML lexer rule for SCRIPT elements looks
* something like ['lang-js', /<[s]cript>(.+?)<\/script>/]. This may match
* '