UNPKG

2.33 kBJavaScriptView Raw
1"use strict";
2
3var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
4
5Object.defineProperty(exports, "__esModule", {
6 value: true
7});
8exports.default = void 0;
9
10var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/extends"));
11
12var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/objectWithoutProperties"));
13
14var _react = _interopRequireDefault(require("react"));
15
16var _Button = _interopRequireDefault(require("@material-ui/core/Button"));
17
18var _CircularProgress = _interopRequireDefault(require("@material-ui/core/CircularProgress"));
19
20var _styles = require("@material-ui/core/styles");
21
22var _propTypes = _interopRequireDefault(require("prop-types"));
23
24/* eslint-disable import/no-extraneous-dependencies */
25var styles = {
26 progressButtonWrapper: {
27 position: 'relative',
28 display: 'inline-block'
29 },
30 progressButton: {
31 position: 'absolute',
32 top: '50%',
33 left: '50%',
34 marginTop: -14,
35 marginLeft: -14
36 }
37};
38
39var ProgressButtonJSX = function ProgressButtonJSX(_ref) {
40 var css = _ref.classes,
41 isLoading = _ref.isLoading,
42 children = _ref.children,
43 rest = (0, _objectWithoutProperties2.default)(_ref, ["classes", "isLoading", "children"]);
44 return _react.default.createElement("span", {
45 className: css.progressButtonWrapper,
46 style: {
47 verticalAlign: 'bottom'
48 }
49 }, _react.default.createElement(_Button.default, (0, _extends2.default)({
50 disabled: isLoading,
51 variant: "raised",
52 color: "primary",
53 type: "submit"
54 }, rest), children), isLoading && _react.default.createElement(_CircularProgress.default, {
55 className: css.progressButton,
56 size: 28,
57 thickness: 4
58 }));
59};
60
61ProgressButtonJSX.propTypes = {
62 classes: _propTypes.default.object.isRequired,
63 children: function children(props, propName, componentName) {
64 if (!Object.prototype.hasOwnProperty.call(props, propName)) {
65 throw new Error("Prop `".concat(propName, "` has type 'any' or 'mixed', but was not provided to `").concat(componentName, "`. Pass undefined or any other value."));
66 }
67 },
68 isLoading: _propTypes.default.bool
69};
70var ProgressButton = (0, _styles.withStyles)(styles)(ProgressButtonJSX);
71var _default = ProgressButton;
72exports.default = _default;
\No newline at end of file