UNPKG

@aliretail/react-materials-components

Version:
137 lines (109 loc) 6.08 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports["default"] = void 0; var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator")); var _overlay = _interopRequireDefault(require("@alifd/next/lib/overlay")); var _button = _interopRequireDefault(require("@alifd/next/lib/button")); var _message = _interopRequireDefault(require("@alifd/next/lib/message")); var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator")); var _react = _interopRequireWildcard(require("react")); var _api = require("../../utils/api"); var _static = require("../../utils/static"); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } var READONLY_CLASS_PREFIX = _static.CLASS_PREFIX + "-readOnly"; var Preview = function Preview(props) { var _useState = (0, _react.useState)(false), visible = _useState[0], setVisible = _useState[1]; // 从富文本地址中获取的内容 var _useState2 = (0, _react.useState)(''), showedContent = _useState2[0], setShowedContent = _useState2[1]; var _useState3 = (0, _react.useState)(null), btn = _useState3[0], setBtn = _useState3[1]; var content = props.content, path = props.path; var showContent = /*#__PURE__*/function () { var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() { var tempContent; return _regenerator["default"].wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: tempContent = content; if (!path) { _context.next = 5; break; } _context.next = 4; return (0, _api.getRemoteFileContent)(path); case 4: tempContent = _context.sent; case 5: setShowedContent(tempContent); if (tempContent) { setVisible(true); } else { _message["default"].show({ type: 'notice', title: '提示', shape: 'toast', content: '暂无内容' }); } case 7: case "end": return _context.stop(); } } }, _callee); })); return function showContent() { return _ref.apply(this, arguments); }; }(); return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_button["default"], { text: true, type: "primary", className: READONLY_CLASS_PREFIX + "-button " + READONLY_CLASS_PREFIX + "-button-primary", onClick: showContent, ref: function ref(_ref2) { setBtn(_ref2); } }, /*#__PURE__*/_react["default"].createElement("svg", { viewBox: "0 0 1024 1024", version: "1.1", xmlns: "http://www.w3.org/2000/svg", "p-id": "1535", className: "icon" }, /*#__PURE__*/_react["default"].createElement("path", { // eslint-disable-next-line d: "M469.333333 298.666667a42.666667 42.666667 0 0 1 42.666667 42.666666v85.333334h85.333333a42.666667 42.666667 0 0 1 42.368 37.674666L640 469.333333a42.666667 42.666667 0 0 1-42.666667 42.666667h-85.333333v85.333333a42.666667 42.666667 0 0 1-37.674667 42.368L469.333333 640a42.666667 42.666667 0 0 1-42.666666-42.666667v-85.333333H341.333333a42.666667 42.666667 0 0 1-42.368-37.674667L298.666667 469.333333a42.666667 42.666667 0 0 1 42.666666-42.666666h85.333334V341.333333a42.666667 42.666667 0 0 1 37.674666-42.368L469.333333 298.666667z m0-128a298.666667 298.666667 0 1 0 207.573334 513.408l3.285333-3.84a40.448 40.448 0 0 1 3.797333-3.370667A298.666667 298.666667 0 0 0 469.333333 170.666667z m0-85.333334a384 384 0 0 1 384 384 382.122667 382.122667 0 0 1-83.968 239.658667l156.8 156.842667a42.624 42.624 0 1 1-60.330666 60.330666l-156.842667-156.8A382.122667 382.122667 0 0 1 469.333333 853.333333c-212.096 0-384-171.904-384-384s171.904-384 384-384z", "p-id": "1536", fill: "#5584FF" })), /*#__PURE__*/_react["default"].createElement("span", { className: "text" }, "\u67E5\u770B\u8BE6\u60C5")), /*#__PURE__*/_react["default"].createElement(_overlay["default"], { visible: visible, safeNode: function safeNode() { return btn; }, align: "cc cc", hasMask: true, disableScroll: true, onRequestClose: function onRequestClose() { setVisible(false); } }, /*#__PURE__*/_react["default"].createElement("div", { className: READONLY_CLASS_PREFIX + "-dialog-content", "data-name": _static.COMPONENT_NAME + "Dialog" }, /*#__PURE__*/_react["default"].createElement("div", { dangerouslySetInnerHTML: { __html: showedContent } })))); }; var _default = Preview; exports["default"] = _default;