@deephaven/auth-plugins
Version:
Deephaven Auth Plugins
62 lines • 2.1 kB
JavaScript
import { LoadingSpinner } from '@deephaven/components';
import classNames from 'classnames';
import React from 'react';
import "./LoginForm.css";
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
export function LoginForm(_ref) {
var {
children,
errorMessage,
isLoggingIn = false,
onSubmit: _onSubmit
} = _ref;
return /*#__PURE__*/_jsxs("form", {
className: "login-form",
onSubmit: event => {
event.preventDefault();
event.stopPropagation();
_onSubmit === null || _onSubmit === void 0 || _onSubmit(event);
},
children: [/*#__PURE__*/_jsx("div", {
className: "flex-spacer"
}), /*#__PURE__*/_jsxs("div", {
className: "flex-wrapper",
children: [/*#__PURE__*/_jsx("fieldset", {
disabled: isLoggingIn,
className: "container-fluid",
children: children
}), /*#__PURE__*/_jsx("div", {
className: "form-group d-flex justify-content-end align-items-center mb-0",
children: /*#__PURE__*/_jsxs("button", {
type: "submit",
className: classNames('btn btn-primary', {
'btn-spinner': isLoggingIn
}, {
'btn-cancelable': isLoggingIn
}),
"data-testid": "btn-login",
children: [isLoggingIn && /*#__PURE__*/_jsxs("span", {
children: [/*#__PURE__*/_jsx(LoadingSpinner, {
className: "mr-2 loading-spinner-vertical-align"
}), /*#__PURE__*/_jsx("span", {
className: "btn-normal-content",
children: "Logging in"
}), /*#__PURE__*/_jsx("span", {
className: "btn-hover-content",
children: "Cancel"
})]
}), !isLoggingIn && 'Login']
})
})]
}), /*#__PURE__*/_jsx("div", {
className: "flex-spacer",
children: errorMessage != null && /*#__PURE__*/_jsx("p", {
className: "error-message mb-0",
role: "alert",
children: "".concat(errorMessage)
})
})]
});
}
export default LoginForm;
//# sourceMappingURL=LoginForm.js.map