-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
36 changed files
with
1,845 additions
and
22 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,4 @@ | ||
module.exports = { | ||
presets: ["@babel/env", "@babel/preset-react"], | ||
plugins: ["@babel/plugin-proposal-class-properties"], | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
language: node_js | ||
node_js: 10.15.0 | ||
cache: npm | ||
script: | ||
- npm run build | ||
- npm run linter; | ||
- npm run jest; | ||
- npm run coveralls; | ||
deploy: | ||
provider: npm | ||
email: "$NPM_EMAIL" | ||
api_key: "$NPM_TOKEN" | ||
on: | ||
branch: master |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
## Mooks | ||
|
||
Reusable javascript utilities that serve [Matt Crowder!](https://twitter.com/mcrowder65) | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
"use strict"; | ||
|
||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports.default = void 0; | ||
|
||
var _propTypes = _interopRequireDefault(require("prop-types")); | ||
|
||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
|
||
function DefaultValue(_ref) { | ||
var children = _ref.children, | ||
value = _ref.value; | ||
return value === undefined ? null : children; | ||
} | ||
|
||
DefaultValue.propTypes = { | ||
children: _propTypes.default.node.isRequired, | ||
value: _propTypes.default.any | ||
}; | ||
var _default = DefaultValue; | ||
exports.default = _default; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,60 @@ | ||
"use strict"; | ||
|
||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports.default = void 0; | ||
|
||
var _react = _interopRequireDefault(require("react")); | ||
|
||
var _propTypes = _interopRequireDefault(require("prop-types")); | ||
|
||
var _Button = _interopRequireDefault(require("@material-ui/core/Button")); | ||
|
||
var _CircularProgress = _interopRequireDefault(require("@material-ui/core/CircularProgress")); | ||
|
||
var _withStyles = _interopRequireDefault(require("@material-ui/core/styles/withStyles")); | ||
|
||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
|
||
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } | ||
|
||
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } | ||
|
||
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } | ||
|
||
function LoaderButton(props) { | ||
var children = props.children, | ||
isFetching = props.isFetching, | ||
classes = props.classes, | ||
circleSize = props.circleSize, | ||
otherProps = _objectWithoutProperties(props, ["children", "isFetching", "classes", "circleSize"]); | ||
|
||
return _react.default.createElement(_Button.default, _extends({}, otherProps, { | ||
disabled: isFetching === true | ||
}), children, isFetching ? _react.default.createElement(_CircularProgress.default, { | ||
size: circleSize, | ||
className: classes.loader, | ||
"data-testid": "circular-progress" | ||
}) : null); | ||
} | ||
|
||
LoaderButton.propTypes = { | ||
children: _propTypes.default.node.isRequired, | ||
isFetching: _propTypes.default.bool.isRequired, | ||
classes: _propTypes.default.object.isRequired, | ||
circleSize: _propTypes.default.number | ||
}; | ||
LoaderButton.defaultProps = { | ||
isFetching: false, | ||
circleSize: 30 | ||
}; | ||
var styles = { | ||
loader: { | ||
position: "absolute" | ||
} | ||
}; | ||
|
||
var _default = (0, _withStyles.default)(styles)(LoaderButton); | ||
|
||
exports.default = _default; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
"use strict"; | ||
|
||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports.default = void 0; | ||
|
||
var _react = _interopRequireDefault(require("react")); | ||
|
||
var _propTypes = _interopRequireDefault(require("prop-types")); | ||
|
||
var _core = require("@material-ui/core"); | ||
|
||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
|
||
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } | ||
|
||
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } | ||
|
||
function LoaderCard(_ref) { | ||
var children = _ref.children, | ||
isFetching = _ref.isFetching, | ||
props = _objectWithoutProperties(_ref, ["children", "isFetching"]); | ||
|
||
return _react.default.createElement(_core.Card, props, isFetching ? _react.default.createElement(_core.LinearProgress, { | ||
"data-testid": "linear-progress" | ||
}) : null, children); | ||
} | ||
|
||
LoaderCard.propTypes = { | ||
children: _propTypes.default.node.isRequired, | ||
isFetching: _propTypes.default.bool.isRequired | ||
}; | ||
var _default = LoaderCard; | ||
exports.default = _default; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,103 @@ | ||
"use strict"; | ||
|
||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports.default = void 0; | ||
|
||
var _react = _interopRequireDefault(require("react")); | ||
|
||
var _propTypes = _interopRequireDefault(require("prop-types")); | ||
|
||
var _FormControl = _interopRequireDefault(require("@material-ui/core/FormControl")); | ||
|
||
var _Input = _interopRequireDefault(require("@material-ui/core/Input")); | ||
|
||
var _InputLabel = _interopRequireDefault(require("@material-ui/core/InputLabel")); | ||
|
||
var _Button = _interopRequireDefault(require("@material-ui/core/Button")); | ||
|
||
var _Typography = _interopRequireDefault(require("@material-ui/core/Typography")); | ||
|
||
var _Card = _interopRequireDefault(require("@material-ui/core/Card")); | ||
|
||
var _Grid = _interopRequireDefault(require("@material-ui/core/Grid")); | ||
|
||
var _withStyles = _interopRequireDefault(require("@material-ui/core/styles/withStyles")); | ||
|
||
var _compose = require("../../compose"); | ||
|
||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
|
||
var styles = { | ||
content: { | ||
display: "flex", | ||
justifyContent: "center", | ||
alignItems: "center" | ||
}, | ||
card: { | ||
width: 450, | ||
padding: 20 | ||
} | ||
}; | ||
|
||
function Login(_ref) { | ||
var classes = _ref.classes, | ||
_onSubmit = _ref._onSubmit; | ||
return _react.default.createElement(_Card.default, { | ||
className: classes.card | ||
}, _react.default.createElement(_Typography.default, { | ||
variant: "h4" | ||
}, "Login"), _react.default.createElement("form", { | ||
className: classes.content, | ||
onSubmit: _onSubmit | ||
}, _react.default.createElement(_Grid.default, { | ||
container: true, | ||
alignItems: "center", | ||
direction: "column" | ||
}, _react.default.createElement(_Grid.default, { | ||
item: true | ||
}, _react.default.createElement(_FormControl.default, { | ||
margin: "normal", | ||
required: true, | ||
fullWidth: true | ||
}, _react.default.createElement(_InputLabel.default, { | ||
htmlFor: "email" | ||
}, "Email Address"), _react.default.createElement(_Input.default, { | ||
id: "email", | ||
name: "email", | ||
autoComplete: "email", | ||
autoFocus: true | ||
}))), _react.default.createElement(_Grid.default, { | ||
item: true | ||
}, _react.default.createElement(_FormControl.default, { | ||
margin: "normal", | ||
required: true, | ||
fullWidth: true | ||
}, _react.default.createElement(_InputLabel.default, { | ||
htmlFor: "password" | ||
}, "Password"), _react.default.createElement(_Input.default, { | ||
name: "password", | ||
type: "password", | ||
id: "password", | ||
autoComplete: "current-password" | ||
}))), _react.default.createElement(_Grid.default, { | ||
item: true | ||
}, _react.default.createElement(_Button.default, { | ||
type: "submit", | ||
fullWidth: true, | ||
variant: "contained", | ||
color: "primary", | ||
className: classes.submit | ||
}, "Sign in"))))); | ||
} | ||
|
||
Login.propTypes = { | ||
classes: _propTypes.default.object.isRequired, | ||
_onSubmit: _propTypes.default.func.isRequired | ||
}; | ||
var enhance = (0, _compose.compose)((0, _withStyles.default)(styles)); | ||
|
||
var _default = enhance(Login); | ||
|
||
exports.default = _default; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,101 @@ | ||
"use strict"; | ||
|
||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports.default = void 0; | ||
|
||
var _react = _interopRequireDefault(require("react")); | ||
|
||
var _propTypes = _interopRequireDefault(require("prop-types")); | ||
|
||
var _FormControl = _interopRequireDefault(require("@material-ui/core/FormControl")); | ||
|
||
var _Input = _interopRequireDefault(require("@material-ui/core/Input")); | ||
|
||
var _InputLabel = _interopRequireDefault(require("@material-ui/core/InputLabel")); | ||
|
||
var _Button = _interopRequireDefault(require("@material-ui/core/Button")); | ||
|
||
var _Grid = _interopRequireDefault(require("@material-ui/core/Grid")); | ||
|
||
var _Typography = _interopRequireDefault(require("@material-ui/core/Typography")); | ||
|
||
var _Card = _interopRequireDefault(require("@material-ui/core/Card")); | ||
|
||
var _withStyles = _interopRequireDefault(require("@material-ui/core/styles/withStyles")); | ||
|
||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
|
||
var styles = { | ||
content: { | ||
display: "flex", | ||
justifyContent: "center", | ||
alignItems: "center" | ||
}, | ||
card: { | ||
width: 300, | ||
padding: 20 | ||
} | ||
}; | ||
|
||
function Signup(_ref) { | ||
var classes = _ref.classes, | ||
_onSubmit = _ref._onSubmit; | ||
return _react.default.createElement("div", { | ||
className: classes.content | ||
}, _react.default.createElement(_Card.default, { | ||
className: classes.card | ||
}, _react.default.createElement(_Grid.default, null, _react.default.createElement(_Typography.default, { | ||
variant: "h4" | ||
}, "Sign up"), _react.default.createElement("form", { | ||
className: classes.content, | ||
onSubmit: _onSubmit | ||
}, _react.default.createElement(_Grid.default, { | ||
container: true, | ||
alignItems: "center", | ||
direction: "column" | ||
}, _react.default.createElement(_Grid.default, { | ||
item: true | ||
}, _react.default.createElement(_FormControl.default, { | ||
margin: "normal", | ||
required: true, | ||
fullWidth: true | ||
}, _react.default.createElement(_InputLabel.default, { | ||
htmlFor: "email" | ||
}, "Email Address"), _react.default.createElement(_Input.default, { | ||
id: "email", | ||
name: "email", | ||
autoComplete: "email", | ||
autoFocus: true | ||
}))), _react.default.createElement(_Grid.default, { | ||
item: true | ||
}, _react.default.createElement(_FormControl.default, { | ||
margin: "normal", | ||
required: true, | ||
fullWidth: true | ||
}, _react.default.createElement(_InputLabel.default, { | ||
htmlFor: "password" | ||
}, "Password"), _react.default.createElement(_Input.default, { | ||
name: "password", | ||
type: "password", | ||
id: "password", | ||
autoComplete: "current-password" | ||
}))), _react.default.createElement(_Grid.default, { | ||
item: true | ||
}, _react.default.createElement(_Button.default, { | ||
type: "submit", | ||
fullWidth: true, | ||
variant: "contained", | ||
color: "primary" | ||
}, "Sign Up"))))))); | ||
} | ||
|
||
Signup.propTypes = { | ||
classes: _propTypes.default.object, | ||
_onSubmit: _propTypes.default.func | ||
}; | ||
|
||
var _default = (0, _withStyles.default)(styles)(Signup); | ||
|
||
exports.default = _default; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
"use strict"; | ||
|
||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports.compose = void 0; | ||
|
||
// copy and paste from redux/compose | ||
var compose = function compose() { | ||
for (var _len = arguments.length, funcs = new Array(_len), _key = 0; _key < _len; _key++) { | ||
funcs[_key] = arguments[_key]; | ||
} | ||
|
||
if (funcs.length === 0) { | ||
return function (arg) { | ||
return arg; | ||
}; | ||
} | ||
|
||
if (funcs.length === 1) { | ||
return funcs[0]; | ||
} | ||
|
||
return funcs.reduce(function (a, b) { | ||
return function () { | ||
return a(b.apply(void 0, arguments)); | ||
}; | ||
}); | ||
}; | ||
|
||
exports.compose = compose; |
Oops, something went wrong.