UNPKG

syber-lowcode-business-materials

Version:
365 lines (362 loc) 23.8 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports["default"] = EquipmentItem; var _row = _interopRequireDefault(require("antd/lib/row")); var _switch = _interopRequireDefault(require("antd/lib/switch")); var _avatar = _interopRequireDefault(require("antd/lib/avatar")); var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _col = _interopRequireDefault(require("antd/lib/col")); var _popover = _interopRequireDefault(require("antd/lib/popover")); var _button = _interopRequireDefault(require("antd/lib/button")); var _message2 = _interopRequireDefault(require("antd/lib/message")); var _react = require("react"); var _stylesModule = _interopRequireDefault(require("./styles.module.scss")); var _icons = require("@ant-design/icons"); var statusConfig = { 1: { title: '缺勤', value: 1, color: '#FFA057', bgColor: 'rgba(251,106,0,0.15)' }, 2: { title: '空闲', value: 2, color: 'rgba(70,254,165,0.83)', bgColor: 'rgb(227, 255, 241)' }, 3: { title: '忙碌', value: 3, color: '#9EB1FF', bgColor: 'rgba(47,98,255,0.24)' }, 4: { title: '停工', value: 4, color: '#FF92AD', bgColor: 'rgba(254,42,139,0.16)' } }; var mediaState = { 成功: '#2FD34C', 登录中: '#FF8230', 注册中: '#FF8230', 验证: '#FF8230 ', 未登录: 'rgb(220, 224, 230)', 失败: 'rgb(220, 224, 230)', 封号: 'red', 排队中: '#FF8230' }; // 未登录/登录中/成功/封号/验证/失败 var mockMediaMap = [{ type: 'Youtube', value: 2, icon: 'https://cyber-resource-hz.oss-cn-hangzhou.aliyuncs.com/space/youtube.svg' }, { type: 'Twitter', value: 4, icon: 'https://cyber-resource-hz.oss-cn-hangzhou.aliyuncs.com/space/twitter.svg' }, { type: 'Facebook', value: 3, icon: 'https://cyber-resource-hz.oss-cn-hangzhou.aliyuncs.com/space/facebook.svg' }, { type: 'Instagram', value: 2, icon: 'https://cyber-resource-hz.oss-cn-hangzhou.aliyuncs.com/space/ins.svg' }, { type: 'Tiktok', value: 2, icon: 'https://cyber-resource-hz.oss-cn-hangzhou.aliyuncs.com/space/tiktok.svg' }]; var getTime = function getTime(currentTimestamp) { var now = Date.now(); // 获取当前时间的时间戳(毫秒) var difference = now - currentTimestamp; // 计算差值(毫秒) var minutes = Math.floor(difference / 60000); // 转换为分钟 if (minutes < 1) return '刚刚'; var hours = Math.floor(minutes / 60); if (hours < 1) return minutes + " \u5206\u949F"; var days = Math.floor(hours / 24); if (days < 1) return hours + " \u5C0F\u65F6"; var weeks = Math.floor(days / 7); if (weeks < 1) return days + " \u5929"; var months = Math.floor(weeks / 4.345); // 粗略估计一个月有4.345周 if (months < 1) return weeks + " \u5468"; var years = Math.floor(months / 12); if (years < 1) return months + " \u6708"; return years + " \u5E74"; }; var globalButtonStyle = { color: '#5E3EDD', borderColor: '#5E3EDD' }; function EquipmentItem(props) { var _props$checkedList, _props$equipmentData, _props$equipmentData2, _props$equipmentData3, _props$equipmentData4, _props$equipmentData5, _props$equipmentData6, _props$equipmentData7, _props$equipmentData8, _props$equipmentData9, _props$equipmentData10, _statusConfig$props$e, _props$equipmentData11, _props$equipmentData12, _statusConfig$props$e2, _props$equipmentData13, _props$equipmentData14, _statusConfig$props$e3, _props$equipmentData15, _props$equipmentData16, _statusConfig$props$e4, _props$equipmentData17, _props$equipmentData18, _props$equipmentData19, _props$equipmentData20, _props$equipmentData21, _props$equipmentData22, _props$equipmentData23, _props$equipmentData24, _props$equipmentData25, _props$equipmentData26, _props$equipmentData27, _props$equipmentData28, _props$equipmentData29, _props$equipmentData30; var copyText = function copyText(str) { var oInput = document.createElement('textarea'); oInput.value = str; document.body.appendChild(oInput); oInput.select(); document.execCommand('Copy'); oInput.style.display = 'none'; document.body.removeChild(oInput); if (str && str.length > 100) { str = str.substring(0, 100); } _message2["default"].success(/*#__PURE__*/React.createElement("div", { style: { whiteSpace: 'pre-wrap', textAlign: 'left' } }, /*#__PURE__*/React.createElement("div", null, '复制成功:'), /*#__PURE__*/React.createElement("div", null, str))); }; function calculateAge(time) { var birthDate = new Date(time); var now = new Date(); var age = now.getFullYear() - birthDate.getFullYear(); var monthDiff = now.getMonth() - birthDate.getMonth(); if (monthDiff < 0 || monthDiff === 0 && now.getDate() < birthDate.getDate()) { age--; } return age; } return /*#__PURE__*/React.createElement("div", { className: _stylesModule["default"].equipmentItem, style: { '--borderColor': props !== null && props !== void 0 && (_props$checkedList = props.checkedList) !== null && _props$checkedList !== void 0 && _props$checkedList.includes(props === null || props === void 0 ? void 0 : (_props$equipmentData = props.equipmentData) === null || _props$equipmentData === void 0 ? void 0 : _props$equipmentData._id) && props !== null && props !== void 0 && props.isCheckbox ? '#5E3EDD' : '#ebebeb' }, onClick: function onClick(e) { e.stopPropagation(); if (props !== null && props !== void 0 && props.isCheckbox) { props === null || props === void 0 ? void 0 : props.onCheckboxChange(e, props === null || props === void 0 ? void 0 : props.equipmentData); } } }, /*#__PURE__*/React.createElement("div", { className: _stylesModule["default"].equipmentMessage }, /*#__PURE__*/React.createElement("img", { src: props === null || props === void 0 ? void 0 : (_props$equipmentData2 = props.equipmentData) === null || _props$equipmentData2 === void 0 ? void 0 : _props$equipmentData2.avatar, alt: props === null || props === void 0 ? void 0 : (_props$equipmentData3 = props.equipmentData) === null || _props$equipmentData3 === void 0 ? void 0 : _props$equipmentData3.shard, onClick: function onClick(e) { e.stopPropagation(); (props === null || props === void 0 ? void 0 : props.onGoToPage) && props.onGoToPage(e, { equipmentData: props === null || props === void 0 ? void 0 : props.equipmentData }); } }), /*#__PURE__*/React.createElement("div", { className: _stylesModule["default"].messageRight }, /*#__PURE__*/React.createElement("div", { className: _stylesModule["default"].name }, /*#__PURE__*/React.createElement("div", { className: _stylesModule["default"].nameText }, ((props === null || props === void 0 ? void 0 : (_props$equipmentData4 = props.equipmentData) === null || _props$equipmentData4 === void 0 ? void 0 : (_props$equipmentData5 = _props$equipmentData4.characterSettings) === null || _props$equipmentData5 === void 0 ? void 0 : (_props$equipmentData6 = _props$equipmentData5[1]) === null || _props$equipmentData6 === void 0 ? void 0 : _props$equipmentData6.name) || (props === null || props === void 0 ? void 0 : (_props$equipmentData7 = props.equipmentData) === null || _props$equipmentData7 === void 0 ? void 0 : (_props$equipmentData8 = _props$equipmentData7.characterSettings) === null || _props$equipmentData8 === void 0 ? void 0 : (_props$equipmentData9 = _props$equipmentData8[0]) === null || _props$equipmentData9 === void 0 ? void 0 : _props$equipmentData9.name)) + " (" + (props === null || props === void 0 ? void 0 : (_props$equipmentData10 = props.equipmentData) === null || _props$equipmentData10 === void 0 ? void 0 : _props$equipmentData10.shard) + ")"), /*#__PURE__*/React.createElement("div", { className: _stylesModule["default"].tag, style: { background: (_statusConfig$props$e = statusConfig[props === null || props === void 0 ? void 0 : (_props$equipmentData11 = props.equipmentData) === null || _props$equipmentData11 === void 0 ? void 0 : (_props$equipmentData12 = _props$equipmentData11.device) === null || _props$equipmentData12 === void 0 ? void 0 : _props$equipmentData12.status]) === null || _statusConfig$props$e === void 0 ? void 0 : _statusConfig$props$e.bgColor } }, /*#__PURE__*/React.createElement(_icons.UserOutlined, { style: { color: (_statusConfig$props$e2 = statusConfig[props === null || props === void 0 ? void 0 : (_props$equipmentData13 = props.equipmentData) === null || _props$equipmentData13 === void 0 ? void 0 : (_props$equipmentData14 = _props$equipmentData13.device) === null || _props$equipmentData14 === void 0 ? void 0 : _props$equipmentData14.status]) === null || _statusConfig$props$e2 === void 0 ? void 0 : _statusConfig$props$e2.color } }), /*#__PURE__*/React.createElement("span", { style: { color: (_statusConfig$props$e3 = statusConfig[props === null || props === void 0 ? void 0 : (_props$equipmentData15 = props.equipmentData) === null || _props$equipmentData15 === void 0 ? void 0 : (_props$equipmentData16 = _props$equipmentData15.device) === null || _props$equipmentData16 === void 0 ? void 0 : _props$equipmentData16.status]) === null || _statusConfig$props$e3 === void 0 ? void 0 : _statusConfig$props$e3.color, marginLeft: 4 } }, (_statusConfig$props$e4 = statusConfig[props === null || props === void 0 ? void 0 : (_props$equipmentData17 = props.equipmentData) === null || _props$equipmentData17 === void 0 ? void 0 : (_props$equipmentData18 = _props$equipmentData17.device) === null || _props$equipmentData18 === void 0 ? void 0 : _props$equipmentData18.status]) === null || _statusConfig$props$e4 === void 0 ? void 0 : _statusConfig$props$e4.title))), /*#__PURE__*/React.createElement("div", { className: _stylesModule["default"].robotMessageRow }, (props === null || props === void 0 ? void 0 : (_props$equipmentData19 = props.equipmentData) === null || _props$equipmentData19 === void 0 ? void 0 : (_props$equipmentData20 = _props$equipmentData19.characterSettings) === null || _props$equipmentData20 === void 0 ? void 0 : (_props$equipmentData21 = _props$equipmentData20[0]) === null || _props$equipmentData21 === void 0 ? void 0 : _props$equipmentData21.gender) || '女', " \uFF5C ", (props === null || props === void 0 ? void 0 : (_props$equipmentData22 = props.equipmentData) === null || _props$equipmentData22 === void 0 ? void 0 : (_props$equipmentData23 = _props$equipmentData22.characterSettings) === null || _props$equipmentData23 === void 0 ? void 0 : (_props$equipmentData24 = _props$equipmentData23[0]) === null || _props$equipmentData24 === void 0 ? void 0 : _props$equipmentData24.age) || calculateAge(props === null || props === void 0 ? void 0 : (_props$equipmentData25 = props.equipmentData) === null || _props$equipmentData25 === void 0 ? void 0 : (_props$equipmentData26 = _props$equipmentData25.characterSettings) === null || _props$equipmentData26 === void 0 ? void 0 : (_props$equipmentData27 = _props$equipmentData26[0]) === null || _props$equipmentData27 === void 0 ? void 0 : _props$equipmentData27.birthday), "\u5C81 ", (props === null || props === void 0 ? void 0 : (_props$equipmentData28 = props.equipmentData) === null || _props$equipmentData28 === void 0 ? void 0 : _props$equipmentData28.deviceType) > 0 && '|'), props !== null && props !== void 0 && (_props$equipmentData29 = props.equipmentData) !== null && _props$equipmentData29 !== void 0 && _props$equipmentData29.deviceId ? /*#__PURE__*/React.createElement("div", { className: _stylesModule["default"].copyText }, /*#__PURE__*/React.createElement("span", { className: _stylesModule["default"].ellipsis }, "\u8BBE\u5907\u7F16\u53F7\uFF1A", props === null || props === void 0 ? void 0 : (_props$equipmentData30 = props.equipmentData) === null || _props$equipmentData30 === void 0 ? void 0 : _props$equipmentData30._id), /*#__PURE__*/React.createElement(_icons.CopyOutlined, { className: _stylesModule["default"].copyIcon, onClick: function onClick(e) { var _props$equipmentData31; e.stopPropagation(); if (props !== null && props !== void 0 && (_props$equipmentData31 = props.equipmentData) !== null && _props$equipmentData31 !== void 0 && _props$equipmentData31._id) { var _props$equipmentData32; copyText(props === null || props === void 0 ? void 0 : (_props$equipmentData32 = props.equipmentData) === null || _props$equipmentData32 === void 0 ? void 0 : _props$equipmentData32._id); } } })) : '-'), /*#__PURE__*/React.createElement(_button["default"], { type: "primary", size: "middle", onClick: function onClick(e) { e.stopPropagation(); props === null || props === void 0 ? void 0 : props.onLongRange(e, props === null || props === void 0 ? void 0 : props.equipmentData); }, style: { padding: '0 26px', borderRadius: '4px' } }, "\u8FDC\u7A0B")), mockMediaMap === null || mockMediaMap === void 0 ? void 0 : mockMediaMap.map(function (item, index) { var _props$equipmentData33, _props$equipmentData34, _props$equipmentData35, _mediaData$extend, _mediaData$extend2, _mediaData$extend3, _mediaData$extend4, _mediaData$extend5, _mediaData$extend6, _mediaData$extend7, _mediaData$extend8, _mediaData$extend9, _mediaData$extend10, _mediaData$extend11, _mediaData$extend12, _mediaData$extend13; var mediaData = props === null || props === void 0 ? void 0 : (_props$equipmentData33 = props.equipmentData) === null || _props$equipmentData33 === void 0 ? void 0 : (_props$equipmentData34 = _props$equipmentData33.socials) === null || _props$equipmentData34 === void 0 ? void 0 : (_props$equipmentData35 = _props$equipmentData34.filter(function (i) { return i.type === item.type; })) === null || _props$equipmentData35 === void 0 ? void 0 : _props$equipmentData35[0]; var state = (mediaData === null || mediaData === void 0 ? void 0 : (_mediaData$extend = mediaData.extend) === null || _mediaData$extend === void 0 ? void 0 : _mediaData$extend.stateLogin) || (mediaData === null || mediaData === void 0 ? void 0 : (_mediaData$extend2 = mediaData.extend) === null || _mediaData$extend2 === void 0 ? void 0 : _mediaData$extend2.stateLRegister) || '未登录'; //账号状态 var tipsType = mediaData !== null && mediaData !== void 0 && (_mediaData$extend3 = mediaData.extend) !== null && _mediaData$extend3 !== void 0 && _mediaData$extend3.stateLogin ? 'descLogin' : mediaData !== null && mediaData !== void 0 && (_mediaData$extend4 = mediaData.extend) !== null && _mediaData$extend4 !== void 0 && _mediaData$extend4.stateLRegister ? 'descRegister' : ''; return /*#__PURE__*/React.createElement("div", { className: _stylesModule["default"].mediaWrap, key: index }, /*#__PURE__*/React.createElement(_row["default"], { style: { display: 'flex', alignItems: 'center', height: '35px' } }, /*#__PURE__*/React.createElement(_col["default"], { className: "gutter-row", span: 5 }, /*#__PURE__*/React.createElement("div", { className: _stylesModule["default"].mediaItem, style: { '--color': mediaState[state] } }, /*#__PURE__*/React.createElement("img", { src: item.icon, alt: "", width: 16, height: 16 }), /*#__PURE__*/React.createElement("span", { style: { '--color': mediaState[state] }, className: _stylesModule["default"].mediaState }), /*#__PURE__*/React.createElement("div", { className: _stylesModule["default"].mediaDate }, (mediaData === null || mediaData === void 0 ? void 0 : mediaData.extend) && (mediaData === null || mediaData === void 0 ? void 0 : (_mediaData$extend5 = mediaData.extend) === null || _mediaData$extend5 === void 0 ? void 0 : _mediaData$extend5.updateTimeLogin) && typeof (mediaData === null || mediaData === void 0 ? void 0 : (_mediaData$extend6 = mediaData.extend) === null || _mediaData$extend6 === void 0 ? void 0 : _mediaData$extend6.updateTimeLogin) === 'number' && getTime(mediaData === null || mediaData === void 0 ? void 0 : (_mediaData$extend7 = mediaData.extend) === null || _mediaData$extend7 === void 0 ? void 0 : _mediaData$extend7.updateTimeLogin) + " (" + state + ")", (mediaData === null || mediaData === void 0 ? void 0 : (_mediaData$extend8 = mediaData.extend) === null || _mediaData$extend8 === void 0 ? void 0 : _mediaData$extend8[tipsType]) && state !== '成功' && /*#__PURE__*/React.createElement(_popover["default"], { placement: "top", content: /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("p", null, mediaData === null || mediaData === void 0 ? void 0 : mediaData.extend[tipsType])) }, /*#__PURE__*/React.createElement(_icons.QuestionCircleOutlined, null)), (state === '失败' || state === '未登录') && (mediaData === null || mediaData === void 0 ? void 0 : mediaData.account) && (mediaData === null || mediaData === void 0 ? void 0 : mediaData.password) && /*#__PURE__*/React.createElement(_icons.RedoOutlined, { onClick: function onClick(e) { e.stopPropagation(); (props === null || props === void 0 ? void 0 : props.onAutoLogin) && props.onAutoLogin(e, { equipmentData: props === null || props === void 0 ? void 0 : props.equipmentData, mediaData: mediaData }); } })))), /*#__PURE__*/React.createElement(_col["default"], { className: "gutter-row", span: 8 }, mediaData !== null && mediaData !== void 0 && mediaData.account && state !== '未登录' ? /*#__PURE__*/React.createElement("div", { className: _stylesModule["default"].account }, "\u8D26\u53F7\uFF1A", /*#__PURE__*/React.createElement("span", { className: _stylesModule["default"].accountName, style: { margin: '0', color: '#1890ff', maxWidth: 'calc(100% - 60px)', cursor: 'pointer' }, onClick: function onClick(e) { e.stopPropagation(); if (mediaData.extend.userLink) { window.open(mediaData.extend.userLink); } } }, mediaData === null || mediaData === void 0 ? void 0 : mediaData.account), /*#__PURE__*/React.createElement(_icons.LinkOutlined, { onClick: function onClick(e) { e.stopPropagation(); if (mediaData.extend.userLink) { window.open(mediaData.extend.userLink); } } })) : /*#__PURE__*/React.createElement(_react.Fragment, null, /*#__PURE__*/React.createElement(_button["default"], { size: 'small', style: (0, _extends2["default"])({ marginRight: '12px', borderRadius: '6px' }, globalButtonStyle), onClick: function onClick(e) { e.stopPropagation(); props === null || props === void 0 ? void 0 : props.onSignIn(e, { equipmentData: props === null || props === void 0 ? void 0 : props.equipmentData, mediaData: item }); }, icon: /*#__PURE__*/React.createElement(_icons.UserAddOutlined, null) }, "\u6CE8\u518C"), /*#__PURE__*/React.createElement(_button["default"], { style: (0, _extends2["default"])({ borderRadius: '6px' }, globalButtonStyle), size: 'small', onClick: function onClick(e) { e.stopPropagation(); props === null || props === void 0 ? void 0 : props.onLogin(e, { equipmentData: props === null || props === void 0 ? void 0 : props.equipmentData, mediaData: item }); }, icon: /*#__PURE__*/React.createElement(_icons.UserOutlined, null) }, "\u767B\u5F55"))), /*#__PURE__*/React.createElement(_col["default"], { className: "gutter-row", span: 4 }, /*#__PURE__*/React.createElement("div", { className: _stylesModule["default"].account }, (mediaData === null || mediaData === void 0 ? void 0 : (_mediaData$extend9 = mediaData.extend) === null || _mediaData$extend9 === void 0 ? void 0 : _mediaData$extend9.userAvatar) && /*#__PURE__*/React.createElement(_avatar["default"], { style: { marginRight: '4px' }, icon: /*#__PURE__*/React.createElement("img", { src: mediaData === null || mediaData === void 0 ? void 0 : (_mediaData$extend10 = mediaData.extend) === null || _mediaData$extend10 === void 0 ? void 0 : _mediaData$extend10.userAvatar }) }), (mediaData === null || mediaData === void 0 ? void 0 : mediaData.accountId) && /*#__PURE__*/React.createElement("span", { className: _stylesModule["default"].accountName }, mediaData === null || mediaData === void 0 ? void 0 : mediaData.accountId))), /*#__PURE__*/React.createElement(_col["default"], { className: "gutter-row", span: 4 }, /*#__PURE__*/React.createElement("div", { className: _stylesModule["default"].raising, onClick: function onClick(e) { e.stopPropagation(); } }, "\u517B\u53F7", /*#__PURE__*/React.createElement(_switch["default"], { size: "small", checked: (mediaData === null || mediaData === void 0 ? void 0 : (_mediaData$extend11 = mediaData.extend) === null || _mediaData$extend11 === void 0 ? void 0 : _mediaData$extend11.stateLActivity) === '养号中', loading: mediaData === null || mediaData === void 0 ? void 0 : mediaData.loading, onChange: function onChange(checked) { props === null || props === void 0 ? void 0 : props.onChecked(event, { equipmentData: props === null || props === void 0 ? void 0 : props.equipmentData, mediaData: mediaData, checked: checked }); }, disabled: !(state === '成功') }), (mediaData === null || mediaData === void 0 ? void 0 : (_mediaData$extend12 = mediaData.extend) === null || _mediaData$extend12 === void 0 ? void 0 : _mediaData$extend12.updateTimeActivity) && "" + getTime(mediaData === null || mediaData === void 0 ? void 0 : (_mediaData$extend13 = mediaData.extend) === null || _mediaData$extend13 === void 0 ? void 0 : _mediaData$extend13.updateTimeActivity))), /*#__PURE__*/React.createElement(_col["default"], { className: "gutter-row", span: 3 }, (mediaData === null || mediaData === void 0 ? void 0 : mediaData.account) && (mediaData === null || mediaData === void 0 ? void 0 : mediaData.password) && state !== '未登录' && /*#__PURE__*/React.createElement(_react.Fragment, null, /*#__PURE__*/React.createElement(_button["default"], { size: 'small', style: (0, _extends2["default"])({ marginRight: '4px', borderRadius: '6px' }, globalButtonStyle), onClick: function onClick(e) { e.stopPropagation(); props === null || props === void 0 ? void 0 : props.onPublish(e, { equipmentData: props === null || props === void 0 ? void 0 : props.equipmentData, mediaData: item }); }, disabled: !(state === '成功') }, "\u53D1\u5E03"), /*#__PURE__*/React.createElement(_popover["default"], { content: /*#__PURE__*/React.createElement(_button["default"], { size: 'small', style: (0, _extends2["default"])({ borderRadius: '6px' }, globalButtonStyle), onClick: function onClick(e) { e.stopPropagation(); props === null || props === void 0 ? void 0 : props.onLogOut(e, { equipmentData: props === null || props === void 0 ? void 0 : props.equipmentData, mediaData: item }); } }, "\u9000\u51FA\u767B\u5F55"), placement: "bottomLeft" }, /*#__PURE__*/React.createElement(_icons.EllipsisOutlined, null)))))); })); }