You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
778 lines
30 KiB
778 lines
30 KiB
"use strict";
|
|
(self["webpackChunk"] = self["webpackChunk"] || []).push([[3451],{
|
|
|
|
/***/ 75288:
|
|
/*!**********************************************************************************************!*\
|
|
!*** ./src/pages/Classrooms/Lists/Statistics/StudentStatistics/Detail/index.tsx + 2 modules ***!
|
|
\**********************************************************************************************/
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
// ESM COMPAT FLAG
|
|
__webpack_require__.r(__webpack_exports__);
|
|
|
|
// EXPORTS
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
"default": function() { return /* binding */ Detail; }
|
|
});
|
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/table/style/index.js + 1 modules
|
|
var style = __webpack_require__(71854);
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/table/index.js + 58 modules
|
|
var table = __webpack_require__(67250);
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/menu/style/index.js + 1 modules
|
|
var menu_style = __webpack_require__(83736);
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/menu/index.js + 5 modules
|
|
var menu = __webpack_require__(66516);
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/regeneratorRuntime.js
|
|
var regeneratorRuntime = __webpack_require__(17061);
|
|
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/asyncToGenerator.js
|
|
var asyncToGenerator = __webpack_require__(17156);
|
|
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectSpread2.js
|
|
var objectSpread2 = __webpack_require__(42122);
|
|
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/slicedToArray.js
|
|
var slicedToArray = __webpack_require__(27424);
|
|
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
|
|
// EXTERNAL MODULE: ./node_modules/react/index.js
|
|
var react = __webpack_require__(67294);
|
|
// EXTERNAL MODULE: ./src/.umi-production/exports.ts + 8 modules
|
|
var _umi_production_exports = __webpack_require__(89214);
|
|
// EXTERNAL MODULE: ./src/utils/fetch.ts
|
|
var fetch = __webpack_require__(84519);
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/Statistics/StudentStatistics/Detail/index.less?modules
|
|
// extracted by mini-css-extract-plugin
|
|
/* harmony default export */ var Detailmodules = ({"flex_box_center":"flex_box_center___BogAZ","flex_space_between":"flex_space_between___vFRFf","flex_box_vertical_center":"flex_box_vertical_center___AZ2v2","flex_box_center_end":"flex_box_center_end___PznGE","flex_box_column":"flex_box_column___Jbx4l","containerTitle":"containerTitle___Gs2Wj","des":"des___PxCdT","menu":"menu___uCky_"});
|
|
// EXTERNAL MODULE: ./src/utils/util.tsx
|
|
var util = __webpack_require__(29427);
|
|
// EXTERNAL MODULE: ./node_modules/moment/moment.js
|
|
var moment = __webpack_require__(30381);
|
|
var moment_default = /*#__PURE__*/__webpack_require__.n(moment);
|
|
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
|
|
var jsx_runtime = __webpack_require__(85893);
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/Statistics/StudentStatistics/Detail/columns.tsx
|
|
|
|
|
|
|
|
|
|
var columns = [{
|
|
type: 'shixun',
|
|
sorter: {
|
|
field: '',
|
|
order: ''
|
|
},
|
|
column: function column(params) {
|
|
var param = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
console.log(params, 4455488);
|
|
var _param$field = param.field,
|
|
field = _param$field === void 0 ? '' : _param$field,
|
|
_param$order = param.order,
|
|
order = _param$order === void 0 ? '' : _param$order;
|
|
return [{
|
|
title: '序号',
|
|
dataIndex: 'number',
|
|
align: 'center',
|
|
width: 70,
|
|
render: function render(a, b, i) {
|
|
return params.limit * (params.page - 1) + i + 1;
|
|
}
|
|
}, {
|
|
title: '实践项目名称',
|
|
dataIndex: 'shixun_name',
|
|
ellipsis: true
|
|
}, {
|
|
title: '关卡进度',
|
|
dataIndex: 'passed_game_count',
|
|
sortOrder: field === 'passed_game_count' && order,
|
|
width: 90,
|
|
sorter: true,
|
|
render: function render(a, b) {
|
|
return "".concat(a, "/").concat(b === null || b === void 0 ? void 0 : b.games_count);
|
|
}
|
|
}, {
|
|
title: '评测次数',
|
|
dataIndex: 'evaluate_count',
|
|
sortOrder: field === 'evaluate_count' && order,
|
|
width: 90,
|
|
sorter: true
|
|
}, {
|
|
title: '总耗时',
|
|
dataIndex: 'cost_time',
|
|
sortOrder: field === 'cost_time' && order,
|
|
sorter: true,
|
|
width: 130,
|
|
render: function render(text) {
|
|
return text && (0,util/* toTimeFormat */.li)(text) || "-";
|
|
}
|
|
}, {
|
|
title: '开始学习时间',
|
|
dataIndex: 'start_at',
|
|
width: 100,
|
|
render: function render(text) {
|
|
return text && moment_default()(text).format("YYYY-MM-DD") || '-';
|
|
}
|
|
}, {
|
|
title: '最后学习时间',
|
|
dataIndex: 'end_at',
|
|
width: 100,
|
|
render: function render(text) {
|
|
return text && moment_default()(text).format("YYYY-MM-DD") || '-';
|
|
}
|
|
}, (params === null || params === void 0 ? void 0 : params.menuKey) === '1' && {
|
|
title: '操作',
|
|
width: 80,
|
|
dataIndex: 'action',
|
|
render: function render(id, record) {
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
href: "/classrooms/".concat(params === null || params === void 0 ? void 0 : params.coursesId, "/shixun_homework/").concat(record === null || record === void 0 ? void 0 : record.homework_common_id, "/").concat(record === null || record === void 0 ? void 0 : record.student_work_id, "/comment"),
|
|
target: "_blank",
|
|
children: "\u5B9E\u8BAD\u62A5\u544A"
|
|
});
|
|
}
|
|
}].filter(function (e) {
|
|
return !!e;
|
|
});
|
|
}
|
|
}, {
|
|
type: 'video',
|
|
sorter: {
|
|
field: '',
|
|
order: ''
|
|
},
|
|
column: function column(params) {
|
|
var param = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
var _param$field2 = param.field,
|
|
field = _param$field2 === void 0 ? '' : _param$field2,
|
|
_param$order2 = param.order,
|
|
order = _param$order2 === void 0 ? '' : _param$order2;
|
|
return [{
|
|
title: '序号',
|
|
dataIndex: 'number',
|
|
align: 'center',
|
|
width: 70,
|
|
render: function render(a, b, i) {
|
|
return params.limit * (params.page - 1) + i + 1;
|
|
}
|
|
}, {
|
|
title: '视频名称',
|
|
dataIndex: 'file_name',
|
|
ellipsis: true
|
|
}, {
|
|
title: '观看时长',
|
|
dataIndex: 'total_duration',
|
|
sortOrder: field === 'total_duration' && order,
|
|
sorter: true,
|
|
width: 130,
|
|
render: function render(text) {
|
|
return text && (0,util/* toTimeFormat */.li)(text) || "-";
|
|
}
|
|
}, {
|
|
title: '学习进度',
|
|
dataIndex: 'rate',
|
|
sortOrder: field === 'rate' && order,
|
|
sorter: true,
|
|
width: 90,
|
|
render: function render(text) {
|
|
return text && "".concat(text, "%") || 0;
|
|
}
|
|
}, {
|
|
title: '开始学习时间',
|
|
dataIndex: 'start_at',
|
|
width: 170,
|
|
render: function render(text) {
|
|
return text && moment_default()(text).format("YYYY-MM-DD HH:mm:ss") || '-';
|
|
}
|
|
}, {
|
|
title: '最后学习时间',
|
|
dataIndex: 'end_at',
|
|
width: 170,
|
|
render: function render(text) {
|
|
return text && moment_default()(text).format("YYYY-MM-DD HH:mm:ss") || '-';
|
|
}
|
|
}];
|
|
}
|
|
}, {
|
|
type: 'files',
|
|
sorter: {
|
|
field: '',
|
|
order: ''
|
|
},
|
|
column: function column(params) {
|
|
var param = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
var _param$field3 = param.field,
|
|
field = _param$field3 === void 0 ? '' : _param$field3,
|
|
_param$order3 = param.order,
|
|
order = _param$order3 === void 0 ? '' : _param$order3;
|
|
return [{
|
|
title: '序号',
|
|
dataIndex: 'number',
|
|
align: 'center',
|
|
width: 70,
|
|
render: function render(a, b, i) {
|
|
return params.limit * (params.page - 1) + i + 1;
|
|
}
|
|
}, {
|
|
title: '教学课件名称',
|
|
dataIndex: 'file_name',
|
|
ellipsis: true
|
|
}, {
|
|
title: '下载资源次数',
|
|
dataIndex: 'num',
|
|
sortOrder: field === 'num' && order,
|
|
sorter: true,
|
|
width: 120
|
|
}, {
|
|
title: '下载时间',
|
|
dataIndex: 'end_at',
|
|
width: 170,
|
|
render: function render(text) {
|
|
return text && moment_default()(text).format("YYYY-MM-DD HH:mm:ss") || '-';
|
|
}
|
|
}];
|
|
}
|
|
}];
|
|
// EXTERNAL MODULE: ./node_modules/lodash/lodash.js
|
|
var lodash = __webpack_require__(96486);
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/Statistics/StudentStatistics/Detail/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var StudentStatistics = function StudentStatistics(_ref) {
|
|
var classroomList = _ref.classroomList,
|
|
globalSetting = _ref.globalSetting,
|
|
dispatch = _ref.dispatch;
|
|
var urlParams = (0,_umi_production_exports.useParams)();
|
|
var _useState = (0,react.useState)(objectSpread2_default()(objectSpread2_default()({}, urlParams), {}, {
|
|
page: 1,
|
|
limit: 10
|
|
})),
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
params = _useState2[0],
|
|
setParams = _useState2[1];
|
|
var _useState3 = (0,react.useState)(true),
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
loading = _useState4[0],
|
|
setLoading = _useState4[1];
|
|
var _useState5 = (0,react.useState)('0'),
|
|
_useState6 = slicedToArray_default()(_useState5, 2),
|
|
menuKey = _useState6[0],
|
|
setMenuKey = _useState6[1];
|
|
var _useState7 = (0,react.useState)([]),
|
|
_useState8 = slicedToArray_default()(_useState7, 2),
|
|
list = _useState8[0],
|
|
setList = _useState8[1];
|
|
var getColumn = function getColumn(type) {
|
|
return columns.find(function (e) {
|
|
return e.type === type;
|
|
});
|
|
};
|
|
var _useState9 = (0,react.useState)(getColumn(urlParams === null || urlParams === void 0 ? void 0 : urlParams.type).column(params)),
|
|
_useState10 = slicedToArray_default()(_useState9, 2),
|
|
column = _useState10[0],
|
|
setColumn = _useState10[1];
|
|
var _useState11 = (0,react.useState)(getColumn(urlParams === null || urlParams === void 0 ? void 0 : urlParams.type).sorter),
|
|
_useState12 = slicedToArray_default()(_useState11, 2),
|
|
sorter = _useState12[0],
|
|
setSorter = _useState12[1];
|
|
var _useState13 = (0,react.useState)(0),
|
|
_useState14 = slicedToArray_default()(_useState13, 2),
|
|
total = _useState14[0],
|
|
setTotal = _useState14[1];
|
|
var _useState15 = (0,react.useState)(''),
|
|
_useState16 = slicedToArray_default()(_useState15, 2),
|
|
userName = _useState16[0],
|
|
setUserName = _useState16[1];
|
|
var des = {
|
|
shixun: ['数据统计自课程学习菜单下的实践项目(暂不支持查看学生实训报告)。', '数据统计自课程实验(支持查看学生实训报告)。', '的实践项目学习情况'],
|
|
video: ['数据统计自课程学习菜单下的视频项目。', '数据统计自视频直播。', '的视频学习情况'],
|
|
files: ['数据统计自课程学习菜单下的教学课件。', '数据统计自教学资料', '的教学课件学习情况']
|
|
};
|
|
var Menus = [{
|
|
name: '自由学习',
|
|
id: '0'
|
|
}, {
|
|
name: '计划学习',
|
|
id: '1'
|
|
}];
|
|
var getData = /*#__PURE__*/function () {
|
|
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee(gather) {
|
|
var _gather$order;
|
|
var res;
|
|
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
|
|
while (1) switch (_context.prev = _context.next) {
|
|
case 0:
|
|
setLoading(true);
|
|
_context.next = 3;
|
|
return (0,fetch/* default */.ZP)("/api/courses/".concat(gather === null || gather === void 0 ? void 0 : gather.coursesId, "/").concat(gather === null || gather === void 0 ? void 0 : gather.type, "_statistic_detail.json"), {
|
|
params: {
|
|
sort_by: gather === null || gather === void 0 ? void 0 : gather.field,
|
|
sort_direction: gather !== null && gather !== void 0 && gather.order ? gather === null || gather === void 0 ? void 0 : (_gather$order = gather.order) === null || _gather$order === void 0 ? void 0 : _gather$order.slice(0, -3) : '',
|
|
page: gather === null || gather === void 0 ? void 0 : gather.page,
|
|
limit: gather === null || gather === void 0 ? void 0 : gather.limit,
|
|
user_id: gather === null || gather === void 0 ? void 0 : gather.listId,
|
|
clazz: (gather === null || gather === void 0 ? void 0 : gather.menuKey) === '0' ? 'liberty' : ''
|
|
}
|
|
});
|
|
case 3:
|
|
res = _context.sent;
|
|
if (res !== null && res !== void 0 && res.data) {
|
|
setList((res === null || res === void 0 ? void 0 : res.data) || []);
|
|
setTotal(res === null || res === void 0 ? void 0 : res.count);
|
|
setUserName(res === null || res === void 0 ? void 0 : res.user_name);
|
|
setLoading(false);
|
|
}
|
|
case 5:
|
|
case "end":
|
|
return _context.stop();
|
|
}
|
|
}, _callee);
|
|
}));
|
|
return function getData(_x) {
|
|
return _ref2.apply(this, arguments);
|
|
};
|
|
}();
|
|
(0,react.useEffect)(function () {
|
|
console.log(222);
|
|
var newData = objectSpread2_default()(objectSpread2_default()({
|
|
menuKey: menuKey
|
|
}, params), {}, {
|
|
page: 1,
|
|
limit: 10
|
|
}, getColumn(urlParams === null || urlParams === void 0 ? void 0 : urlParams.type).sorter);
|
|
setColumn(getColumn(urlParams === null || urlParams === void 0 ? void 0 : urlParams.type).column(newData));
|
|
setParams(objectSpread2_default()(objectSpread2_default()({}, params), {}, {
|
|
page: 1,
|
|
limit: 10
|
|
}));
|
|
getData(newData);
|
|
}, [menuKey]);
|
|
var handleChange = function handleChange(pagination, filters, sorterData) {
|
|
var newSorter = {
|
|
field: sorterData.field,
|
|
order: sorterData.order
|
|
};
|
|
if ((sorterData === null || sorterData === void 0 ? void 0 : sorterData.order) === false) {
|
|
newSorter = {
|
|
field: '',
|
|
order: ''
|
|
};
|
|
}
|
|
if (!(0,lodash.isEqual)(newSorter, sorter)) {
|
|
if (!sorterData.order) {
|
|
newSorter = getColumn(urlParams === null || urlParams === void 0 ? void 0 : urlParams.type).sorter;
|
|
}
|
|
var _newData = objectSpread2_default()(objectSpread2_default()({
|
|
menuKey: menuKey
|
|
}, params), {}, {
|
|
page: 1,
|
|
limit: 10
|
|
}, newSorter);
|
|
setParams(objectSpread2_default()(objectSpread2_default()({}, params), {}, {
|
|
page: 1,
|
|
limit: 10
|
|
}));
|
|
setSorter(newSorter);
|
|
getData(_newData);
|
|
setColumn(getColumn(urlParams === null || urlParams === void 0 ? void 0 : urlParams.type).column(_newData, newSorter));
|
|
return;
|
|
}
|
|
var newData = objectSpread2_default()(objectSpread2_default()({
|
|
menuKey: menuKey
|
|
}, params), {}, {
|
|
page: pagination.current,
|
|
limit: pagination.pageSize
|
|
}, newSorter);
|
|
setParams(objectSpread2_default()(objectSpread2_default()({}, params), {}, {
|
|
page: pagination.current,
|
|
limit: pagination.pageSize
|
|
}));
|
|
setColumn(getColumn(urlParams === null || urlParams === void 0 ? void 0 : urlParams.type).column(newData, newSorter));
|
|
getData(newData);
|
|
};
|
|
console.log(urlParams, 'urlParams');
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
|
|
className: Detailmodules.bg,
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
className: Detailmodules.containerTitle,
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
href: "/classrooms/".concat(params === null || params === void 0 ? void 0 : params.coursesId, "/student_statistics/").concat(params === null || params === void 0 ? void 0 : params.categoryId, "?type=").concat(params === null || params === void 0 ? void 0 : params.type),
|
|
className: "iconfont icon-fanhui2 c-grey-333 mr10"
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
className: "font16",
|
|
children: userName ? userName + des[urlParams === null || urlParams === void 0 ? void 0 : urlParams.type][2] : '--'
|
|
})]
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(menu/* default */.Z, {
|
|
className: Detailmodules.menu,
|
|
mode: "horizontal",
|
|
onClick: function onClick(e) {
|
|
setMenuKey(e.key);
|
|
},
|
|
selectedKeys: menuKey,
|
|
children: Menus.map(function (v, k) {
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(menu/* default.Item */.Z.Item, {
|
|
className: "font16",
|
|
style: {
|
|
padding: "0 0 12px 0 ",
|
|
margin: "0 30px"
|
|
},
|
|
children: v.name
|
|
}, v.id);
|
|
})
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
className: Detailmodules.des,
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
className: "iconfont icon-tishi4 font18 mr10 c-light-primary"
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
className: "c-light-black",
|
|
children: des[urlParams === null || urlParams === void 0 ? void 0 : urlParams.type][String(menuKey)]
|
|
})]
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(table/* default */.Z, {
|
|
className: "table-layout bg-white mt20 mb20",
|
|
columns: column,
|
|
dataSource: list,
|
|
rowKey: function rowKey(v) {
|
|
return v.id;
|
|
},
|
|
loading: loading,
|
|
onChange: handleChange,
|
|
pagination: {
|
|
pageSize: params.limit,
|
|
total: total,
|
|
current: params.page,
|
|
showQuickJumper: true,
|
|
hideOnSinglePage: true,
|
|
position: ["bottomCenter"]
|
|
}
|
|
})]
|
|
});
|
|
};
|
|
/* harmony default export */ var Detail = ((0,_umi_production_exports.connect)(function (_ref3) {
|
|
var classroomList = _ref3.classroomList,
|
|
globalSetting = _ref3.globalSetting;
|
|
return {
|
|
classroomList: classroomList,
|
|
globalSetting: globalSetting
|
|
};
|
|
})(StudentStatistics));
|
|
|
|
/***/ }),
|
|
|
|
/***/ 5467:
|
|
/*!**********************************************************!*\
|
|
!*** ./node_modules/antd/es/_util/getDataOrAriaProps.js ***!
|
|
\**********************************************************/
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
/* harmony export */ "Z": function() { return /* binding */ getDataOrAriaProps; }
|
|
/* harmony export */ });
|
|
function getDataOrAriaProps(props) {
|
|
return Object.keys(props).reduce(function (prev, key) {
|
|
if ((key.startsWith('data-') || key.startsWith('aria-') || key === 'role') && !key.startsWith('data-__')) {
|
|
prev[key] = props[key];
|
|
}
|
|
return prev;
|
|
}, {});
|
|
}
|
|
|
|
/***/ }),
|
|
|
|
/***/ 29924:
|
|
/*!*********************************************************!*\
|
|
!*** ./node_modules/antd/es/radio/index.js + 4 modules ***!
|
|
\*********************************************************/
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
// EXPORTS
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
"ZP": function() { return /* binding */ es_radio; }
|
|
});
|
|
|
|
// UNUSED EXPORTS: Button, Group
|
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
|
|
var esm_extends = __webpack_require__(87462);
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
|
|
var defineProperty = __webpack_require__(4942);
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
|
|
var slicedToArray = __webpack_require__(97685);
|
|
// EXTERNAL MODULE: ./node_modules/classnames/index.js
|
|
var classnames = __webpack_require__(94184);
|
|
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
|
|
// EXTERNAL MODULE: ./node_modules/rc-util/es/hooks/useMergedState.js
|
|
var useMergedState = __webpack_require__(21770);
|
|
// EXTERNAL MODULE: ./node_modules/react/index.js
|
|
var react = __webpack_require__(67294);
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/config-provider/context.js
|
|
var context = __webpack_require__(53124);
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/config-provider/SizeContext.js
|
|
var SizeContext = __webpack_require__(97647);
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/_util/getDataOrAriaProps.js
|
|
var getDataOrAriaProps = __webpack_require__(5467);
|
|
;// CONCATENATED MODULE: ./node_modules/antd/es/radio/context.js
|
|
|
|
var RadioGroupContext = /*#__PURE__*/react.createContext(null);
|
|
var RadioGroupContextProvider = RadioGroupContext.Provider;
|
|
/* harmony default export */ var radio_context = (RadioGroupContext);
|
|
var RadioOptionTypeContext = /*#__PURE__*/react.createContext(null);
|
|
var RadioOptionTypeContextProvider = RadioOptionTypeContext.Provider;
|
|
// EXTERNAL MODULE: ./node_modules/rc-checkbox/es/index.js
|
|
var es = __webpack_require__(50132);
|
|
// EXTERNAL MODULE: ./node_modules/rc-util/es/ref.js
|
|
var es_ref = __webpack_require__(42550);
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/config-provider/DisabledContext.js
|
|
var DisabledContext = __webpack_require__(98866);
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/form/context.js
|
|
var form_context = __webpack_require__(65223);
|
|
;// CONCATENATED MODULE: ./node_modules/antd/es/radio/radio.js
|
|
|
|
|
|
var __rest = undefined && undefined.__rest || function (s, e) {
|
|
var t = {};
|
|
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
}
|
|
return t;
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var InternalRadio = function InternalRadio(props, ref) {
|
|
var _classNames;
|
|
var groupContext = react.useContext(radio_context);
|
|
var radioOptionTypeContext = react.useContext(RadioOptionTypeContext);
|
|
var _React$useContext = react.useContext(context/* ConfigContext */.E_),
|
|
getPrefixCls = _React$useContext.getPrefixCls,
|
|
direction = _React$useContext.direction;
|
|
var innerRef = react.useRef();
|
|
var mergedRef = (0,es_ref/* composeRef */.sQ)(ref, innerRef);
|
|
var _useContext = (0,react.useContext)(form_context/* FormItemInputContext */.aM),
|
|
isFormItemInput = _useContext.isFormItemInput;
|
|
false ? 0 : void 0;
|
|
var onChange = function onChange(e) {
|
|
var _a, _b;
|
|
(_a = props.onChange) === null || _a === void 0 ? void 0 : _a.call(props, e);
|
|
(_b = groupContext === null || groupContext === void 0 ? void 0 : groupContext.onChange) === null || _b === void 0 ? void 0 : _b.call(groupContext, e);
|
|
};
|
|
var customizePrefixCls = props.prefixCls,
|
|
className = props.className,
|
|
children = props.children,
|
|
style = props.style,
|
|
customDisabled = props.disabled,
|
|
restProps = __rest(props, ["prefixCls", "className", "children", "style", "disabled"]);
|
|
var radioPrefixCls = getPrefixCls('radio', customizePrefixCls);
|
|
var prefixCls = ((groupContext === null || groupContext === void 0 ? void 0 : groupContext.optionType) || radioOptionTypeContext) === 'button' ? "".concat(radioPrefixCls, "-button") : radioPrefixCls;
|
|
var radioProps = (0,esm_extends/* default */.Z)({}, restProps);
|
|
// ===================== Disabled =====================
|
|
var disabled = react.useContext(DisabledContext/* default */.Z);
|
|
radioProps.disabled = customDisabled || disabled;
|
|
if (groupContext) {
|
|
radioProps.name = groupContext.name;
|
|
radioProps.onChange = onChange;
|
|
radioProps.checked = props.value === groupContext.value;
|
|
radioProps.disabled = radioProps.disabled || groupContext.disabled;
|
|
}
|
|
var wrapperClassString = classnames_default()("".concat(prefixCls, "-wrapper"), (_classNames = {}, (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-wrapper-checked"), radioProps.checked), (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-wrapper-disabled"), radioProps.disabled), (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-wrapper-rtl"), direction === 'rtl'), (0,defineProperty/* default */.Z)(_classNames, "".concat(prefixCls, "-wrapper-in-form-item"), isFormItemInput), _classNames), className);
|
|
return (
|
|
/*#__PURE__*/
|
|
// eslint-disable-next-line jsx-a11y/label-has-associated-control
|
|
react.createElement("label", {
|
|
className: wrapperClassString,
|
|
style: style,
|
|
onMouseEnter: props.onMouseEnter,
|
|
onMouseLeave: props.onMouseLeave
|
|
}, /*#__PURE__*/react.createElement(es/* default */.Z, (0,esm_extends/* default */.Z)({}, radioProps, {
|
|
type: "radio",
|
|
prefixCls: prefixCls,
|
|
ref: mergedRef
|
|
})), children !== undefined ? /*#__PURE__*/react.createElement("span", null, children) : null)
|
|
);
|
|
};
|
|
var Radio = /*#__PURE__*/react.forwardRef(InternalRadio);
|
|
if (false) {}
|
|
/* harmony default export */ var radio_radio = (Radio);
|
|
;// CONCATENATED MODULE: ./node_modules/antd/es/radio/group.js
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var RadioGroup = /*#__PURE__*/react.forwardRef(function (props, ref) {
|
|
var _classNames;
|
|
var _React$useContext = react.useContext(context/* ConfigContext */.E_),
|
|
getPrefixCls = _React$useContext.getPrefixCls,
|
|
direction = _React$useContext.direction;
|
|
var size = react.useContext(SizeContext/* default */.Z);
|
|
var _useMergedState = (0,useMergedState/* default */.Z)(props.defaultValue, {
|
|
value: props.value
|
|
}),
|
|
_useMergedState2 = (0,slicedToArray/* default */.Z)(_useMergedState, 2),
|
|
value = _useMergedState2[0],
|
|
setValue = _useMergedState2[1];
|
|
var onRadioChange = function onRadioChange(ev) {
|
|
var lastValue = value;
|
|
var val = ev.target.value;
|
|
if (!('value' in props)) {
|
|
setValue(val);
|
|
}
|
|
var onChange = props.onChange;
|
|
if (onChange && val !== lastValue) {
|
|
onChange(ev);
|
|
}
|
|
};
|
|
var customizePrefixCls = props.prefixCls,
|
|
_props$className = props.className,
|
|
className = _props$className === void 0 ? '' : _props$className,
|
|
options = props.options,
|
|
_props$buttonStyle = props.buttonStyle,
|
|
buttonStyle = _props$buttonStyle === void 0 ? 'outline' : _props$buttonStyle,
|
|
disabled = props.disabled,
|
|
children = props.children,
|
|
customizeSize = props.size,
|
|
style = props.style,
|
|
id = props.id,
|
|
onMouseEnter = props.onMouseEnter,
|
|
onMouseLeave = props.onMouseLeave,
|
|
onFocus = props.onFocus,
|
|
onBlur = props.onBlur;
|
|
var prefixCls = getPrefixCls('radio', customizePrefixCls);
|
|
var groupPrefixCls = "".concat(prefixCls, "-group");
|
|
var childrenToRender = children;
|
|
// 如果存在 options, 优先使用
|
|
if (options && options.length > 0) {
|
|
childrenToRender = options.map(function (option) {
|
|
if (typeof option === 'string' || typeof option === 'number') {
|
|
// 此处类型自动推导为 string
|
|
return /*#__PURE__*/react.createElement(radio_radio, {
|
|
key: option.toString(),
|
|
prefixCls: prefixCls,
|
|
disabled: disabled,
|
|
value: option,
|
|
checked: value === option
|
|
}, option);
|
|
}
|
|
// 此处类型自动推导为 { label: string value: string }
|
|
return /*#__PURE__*/react.createElement(radio_radio, {
|
|
key: "radio-group-value-options-".concat(option.value),
|
|
prefixCls: prefixCls,
|
|
disabled: option.disabled || disabled,
|
|
value: option.value,
|
|
checked: value === option.value,
|
|
style: option.style
|
|
}, option.label);
|
|
});
|
|
}
|
|
var mergedSize = customizeSize || size;
|
|
var classString = classnames_default()(groupPrefixCls, "".concat(groupPrefixCls, "-").concat(buttonStyle), (_classNames = {}, (0,defineProperty/* default */.Z)(_classNames, "".concat(groupPrefixCls, "-").concat(mergedSize), mergedSize), (0,defineProperty/* default */.Z)(_classNames, "".concat(groupPrefixCls, "-rtl"), direction === 'rtl'), _classNames), className);
|
|
return /*#__PURE__*/react.createElement("div", (0,esm_extends/* default */.Z)({}, (0,getDataOrAriaProps/* default */.Z)(props), {
|
|
className: classString,
|
|
style: style,
|
|
onMouseEnter: onMouseEnter,
|
|
onMouseLeave: onMouseLeave,
|
|
onFocus: onFocus,
|
|
onBlur: onBlur,
|
|
id: id,
|
|
ref: ref
|
|
}), /*#__PURE__*/react.createElement(RadioGroupContextProvider, {
|
|
value: {
|
|
onChange: onRadioChange,
|
|
value: value,
|
|
disabled: props.disabled,
|
|
name: props.name,
|
|
optionType: props.optionType
|
|
}
|
|
}, childrenToRender));
|
|
});
|
|
/* harmony default export */ var group = (/*#__PURE__*/react.memo(RadioGroup));
|
|
;// CONCATENATED MODULE: ./node_modules/antd/es/radio/radioButton.js
|
|
|
|
var radioButton_rest = undefined && undefined.__rest || function (s, e) {
|
|
var t = {};
|
|
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
}
|
|
return t;
|
|
};
|
|
|
|
|
|
|
|
|
|
var RadioButton = function RadioButton(props, ref) {
|
|
var _React$useContext = react.useContext(context/* ConfigContext */.E_),
|
|
getPrefixCls = _React$useContext.getPrefixCls;
|
|
var customizePrefixCls = props.prefixCls,
|
|
radioProps = radioButton_rest(props, ["prefixCls"]);
|
|
var prefixCls = getPrefixCls('radio', customizePrefixCls);
|
|
return /*#__PURE__*/react.createElement(RadioOptionTypeContextProvider, {
|
|
value: "button"
|
|
}, /*#__PURE__*/react.createElement(radio_radio, (0,esm_extends/* default */.Z)({
|
|
prefixCls: prefixCls
|
|
}, radioProps, {
|
|
type: "radio",
|
|
ref: ref
|
|
})));
|
|
};
|
|
/* harmony default export */ var radioButton = (/*#__PURE__*/react.forwardRef(RadioButton));
|
|
;// CONCATENATED MODULE: ./node_modules/antd/es/radio/index.js
|
|
|
|
|
|
|
|
|
|
var radio_Radio = radio_radio;
|
|
radio_Radio.Button = radioButton;
|
|
radio_Radio.Group = group;
|
|
radio_Radio.__ANT_RADIO = true;
|
|
/* harmony default export */ var es_radio = (radio_Radio);
|
|
|
|
/***/ }),
|
|
|
|
/***/ 83822:
|
|
/*!***************************************************************!*\
|
|
!*** ./node_modules/antd/es/radio/style/index.js + 1 modules ***!
|
|
\***************************************************************/
|
|
/***/ (function(__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/style/default.less
|
|
var style_default = __webpack_require__(43146);
|
|
;// CONCATENATED MODULE: ./node_modules/antd/es/radio/style/index.less
|
|
// extracted by mini-css-extract-plugin
|
|
|
|
;// CONCATENATED MODULE: ./node_modules/antd/es/radio/style/index.js
|
|
|
|
|
|
// deps-lint-skip: form
|
|
|
|
/***/ })
|
|
|
|
}]); |