UNPKG

@ant-design/pro-form

Version:
107 lines (105 loc) 4.92 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default; Object.defineProperty(exports, "__esModule", { value: true }); exports.LoginForm = LoginForm; var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2")); var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")); var _proProvider = require("@ant-design/pro-provider"); var _antd = require("antd"); var _classnames = _interopRequireDefault(require("classnames")); var _react = _interopRequireWildcard(require("react")); var _ProForm = require("../ProForm"); var _style = require("./style"); var _jsxRuntime = require("react/jsx-runtime"); var _excluded = ["logo", "message", "contentStyle", "title", "subTitle", "actions", "children", "containerStyle", "otherStyle"]; function LoginForm(props) { var _proFormProps$submitt; var logo = props.logo, message = props.message, contentStyle = props.contentStyle, title = props.title, subTitle = props.subTitle, actions = props.actions, children = props.children, containerStyle = props.containerStyle, otherStyle = props.otherStyle, proFormProps = (0, _objectWithoutProperties2.default)(props, _excluded); var intl = (0, _proProvider.useIntl)(); var submitter = proFormProps.submitter === false ? false : (0, _objectSpread2.default)((0, _objectSpread2.default)({ searchConfig: { submitText: intl.getMessage('loginForm.submitText', '登录') } }, proFormProps.submitter), {}, { submitButtonProps: (0, _objectSpread2.default)({ size: 'large', style: { width: '100%' } }, (_proFormProps$submitt = proFormProps.submitter) === null || _proFormProps$submitt === void 0 ? void 0 : _proFormProps$submitt.submitButtonProps), render: function render(_, dom) { var _proFormProps$submitt2; var loginButton = dom.pop(); if (typeof (proFormProps === null || proFormProps === void 0 || (_proFormProps$submitt2 = proFormProps.submitter) === null || _proFormProps$submitt2 === void 0 ? void 0 : _proFormProps$submitt2.render) === 'function') { var _proFormProps$submitt3, _proFormProps$submitt4; return proFormProps === null || proFormProps === void 0 || (_proFormProps$submitt3 = proFormProps.submitter) === null || _proFormProps$submitt3 === void 0 || (_proFormProps$submitt4 = _proFormProps$submitt3.render) === null || _proFormProps$submitt4 === void 0 ? void 0 : _proFormProps$submitt4.call(_proFormProps$submitt3, _, dom); } return loginButton; } }); var context = (0, _react.useContext)(_antd.ConfigProvider.ConfigContext); var baseClassName = context.getPrefixCls('pro-form-login'); var _useStyle = (0, _style.useStyle)(baseClassName), wrapSSR = _useStyle.wrapSSR, hashId = _useStyle.hashId; var getCls = function getCls(className) { return "".concat(baseClassName, "-").concat(className, " ").concat(hashId); }; /** 生成logo 的dom,如果是string 设置为图片 如果是个 dom 就原样保留 */ var logoDom = (0, _react.useMemo)(function () { if (!logo) return null; if (typeof logo === 'string') { return /*#__PURE__*/(0, _jsxRuntime.jsx)("img", { src: logo }); } return logo; }, [logo]); return wrapSSR( /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", { className: (0, _classnames.default)(getCls('container'), hashId), style: containerStyle, children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", { className: "".concat(getCls('top'), " ").concat(hashId).trim(), children: [title || logoDom ? /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", { className: "".concat(getCls('header')), children: [logoDom ? /*#__PURE__*/(0, _jsxRuntime.jsx)("span", { className: getCls('logo'), children: logoDom }) : null, title ? /*#__PURE__*/(0, _jsxRuntime.jsx)("span", { className: getCls('title'), children: title }) : null] }) : null, subTitle ? /*#__PURE__*/(0, _jsxRuntime.jsx)("div", { className: getCls('desc'), children: subTitle }) : null] }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", { className: getCls('main'), style: (0, _objectSpread2.default)({ width: 328 }, contentStyle), children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_ProForm.ProForm, (0, _objectSpread2.default)((0, _objectSpread2.default)({ isKeyPressSubmit: true }, proFormProps), {}, { submitter: submitter, children: [message, children] })), actions ? /*#__PURE__*/(0, _jsxRuntime.jsx)("div", { className: getCls('main-other'), style: otherStyle, children: actions }) : null] })] })); }