2856 lines
No EOL
98 KiB
JavaScript
2856 lines
No EOL
98 KiB
JavaScript
exports.id = 185;
|
|
exports.ids = [185];
|
|
exports.modules = {
|
|
|
|
/***/ 156:
|
|
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
|
|
"use strict";
|
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
/* harmony export */ "Z": function() { return /* binding */ _defineProperty; }
|
|
/* harmony export */ });
|
|
function _defineProperty(obj, key, value) {
|
|
if (key in obj) {
|
|
Object.defineProperty(obj, key, {
|
|
value: value,
|
|
enumerable: true,
|
|
configurable: true,
|
|
writable: true
|
|
});
|
|
} else {
|
|
obj[key] = value;
|
|
}
|
|
|
|
return obj;
|
|
}
|
|
|
|
/***/ }),
|
|
|
|
/***/ 122:
|
|
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
|
|
"use strict";
|
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
/* harmony export */ "Z": function() { return /* binding */ _extends; }
|
|
/* harmony export */ });
|
|
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);
|
|
}
|
|
|
|
/***/ }),
|
|
|
|
/***/ 375:
|
|
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
|
|
"use strict";
|
|
|
|
// EXPORTS
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
"Z": function() { return /* binding */ _objectWithoutProperties; }
|
|
});
|
|
|
|
;// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js
|
|
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;
|
|
}
|
|
;// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js
|
|
|
|
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;
|
|
}
|
|
|
|
/***/ }),
|
|
|
|
/***/ 189:
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
"use strict";
|
|
/* unused harmony export styles */
|
|
/* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(375);
|
|
/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(122);
|
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(297);
|
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(229);
|
|
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);
|
|
/* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(536);
|
|
/* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(clsx__WEBPACK_IMPORTED_MODULE_2__);
|
|
/* harmony import */ var _styles_withStyles__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(543);
|
|
/* harmony import */ var _styles_colorManipulator__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(693);
|
|
/* harmony import */ var _ButtonBase__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(491);
|
|
/* harmony import */ var _utils_capitalize__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(871);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var styles = function styles(theme) {
|
|
return {
|
|
/* Styles applied to the root element. */
|
|
root: (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_3__/* .default */ .Z)({}, theme.typography.button, {
|
|
boxSizing: 'border-box',
|
|
minWidth: 64,
|
|
padding: '6px 16px',
|
|
borderRadius: theme.shape.borderRadius,
|
|
color: theme.palette.text.primary,
|
|
transition: theme.transitions.create(['background-color', 'box-shadow', 'border'], {
|
|
duration: theme.transitions.duration.short
|
|
}),
|
|
'&:hover': {
|
|
textDecoration: 'none',
|
|
backgroundColor: (0,_styles_colorManipulator__WEBPACK_IMPORTED_MODULE_4__/* .fade */ .U1)(theme.palette.text.primary, theme.palette.action.hoverOpacity),
|
|
// Reset on touch devices, it doesn't add specificity
|
|
'@media (hover: none)': {
|
|
backgroundColor: 'transparent'
|
|
},
|
|
'&$disabled': {
|
|
backgroundColor: 'transparent'
|
|
}
|
|
},
|
|
'&$disabled': {
|
|
color: theme.palette.action.disabled
|
|
}
|
|
}),
|
|
|
|
/* Styles applied to the span element that wraps the children. */
|
|
label: {
|
|
width: '100%',
|
|
// Ensure the correct width for iOS Safari
|
|
display: 'inherit',
|
|
alignItems: 'inherit',
|
|
justifyContent: 'inherit'
|
|
},
|
|
|
|
/* Styles applied to the root element if `variant="text"`. */
|
|
text: {
|
|
padding: '6px 8px'
|
|
},
|
|
|
|
/* Styles applied to the root element if `variant="text"` and `color="primary"`. */
|
|
textPrimary: {
|
|
color: theme.palette.primary.main,
|
|
'&:hover': {
|
|
backgroundColor: (0,_styles_colorManipulator__WEBPACK_IMPORTED_MODULE_4__/* .fade */ .U1)(theme.palette.primary.main, theme.palette.action.hoverOpacity),
|
|
// Reset on touch devices, it doesn't add specificity
|
|
'@media (hover: none)': {
|
|
backgroundColor: 'transparent'
|
|
}
|
|
}
|
|
},
|
|
|
|
/* Styles applied to the root element if `variant="text"` and `color="secondary"`. */
|
|
textSecondary: {
|
|
color: theme.palette.secondary.main,
|
|
'&:hover': {
|
|
backgroundColor: (0,_styles_colorManipulator__WEBPACK_IMPORTED_MODULE_4__/* .fade */ .U1)(theme.palette.secondary.main, theme.palette.action.hoverOpacity),
|
|
// Reset on touch devices, it doesn't add specificity
|
|
'@media (hover: none)': {
|
|
backgroundColor: 'transparent'
|
|
}
|
|
}
|
|
},
|
|
|
|
/* Styles applied to the root element if `variant="outlined"`. */
|
|
outlined: {
|
|
padding: '5px 15px',
|
|
border: "1px solid ".concat(theme.palette.type === 'light' ? 'rgba(0, 0, 0, 0.23)' : 'rgba(255, 255, 255, 0.23)'),
|
|
'&$disabled': {
|
|
border: "1px solid ".concat(theme.palette.action.disabledBackground)
|
|
}
|
|
},
|
|
|
|
/* Styles applied to the root element if `variant="outlined"` and `color="primary"`. */
|
|
outlinedPrimary: {
|
|
color: theme.palette.primary.main,
|
|
border: "1px solid ".concat((0,_styles_colorManipulator__WEBPACK_IMPORTED_MODULE_4__/* .fade */ .U1)(theme.palette.primary.main, 0.5)),
|
|
'&:hover': {
|
|
border: "1px solid ".concat(theme.palette.primary.main),
|
|
backgroundColor: (0,_styles_colorManipulator__WEBPACK_IMPORTED_MODULE_4__/* .fade */ .U1)(theme.palette.primary.main, theme.palette.action.hoverOpacity),
|
|
// Reset on touch devices, it doesn't add specificity
|
|
'@media (hover: none)': {
|
|
backgroundColor: 'transparent'
|
|
}
|
|
}
|
|
},
|
|
|
|
/* Styles applied to the root element if `variant="outlined"` and `color="secondary"`. */
|
|
outlinedSecondary: {
|
|
color: theme.palette.secondary.main,
|
|
border: "1px solid ".concat((0,_styles_colorManipulator__WEBPACK_IMPORTED_MODULE_4__/* .fade */ .U1)(theme.palette.secondary.main, 0.5)),
|
|
'&:hover': {
|
|
border: "1px solid ".concat(theme.palette.secondary.main),
|
|
backgroundColor: (0,_styles_colorManipulator__WEBPACK_IMPORTED_MODULE_4__/* .fade */ .U1)(theme.palette.secondary.main, theme.palette.action.hoverOpacity),
|
|
// Reset on touch devices, it doesn't add specificity
|
|
'@media (hover: none)': {
|
|
backgroundColor: 'transparent'
|
|
}
|
|
},
|
|
'&$disabled': {
|
|
border: "1px solid ".concat(theme.palette.action.disabled)
|
|
}
|
|
},
|
|
|
|
/* Styles applied to the root element if `variant="contained"`. */
|
|
contained: {
|
|
color: theme.palette.getContrastText(theme.palette.grey[300]),
|
|
backgroundColor: theme.palette.grey[300],
|
|
boxShadow: theme.shadows[2],
|
|
'&:hover': {
|
|
backgroundColor: theme.palette.grey.A100,
|
|
boxShadow: theme.shadows[4],
|
|
// Reset on touch devices, it doesn't add specificity
|
|
'@media (hover: none)': {
|
|
boxShadow: theme.shadows[2],
|
|
backgroundColor: theme.palette.grey[300]
|
|
},
|
|
'&$disabled': {
|
|
backgroundColor: theme.palette.action.disabledBackground
|
|
}
|
|
},
|
|
'&$focusVisible': {
|
|
boxShadow: theme.shadows[6]
|
|
},
|
|
'&:active': {
|
|
boxShadow: theme.shadows[8]
|
|
},
|
|
'&$disabled': {
|
|
color: theme.palette.action.disabled,
|
|
boxShadow: theme.shadows[0],
|
|
backgroundColor: theme.palette.action.disabledBackground
|
|
}
|
|
},
|
|
|
|
/* Styles applied to the root element if `variant="contained"` and `color="primary"`. */
|
|
containedPrimary: {
|
|
color: theme.palette.primary.contrastText,
|
|
backgroundColor: theme.palette.primary.main,
|
|
'&:hover': {
|
|
backgroundColor: theme.palette.primary.dark,
|
|
// Reset on touch devices, it doesn't add specificity
|
|
'@media (hover: none)': {
|
|
backgroundColor: theme.palette.primary.main
|
|
}
|
|
}
|
|
},
|
|
|
|
/* Styles applied to the root element if `variant="contained"` and `color="secondary"`. */
|
|
containedSecondary: {
|
|
color: theme.palette.secondary.contrastText,
|
|
backgroundColor: theme.palette.secondary.main,
|
|
'&:hover': {
|
|
backgroundColor: theme.palette.secondary.dark,
|
|
// Reset on touch devices, it doesn't add specificity
|
|
'@media (hover: none)': {
|
|
backgroundColor: theme.palette.secondary.main
|
|
}
|
|
}
|
|
},
|
|
|
|
/* Styles applied to the root element if `disableElevation={true}`. */
|
|
disableElevation: {
|
|
boxShadow: 'none',
|
|
'&:hover': {
|
|
boxShadow: 'none'
|
|
},
|
|
'&$focusVisible': {
|
|
boxShadow: 'none'
|
|
},
|
|
'&:active': {
|
|
boxShadow: 'none'
|
|
},
|
|
'&$disabled': {
|
|
boxShadow: 'none'
|
|
}
|
|
},
|
|
|
|
/* Pseudo-class applied to the ButtonBase root element if the button is keyboard focused. */
|
|
focusVisible: {},
|
|
|
|
/* Pseudo-class applied to the root element if `disabled={true}`. */
|
|
disabled: {},
|
|
|
|
/* Styles applied to the root element if `color="inherit"`. */
|
|
colorInherit: {
|
|
color: 'inherit',
|
|
borderColor: 'currentColor'
|
|
},
|
|
|
|
/* Styles applied to the root element if `size="small"` and `variant="text"`. */
|
|
textSizeSmall: {
|
|
padding: '4px 5px',
|
|
fontSize: theme.typography.pxToRem(13)
|
|
},
|
|
|
|
/* Styles applied to the root element if `size="large"` and `variant="text"`. */
|
|
textSizeLarge: {
|
|
padding: '8px 11px',
|
|
fontSize: theme.typography.pxToRem(15)
|
|
},
|
|
|
|
/* Styles applied to the root element if `size="small"` and `variant="outlined"`. */
|
|
outlinedSizeSmall: {
|
|
padding: '3px 9px',
|
|
fontSize: theme.typography.pxToRem(13)
|
|
},
|
|
|
|
/* Styles applied to the root element if `size="large"` and `variant="outlined"`. */
|
|
outlinedSizeLarge: {
|
|
padding: '7px 21px',
|
|
fontSize: theme.typography.pxToRem(15)
|
|
},
|
|
|
|
/* Styles applied to the root element if `size="small"` and `variant="contained"`. */
|
|
containedSizeSmall: {
|
|
padding: '4px 10px',
|
|
fontSize: theme.typography.pxToRem(13)
|
|
},
|
|
|
|
/* Styles applied to the root element if `size="large"` and `variant="contained"`. */
|
|
containedSizeLarge: {
|
|
padding: '8px 22px',
|
|
fontSize: theme.typography.pxToRem(15)
|
|
},
|
|
|
|
/* Styles applied to the root element if `size="small"`. */
|
|
sizeSmall: {},
|
|
|
|
/* Styles applied to the root element if `size="large"`. */
|
|
sizeLarge: {},
|
|
|
|
/* Styles applied to the root element if `fullWidth={true}`. */
|
|
fullWidth: {
|
|
width: '100%'
|
|
},
|
|
|
|
/* Styles applied to the startIcon element if supplied. */
|
|
startIcon: {
|
|
display: 'inherit',
|
|
marginRight: 8,
|
|
marginLeft: -4,
|
|
'&$iconSizeSmall': {
|
|
marginLeft: -2
|
|
}
|
|
},
|
|
|
|
/* Styles applied to the endIcon element if supplied. */
|
|
endIcon: {
|
|
display: 'inherit',
|
|
marginRight: -4,
|
|
marginLeft: 8,
|
|
'&$iconSizeSmall': {
|
|
marginRight: -2
|
|
}
|
|
},
|
|
|
|
/* Styles applied to the icon element if supplied and `size="small"`. */
|
|
iconSizeSmall: {
|
|
'& > *:first-child': {
|
|
fontSize: 18
|
|
}
|
|
},
|
|
|
|
/* Styles applied to the icon element if supplied and `size="medium"`. */
|
|
iconSizeMedium: {
|
|
'& > *:first-child': {
|
|
fontSize: 20
|
|
}
|
|
},
|
|
|
|
/* Styles applied to the icon element if supplied and `size="large"`. */
|
|
iconSizeLarge: {
|
|
'& > *:first-child': {
|
|
fontSize: 22
|
|
}
|
|
}
|
|
};
|
|
};
|
|
var Button = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.forwardRef(function Button(props, ref) {
|
|
var children = props.children,
|
|
classes = props.classes,
|
|
className = props.className,
|
|
_props$color = props.color,
|
|
color = _props$color === void 0 ? 'default' : _props$color,
|
|
_props$component = props.component,
|
|
component = _props$component === void 0 ? 'button' : _props$component,
|
|
_props$disabled = props.disabled,
|
|
disabled = _props$disabled === void 0 ? false : _props$disabled,
|
|
_props$disableElevati = props.disableElevation,
|
|
disableElevation = _props$disableElevati === void 0 ? false : _props$disableElevati,
|
|
_props$disableFocusRi = props.disableFocusRipple,
|
|
disableFocusRipple = _props$disableFocusRi === void 0 ? false : _props$disableFocusRi,
|
|
endIconProp = props.endIcon,
|
|
focusVisibleClassName = props.focusVisibleClassName,
|
|
_props$fullWidth = props.fullWidth,
|
|
fullWidth = _props$fullWidth === void 0 ? false : _props$fullWidth,
|
|
_props$size = props.size,
|
|
size = _props$size === void 0 ? 'medium' : _props$size,
|
|
startIconProp = props.startIcon,
|
|
_props$type = props.type,
|
|
type = _props$type === void 0 ? 'button' : _props$type,
|
|
_props$variant = props.variant,
|
|
variant = _props$variant === void 0 ? 'text' : _props$variant,
|
|
other = (0,_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_5__/* .default */ .Z)(props, ["children", "classes", "className", "color", "component", "disabled", "disableElevation", "disableFocusRipple", "endIcon", "focusVisibleClassName", "fullWidth", "size", "startIcon", "type", "variant"]);
|
|
|
|
var startIcon = startIconProp && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
|
|
className: clsx__WEBPACK_IMPORTED_MODULE_2___default()(classes.startIcon, classes["iconSize".concat((0,_utils_capitalize__WEBPACK_IMPORTED_MODULE_6__/* .default */ .Z)(size))])
|
|
}, startIconProp);
|
|
var endIcon = endIconProp && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
|
|
className: clsx__WEBPACK_IMPORTED_MODULE_2___default()(classes.endIcon, classes["iconSize".concat((0,_utils_capitalize__WEBPACK_IMPORTED_MODULE_6__/* .default */ .Z)(size))])
|
|
}, endIconProp);
|
|
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_ButtonBase__WEBPACK_IMPORTED_MODULE_7__/* .default */ .Z, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_3__/* .default */ .Z)({
|
|
className: clsx__WEBPACK_IMPORTED_MODULE_2___default()(classes.root, classes[variant], className, color === 'inherit' ? classes.colorInherit : color !== 'default' && classes["".concat(variant).concat((0,_utils_capitalize__WEBPACK_IMPORTED_MODULE_6__/* .default */ .Z)(color))], size !== 'medium' && [classes["".concat(variant, "Size").concat((0,_utils_capitalize__WEBPACK_IMPORTED_MODULE_6__/* .default */ .Z)(size))], classes["size".concat((0,_utils_capitalize__WEBPACK_IMPORTED_MODULE_6__/* .default */ .Z)(size))]], disableElevation && classes.disableElevation, disabled && classes.disabled, fullWidth && classes.fullWidth),
|
|
component: component,
|
|
disabled: disabled,
|
|
focusRipple: !disableFocusRipple,
|
|
focusVisibleClassName: clsx__WEBPACK_IMPORTED_MODULE_2___default()(classes.focusVisible, focusVisibleClassName),
|
|
ref: ref,
|
|
type: type
|
|
}, other), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
|
|
className: classes.label
|
|
}, startIcon, children, endIcon));
|
|
});
|
|
false ? 0 : void 0;
|
|
/* harmony default export */ __webpack_exports__["Z"] = ((0,_styles_withStyles__WEBPACK_IMPORTED_MODULE_8__/* .default */ .Z)(styles, {
|
|
name: 'MuiButton'
|
|
})(Button));
|
|
|
|
/***/ }),
|
|
|
|
/***/ 491:
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
"use strict";
|
|
|
|
// EXPORTS
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
"Z": function() { return /* binding */ ButtonBase_ButtonBase; }
|
|
});
|
|
|
|
// UNUSED EXPORTS: styles
|
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
|
|
var esm_extends = __webpack_require__(122);
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js + 1 modules
|
|
var objectWithoutProperties = __webpack_require__(375);
|
|
// EXTERNAL MODULE: external "react"
|
|
var external_react_ = __webpack_require__(297);
|
|
// EXTERNAL MODULE: external "prop-types"
|
|
var external_prop_types_ = __webpack_require__(229);
|
|
// EXTERNAL MODULE: external "react-dom"
|
|
var external_react_dom_ = __webpack_require__(268);
|
|
// EXTERNAL MODULE: external "clsx"
|
|
var external_clsx_ = __webpack_require__(536);
|
|
var external_clsx_default = /*#__PURE__*/__webpack_require__.n(external_clsx_);
|
|
// EXTERNAL MODULE: external "@material-ui/utils"
|
|
var utils_ = __webpack_require__(958);
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/utils/setRef.js
|
|
// TODO v5: consider to make it private
|
|
function setRef(ref, value) {
|
|
if (typeof ref === 'function') {
|
|
ref(value);
|
|
} else if (ref) {
|
|
ref.current = value;
|
|
}
|
|
}
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/utils/useForkRef.js
|
|
|
|
|
|
function useForkRef(refA, refB) {
|
|
/**
|
|
* This will create a new function if the ref props change and are defined.
|
|
* This means react will call the old forkRef with `null` and the new forkRef
|
|
* with the ref. Cleanup naturally emerges from this behavior
|
|
*/
|
|
return external_react_.useMemo(function () {
|
|
if (refA == null && refB == null) {
|
|
return null;
|
|
}
|
|
|
|
return function (refValue) {
|
|
setRef(refA, refValue);
|
|
setRef(refB, refValue);
|
|
};
|
|
}, [refA, refB]);
|
|
}
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/utils/useEventCallback.js
|
|
|
|
var useEnhancedEffect = typeof window !== 'undefined' ? external_react_.useLayoutEffect : external_react_.useEffect;
|
|
/**
|
|
* https://github.com/facebook/react/issues/14099#issuecomment-440013892
|
|
*
|
|
* @param {function} fn
|
|
*/
|
|
|
|
function useEventCallback(fn) {
|
|
var ref = external_react_.useRef(fn);
|
|
useEnhancedEffect(function () {
|
|
ref.current = fn;
|
|
});
|
|
return external_react_.useCallback(function () {
|
|
return (0, ref.current).apply(void 0, arguments);
|
|
}, []);
|
|
}
|
|
// EXTERNAL MODULE: ./node_modules/@material-ui/core/esm/styles/withStyles.js
|
|
var withStyles = __webpack_require__(543);
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/utils/useIsFocusVisible.js
|
|
// based on https://github.com/WICG/focus-visible/blob/v4.1.5/src/focus-visible.js
|
|
|
|
|
|
var hadKeyboardEvent = true;
|
|
var hadFocusVisibleRecently = false;
|
|
var hadFocusVisibleRecentlyTimeout = null;
|
|
var inputTypesWhitelist = {
|
|
text: true,
|
|
search: true,
|
|
url: true,
|
|
tel: true,
|
|
email: true,
|
|
password: true,
|
|
number: true,
|
|
date: true,
|
|
month: true,
|
|
week: true,
|
|
time: true,
|
|
datetime: true,
|
|
'datetime-local': true
|
|
};
|
|
/**
|
|
* Computes whether the given element should automatically trigger the
|
|
* `focus-visible` class being added, i.e. whether it should always match
|
|
* `:focus-visible` when focused.
|
|
* @param {Element} node
|
|
* @return {boolean}
|
|
*/
|
|
|
|
function focusTriggersKeyboardModality(node) {
|
|
var type = node.type,
|
|
tagName = node.tagName;
|
|
|
|
if (tagName === 'INPUT' && inputTypesWhitelist[type] && !node.readOnly) {
|
|
return true;
|
|
}
|
|
|
|
if (tagName === 'TEXTAREA' && !node.readOnly) {
|
|
return true;
|
|
}
|
|
|
|
if (node.isContentEditable) {
|
|
return true;
|
|
}
|
|
|
|
return false;
|
|
}
|
|
/**
|
|
* Keep track of our keyboard modality state with `hadKeyboardEvent`.
|
|
* If the most recent user interaction was via the keyboard;
|
|
* and the key press did not include a meta, alt/option, or control key;
|
|
* then the modality is keyboard. Otherwise, the modality is not keyboard.
|
|
* @param {KeyboardEvent} event
|
|
*/
|
|
|
|
|
|
function handleKeyDown(event) {
|
|
if (event.metaKey || event.altKey || event.ctrlKey) {
|
|
return;
|
|
}
|
|
|
|
hadKeyboardEvent = true;
|
|
}
|
|
/**
|
|
* If at any point a user clicks with a pointing device, ensure that we change
|
|
* the modality away from keyboard.
|
|
* This avoids the situation where a user presses a key on an already focused
|
|
* element, and then clicks on a different element, focusing it with a
|
|
* pointing device, while we still think we're in keyboard modality.
|
|
*/
|
|
|
|
|
|
function handlePointerDown() {
|
|
hadKeyboardEvent = false;
|
|
}
|
|
|
|
function handleVisibilityChange() {
|
|
if (this.visibilityState === 'hidden') {
|
|
// If the tab becomes active again, the browser will handle calling focus
|
|
// on the element (Safari actually calls it twice).
|
|
// If this tab change caused a blur on an element with focus-visible,
|
|
// re-apply the class when the user switches back to the tab.
|
|
if (hadFocusVisibleRecently) {
|
|
hadKeyboardEvent = true;
|
|
}
|
|
}
|
|
}
|
|
|
|
function prepare(doc) {
|
|
doc.addEventListener('keydown', handleKeyDown, true);
|
|
doc.addEventListener('mousedown', handlePointerDown, true);
|
|
doc.addEventListener('pointerdown', handlePointerDown, true);
|
|
doc.addEventListener('touchstart', handlePointerDown, true);
|
|
doc.addEventListener('visibilitychange', handleVisibilityChange, true);
|
|
}
|
|
|
|
function teardown(doc) {
|
|
doc.removeEventListener('keydown', handleKeyDown, true);
|
|
doc.removeEventListener('mousedown', handlePointerDown, true);
|
|
doc.removeEventListener('pointerdown', handlePointerDown, true);
|
|
doc.removeEventListener('touchstart', handlePointerDown, true);
|
|
doc.removeEventListener('visibilitychange', handleVisibilityChange, true);
|
|
}
|
|
|
|
function isFocusVisible(event) {
|
|
var target = event.target;
|
|
|
|
try {
|
|
return target.matches(':focus-visible');
|
|
} catch (error) {} // browsers not implementing :focus-visible will throw a SyntaxError
|
|
// we use our own heuristic for those browsers
|
|
// rethrow might be better if it's not the expected error but do we really
|
|
// want to crash if focus-visible malfunctioned?
|
|
// no need for validFocusTarget check. the user does that by attaching it to
|
|
// focusable events only
|
|
|
|
|
|
return hadKeyboardEvent || focusTriggersKeyboardModality(target);
|
|
}
|
|
/**
|
|
* Should be called if a blur event is fired on a focus-visible element
|
|
*/
|
|
|
|
|
|
function handleBlurVisible() {
|
|
// To detect a tab/window switch, we look for a blur event followed
|
|
// rapidly by a visibility change.
|
|
// If we don't see a visibility change within 100ms, it's probably a
|
|
// regular focus change.
|
|
hadFocusVisibleRecently = true;
|
|
window.clearTimeout(hadFocusVisibleRecentlyTimeout);
|
|
hadFocusVisibleRecentlyTimeout = window.setTimeout(function () {
|
|
hadFocusVisibleRecently = false;
|
|
}, 100);
|
|
}
|
|
|
|
function useIsFocusVisible() {
|
|
var ref = external_react_.useCallback(function (instance) {
|
|
var node = external_react_dom_.findDOMNode(instance);
|
|
|
|
if (node != null) {
|
|
prepare(node.ownerDocument);
|
|
}
|
|
}, []);
|
|
|
|
if (false) {}
|
|
|
|
return {
|
|
isFocusVisible: isFocusVisible,
|
|
onBlurVisible: handleBlurVisible,
|
|
ref: ref
|
|
};
|
|
}
|
|
;// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js
|
|
function _arrayLikeToArray(arr, len) {
|
|
if (len == null || len > arr.length) len = arr.length;
|
|
|
|
for (var i = 0, arr2 = new Array(len); i < len; i++) {
|
|
arr2[i] = arr[i];
|
|
}
|
|
|
|
return arr2;
|
|
}
|
|
;// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js
|
|
|
|
function _arrayWithoutHoles(arr) {
|
|
if (Array.isArray(arr)) return _arrayLikeToArray(arr);
|
|
}
|
|
;// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArray.js
|
|
function _iterableToArray(iter) {
|
|
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
}
|
|
;// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js
|
|
|
|
function _unsupportedIterableToArray(o, minLen) {
|
|
if (!o) return;
|
|
if (typeof o === "string") return _arrayLikeToArray(o, minLen);
|
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
if (n === "Map" || n === "Set") return Array.from(o);
|
|
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
|
|
}
|
|
;// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js
|
|
function _nonIterableSpread() {
|
|
throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
}
|
|
;// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js
|
|
|
|
|
|
|
|
|
|
function _toConsumableArray(arr) {
|
|
return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
|
|
}
|
|
// EXTERNAL MODULE: external "react-transition-group"
|
|
var external_react_transition_group_ = __webpack_require__(810);
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/ButtonBase/Ripple.js
|
|
|
|
|
|
|
|
|
|
var Ripple_useEnhancedEffect = typeof window === 'undefined' ? external_react_.useEffect : external_react_.useLayoutEffect;
|
|
/**
|
|
* @ignore - internal component.
|
|
*/
|
|
|
|
function Ripple(props) {
|
|
var classes = props.classes,
|
|
_props$pulsate = props.pulsate,
|
|
pulsate = _props$pulsate === void 0 ? false : _props$pulsate,
|
|
rippleX = props.rippleX,
|
|
rippleY = props.rippleY,
|
|
rippleSize = props.rippleSize,
|
|
inProp = props.in,
|
|
_props$onExited = props.onExited,
|
|
onExited = _props$onExited === void 0 ? function () {} : _props$onExited,
|
|
timeout = props.timeout;
|
|
|
|
var _React$useState = external_react_.useState(false),
|
|
leaving = _React$useState[0],
|
|
setLeaving = _React$useState[1];
|
|
|
|
var rippleClassName = external_clsx_default()(classes.ripple, classes.rippleVisible, pulsate && classes.ripplePulsate);
|
|
var rippleStyles = {
|
|
width: rippleSize,
|
|
height: rippleSize,
|
|
top: -(rippleSize / 2) + rippleY,
|
|
left: -(rippleSize / 2) + rippleX
|
|
};
|
|
var childClassName = external_clsx_default()(classes.child, leaving && classes.childLeaving, pulsate && classes.childPulsate);
|
|
var handleExited = useEventCallback(onExited); // Ripple is used for user feedback (e.g. click or press) so we want to apply styles with the highest priority
|
|
|
|
Ripple_useEnhancedEffect(function () {
|
|
if (!inProp) {
|
|
// react-transition-group#onExit
|
|
setLeaving(true); // react-transition-group#onExited
|
|
|
|
var timeoutId = setTimeout(handleExited, timeout);
|
|
return function () {
|
|
clearTimeout(timeoutId);
|
|
};
|
|
}
|
|
|
|
return undefined;
|
|
}, [handleExited, inProp, timeout]);
|
|
return /*#__PURE__*/external_react_.createElement("span", {
|
|
className: rippleClassName,
|
|
style: rippleStyles
|
|
}, /*#__PURE__*/external_react_.createElement("span", {
|
|
className: childClassName
|
|
}));
|
|
}
|
|
|
|
false ? 0 : void 0;
|
|
/* harmony default export */ var ButtonBase_Ripple = (Ripple);
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/ButtonBase/TouchRipple.js
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var DURATION = 550;
|
|
var DELAY_RIPPLE = 80;
|
|
var styles = function styles(theme) {
|
|
return {
|
|
/* Styles applied to the root element. */
|
|
root: {
|
|
overflow: 'hidden',
|
|
pointerEvents: 'none',
|
|
position: 'absolute',
|
|
zIndex: 0,
|
|
top: 0,
|
|
right: 0,
|
|
bottom: 0,
|
|
left: 0,
|
|
borderRadius: 'inherit'
|
|
},
|
|
|
|
/* Styles applied to the internal `Ripple` components `ripple` class. */
|
|
ripple: {
|
|
opacity: 0,
|
|
position: 'absolute'
|
|
},
|
|
|
|
/* Styles applied to the internal `Ripple` components `rippleVisible` class. */
|
|
rippleVisible: {
|
|
opacity: 0.3,
|
|
transform: 'scale(1)',
|
|
animation: "$enter ".concat(DURATION, "ms ").concat(theme.transitions.easing.easeInOut)
|
|
},
|
|
|
|
/* Styles applied to the internal `Ripple` components `ripplePulsate` class. */
|
|
ripplePulsate: {
|
|
animationDuration: "".concat(theme.transitions.duration.shorter, "ms")
|
|
},
|
|
|
|
/* Styles applied to the internal `Ripple` components `child` class. */
|
|
child: {
|
|
opacity: 1,
|
|
display: 'block',
|
|
width: '100%',
|
|
height: '100%',
|
|
borderRadius: '50%',
|
|
backgroundColor: 'currentColor'
|
|
},
|
|
|
|
/* Styles applied to the internal `Ripple` components `childLeaving` class. */
|
|
childLeaving: {
|
|
opacity: 0,
|
|
animation: "$exit ".concat(DURATION, "ms ").concat(theme.transitions.easing.easeInOut)
|
|
},
|
|
|
|
/* Styles applied to the internal `Ripple` components `childPulsate` class. */
|
|
childPulsate: {
|
|
position: 'absolute',
|
|
left: 0,
|
|
top: 0,
|
|
animation: "$pulsate 2500ms ".concat(theme.transitions.easing.easeInOut, " 200ms infinite")
|
|
},
|
|
'@keyframes enter': {
|
|
'0%': {
|
|
transform: 'scale(0)',
|
|
opacity: 0.1
|
|
},
|
|
'100%': {
|
|
transform: 'scale(1)',
|
|
opacity: 0.3
|
|
}
|
|
},
|
|
'@keyframes exit': {
|
|
'0%': {
|
|
opacity: 1
|
|
},
|
|
'100%': {
|
|
opacity: 0
|
|
}
|
|
},
|
|
'@keyframes pulsate': {
|
|
'0%': {
|
|
transform: 'scale(1)'
|
|
},
|
|
'50%': {
|
|
transform: 'scale(0.92)'
|
|
},
|
|
'100%': {
|
|
transform: 'scale(1)'
|
|
}
|
|
}
|
|
};
|
|
};
|
|
/**
|
|
* @ignore - internal component.
|
|
*
|
|
* TODO v5: Make private
|
|
*/
|
|
|
|
var TouchRipple = /*#__PURE__*/external_react_.forwardRef(function TouchRipple(props, ref) {
|
|
var _props$center = props.center,
|
|
centerProp = _props$center === void 0 ? false : _props$center,
|
|
classes = props.classes,
|
|
className = props.className,
|
|
other = (0,objectWithoutProperties/* default */.Z)(props, ["center", "classes", "className"]);
|
|
|
|
var _React$useState = external_react_.useState([]),
|
|
ripples = _React$useState[0],
|
|
setRipples = _React$useState[1];
|
|
|
|
var nextKey = external_react_.useRef(0);
|
|
var rippleCallback = external_react_.useRef(null);
|
|
external_react_.useEffect(function () {
|
|
if (rippleCallback.current) {
|
|
rippleCallback.current();
|
|
rippleCallback.current = null;
|
|
}
|
|
}, [ripples]); // Used to filter out mouse emulated events on mobile.
|
|
|
|
var ignoringMouseDown = external_react_.useRef(false); // We use a timer in order to only show the ripples for touch "click" like events.
|
|
// We don't want to display the ripple for touch scroll events.
|
|
|
|
var startTimer = external_react_.useRef(null); // This is the hook called once the previous timeout is ready.
|
|
|
|
var startTimerCommit = external_react_.useRef(null);
|
|
var container = external_react_.useRef(null);
|
|
external_react_.useEffect(function () {
|
|
return function () {
|
|
clearTimeout(startTimer.current);
|
|
};
|
|
}, []);
|
|
var startCommit = external_react_.useCallback(function (params) {
|
|
var pulsate = params.pulsate,
|
|
rippleX = params.rippleX,
|
|
rippleY = params.rippleY,
|
|
rippleSize = params.rippleSize,
|
|
cb = params.cb;
|
|
setRipples(function (oldRipples) {
|
|
return [].concat(_toConsumableArray(oldRipples), [/*#__PURE__*/external_react_.createElement(ButtonBase_Ripple, {
|
|
key: nextKey.current,
|
|
classes: classes,
|
|
timeout: DURATION,
|
|
pulsate: pulsate,
|
|
rippleX: rippleX,
|
|
rippleY: rippleY,
|
|
rippleSize: rippleSize
|
|
})]);
|
|
});
|
|
nextKey.current += 1;
|
|
rippleCallback.current = cb;
|
|
}, [classes]);
|
|
var start = external_react_.useCallback(function () {
|
|
var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
var cb = arguments.length > 2 ? arguments[2] : undefined;
|
|
var _options$pulsate = options.pulsate,
|
|
pulsate = _options$pulsate === void 0 ? false : _options$pulsate,
|
|
_options$center = options.center,
|
|
center = _options$center === void 0 ? centerProp || options.pulsate : _options$center,
|
|
_options$fakeElement = options.fakeElement,
|
|
fakeElement = _options$fakeElement === void 0 ? false : _options$fakeElement;
|
|
|
|
if (event.type === 'mousedown' && ignoringMouseDown.current) {
|
|
ignoringMouseDown.current = false;
|
|
return;
|
|
}
|
|
|
|
if (event.type === 'touchstart') {
|
|
ignoringMouseDown.current = true;
|
|
}
|
|
|
|
var element = fakeElement ? null : container.current;
|
|
var rect = element ? element.getBoundingClientRect() : {
|
|
width: 0,
|
|
height: 0,
|
|
left: 0,
|
|
top: 0
|
|
}; // Get the size of the ripple
|
|
|
|
var rippleX;
|
|
var rippleY;
|
|
var rippleSize;
|
|
|
|
if (center || event.clientX === 0 && event.clientY === 0 || !event.clientX && !event.touches) {
|
|
rippleX = Math.round(rect.width / 2);
|
|
rippleY = Math.round(rect.height / 2);
|
|
} else {
|
|
var _ref = event.touches ? event.touches[0] : event,
|
|
clientX = _ref.clientX,
|
|
clientY = _ref.clientY;
|
|
|
|
rippleX = Math.round(clientX - rect.left);
|
|
rippleY = Math.round(clientY - rect.top);
|
|
}
|
|
|
|
if (center) {
|
|
rippleSize = Math.sqrt((2 * Math.pow(rect.width, 2) + Math.pow(rect.height, 2)) / 3); // For some reason the animation is broken on Mobile Chrome if the size if even.
|
|
|
|
if (rippleSize % 2 === 0) {
|
|
rippleSize += 1;
|
|
}
|
|
} else {
|
|
var sizeX = Math.max(Math.abs((element ? element.clientWidth : 0) - rippleX), rippleX) * 2 + 2;
|
|
var sizeY = Math.max(Math.abs((element ? element.clientHeight : 0) - rippleY), rippleY) * 2 + 2;
|
|
rippleSize = Math.sqrt(Math.pow(sizeX, 2) + Math.pow(sizeY, 2));
|
|
} // Touche devices
|
|
|
|
|
|
if (event.touches) {
|
|
// check that this isn't another touchstart due to multitouch
|
|
// otherwise we will only clear a single timer when unmounting while two
|
|
// are running
|
|
if (startTimerCommit.current === null) {
|
|
// Prepare the ripple effect.
|
|
startTimerCommit.current = function () {
|
|
startCommit({
|
|
pulsate: pulsate,
|
|
rippleX: rippleX,
|
|
rippleY: rippleY,
|
|
rippleSize: rippleSize,
|
|
cb: cb
|
|
});
|
|
}; // Delay the execution of the ripple effect.
|
|
|
|
|
|
startTimer.current = setTimeout(function () {
|
|
if (startTimerCommit.current) {
|
|
startTimerCommit.current();
|
|
startTimerCommit.current = null;
|
|
}
|
|
}, DELAY_RIPPLE); // We have to make a tradeoff with this value.
|
|
}
|
|
} else {
|
|
startCommit({
|
|
pulsate: pulsate,
|
|
rippleX: rippleX,
|
|
rippleY: rippleY,
|
|
rippleSize: rippleSize,
|
|
cb: cb
|
|
});
|
|
}
|
|
}, [centerProp, startCommit]);
|
|
var pulsate = external_react_.useCallback(function () {
|
|
start({}, {
|
|
pulsate: true
|
|
});
|
|
}, [start]);
|
|
var stop = external_react_.useCallback(function (event, cb) {
|
|
clearTimeout(startTimer.current); // The touch interaction occurs too quickly.
|
|
// We still want to show ripple effect.
|
|
|
|
if (event.type === 'touchend' && startTimerCommit.current) {
|
|
event.persist();
|
|
startTimerCommit.current();
|
|
startTimerCommit.current = null;
|
|
startTimer.current = setTimeout(function () {
|
|
stop(event, cb);
|
|
});
|
|
return;
|
|
}
|
|
|
|
startTimerCommit.current = null;
|
|
setRipples(function (oldRipples) {
|
|
if (oldRipples.length > 0) {
|
|
return oldRipples.slice(1);
|
|
}
|
|
|
|
return oldRipples;
|
|
});
|
|
rippleCallback.current = cb;
|
|
}, []);
|
|
external_react_.useImperativeHandle(ref, function () {
|
|
return {
|
|
pulsate: pulsate,
|
|
start: start,
|
|
stop: stop
|
|
};
|
|
}, [pulsate, start, stop]);
|
|
return /*#__PURE__*/external_react_.createElement("span", (0,esm_extends/* default */.Z)({
|
|
className: external_clsx_default()(classes.root, className),
|
|
ref: container
|
|
}, other), /*#__PURE__*/external_react_.createElement(external_react_transition_group_.TransitionGroup, {
|
|
component: null,
|
|
exit: true
|
|
}, ripples));
|
|
});
|
|
false ? 0 : void 0;
|
|
/* harmony default export */ var ButtonBase_TouchRipple = ((0,withStyles/* default */.Z)(styles, {
|
|
flip: false,
|
|
name: 'MuiTouchRipple'
|
|
})( /*#__PURE__*/external_react_.memo(TouchRipple)));
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/ButtonBase/ButtonBase.js
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var ButtonBase_styles = {
|
|
/* Styles applied to the root element. */
|
|
root: {
|
|
display: 'inline-flex',
|
|
alignItems: 'center',
|
|
justifyContent: 'center',
|
|
position: 'relative',
|
|
WebkitTapHighlightColor: 'transparent',
|
|
backgroundColor: 'transparent',
|
|
// Reset default value
|
|
// We disable the focus ring for mouse, touch and keyboard users.
|
|
outline: 0,
|
|
border: 0,
|
|
margin: 0,
|
|
// Remove the margin in Safari
|
|
borderRadius: 0,
|
|
padding: 0,
|
|
// Remove the padding in Firefox
|
|
cursor: 'pointer',
|
|
userSelect: 'none',
|
|
verticalAlign: 'middle',
|
|
'-moz-appearance': 'none',
|
|
// Reset
|
|
'-webkit-appearance': 'none',
|
|
// Reset
|
|
textDecoration: 'none',
|
|
// So we take precedent over the style of a native <a /> element.
|
|
color: 'inherit',
|
|
'&::-moz-focus-inner': {
|
|
borderStyle: 'none' // Remove Firefox dotted outline.
|
|
|
|
},
|
|
'&$disabled': {
|
|
pointerEvents: 'none',
|
|
// Disable link interactions
|
|
cursor: 'default'
|
|
},
|
|
'@media print': {
|
|
colorAdjust: 'exact'
|
|
}
|
|
},
|
|
|
|
/* Pseudo-class applied to the root element if `disabled={true}`. */
|
|
disabled: {},
|
|
|
|
/* Pseudo-class applied to the root element if keyboard focused. */
|
|
focusVisible: {}
|
|
};
|
|
/**
|
|
* `ButtonBase` contains as few styles as possible.
|
|
* It aims to be a simple building block for creating a button.
|
|
* It contains a load of style reset and some focus/ripple logic.
|
|
*/
|
|
|
|
var ButtonBase = /*#__PURE__*/external_react_.forwardRef(function ButtonBase(props, ref) {
|
|
var action = props.action,
|
|
buttonRefProp = props.buttonRef,
|
|
_props$centerRipple = props.centerRipple,
|
|
centerRipple = _props$centerRipple === void 0 ? false : _props$centerRipple,
|
|
children = props.children,
|
|
classes = props.classes,
|
|
className = props.className,
|
|
_props$component = props.component,
|
|
component = _props$component === void 0 ? 'button' : _props$component,
|
|
_props$disabled = props.disabled,
|
|
disabled = _props$disabled === void 0 ? false : _props$disabled,
|
|
_props$disableRipple = props.disableRipple,
|
|
disableRipple = _props$disableRipple === void 0 ? false : _props$disableRipple,
|
|
_props$disableTouchRi = props.disableTouchRipple,
|
|
disableTouchRipple = _props$disableTouchRi === void 0 ? false : _props$disableTouchRi,
|
|
_props$focusRipple = props.focusRipple,
|
|
focusRipple = _props$focusRipple === void 0 ? false : _props$focusRipple,
|
|
focusVisibleClassName = props.focusVisibleClassName,
|
|
onBlur = props.onBlur,
|
|
onClick = props.onClick,
|
|
onFocus = props.onFocus,
|
|
onFocusVisible = props.onFocusVisible,
|
|
onKeyDown = props.onKeyDown,
|
|
onKeyUp = props.onKeyUp,
|
|
onMouseDown = props.onMouseDown,
|
|
onMouseLeave = props.onMouseLeave,
|
|
onMouseUp = props.onMouseUp,
|
|
onTouchEnd = props.onTouchEnd,
|
|
onTouchMove = props.onTouchMove,
|
|
onTouchStart = props.onTouchStart,
|
|
onDragLeave = props.onDragLeave,
|
|
_props$tabIndex = props.tabIndex,
|
|
tabIndex = _props$tabIndex === void 0 ? 0 : _props$tabIndex,
|
|
TouchRippleProps = props.TouchRippleProps,
|
|
_props$type = props.type,
|
|
type = _props$type === void 0 ? 'button' : _props$type,
|
|
other = (0,objectWithoutProperties/* default */.Z)(props, ["action", "buttonRef", "centerRipple", "children", "classes", "className", "component", "disabled", "disableRipple", "disableTouchRipple", "focusRipple", "focusVisibleClassName", "onBlur", "onClick", "onFocus", "onFocusVisible", "onKeyDown", "onKeyUp", "onMouseDown", "onMouseLeave", "onMouseUp", "onTouchEnd", "onTouchMove", "onTouchStart", "onDragLeave", "tabIndex", "TouchRippleProps", "type"]);
|
|
|
|
var buttonRef = external_react_.useRef(null);
|
|
|
|
function getButtonNode() {
|
|
// #StrictMode ready
|
|
return external_react_dom_.findDOMNode(buttonRef.current);
|
|
}
|
|
|
|
var rippleRef = external_react_.useRef(null);
|
|
|
|
var _React$useState = external_react_.useState(false),
|
|
focusVisible = _React$useState[0],
|
|
setFocusVisible = _React$useState[1];
|
|
|
|
if (disabled && focusVisible) {
|
|
setFocusVisible(false);
|
|
}
|
|
|
|
var _useIsFocusVisible = useIsFocusVisible(),
|
|
isFocusVisible = _useIsFocusVisible.isFocusVisible,
|
|
onBlurVisible = _useIsFocusVisible.onBlurVisible,
|
|
focusVisibleRef = _useIsFocusVisible.ref;
|
|
|
|
external_react_.useImperativeHandle(action, function () {
|
|
return {
|
|
focusVisible: function focusVisible() {
|
|
setFocusVisible(true);
|
|
buttonRef.current.focus();
|
|
}
|
|
};
|
|
}, []);
|
|
external_react_.useEffect(function () {
|
|
if (focusVisible && focusRipple && !disableRipple) {
|
|
rippleRef.current.pulsate();
|
|
}
|
|
}, [disableRipple, focusRipple, focusVisible]);
|
|
|
|
function useRippleHandler(rippleAction, eventCallback) {
|
|
var skipRippleAction = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : disableTouchRipple;
|
|
return useEventCallback(function (event) {
|
|
if (eventCallback) {
|
|
eventCallback(event);
|
|
}
|
|
|
|
var ignore = skipRippleAction;
|
|
|
|
if (!ignore && rippleRef.current) {
|
|
rippleRef.current[rippleAction](event);
|
|
}
|
|
|
|
return true;
|
|
});
|
|
}
|
|
|
|
var handleMouseDown = useRippleHandler('start', onMouseDown);
|
|
var handleDragLeave = useRippleHandler('stop', onDragLeave);
|
|
var handleMouseUp = useRippleHandler('stop', onMouseUp);
|
|
var handleMouseLeave = useRippleHandler('stop', function (event) {
|
|
if (focusVisible) {
|
|
event.preventDefault();
|
|
}
|
|
|
|
if (onMouseLeave) {
|
|
onMouseLeave(event);
|
|
}
|
|
});
|
|
var handleTouchStart = useRippleHandler('start', onTouchStart);
|
|
var handleTouchEnd = useRippleHandler('stop', onTouchEnd);
|
|
var handleTouchMove = useRippleHandler('stop', onTouchMove);
|
|
var handleBlur = useRippleHandler('stop', function (event) {
|
|
if (focusVisible) {
|
|
onBlurVisible(event);
|
|
setFocusVisible(false);
|
|
}
|
|
|
|
if (onBlur) {
|
|
onBlur(event);
|
|
}
|
|
}, false);
|
|
var handleFocus = useEventCallback(function (event) {
|
|
// Fix for https://github.com/facebook/react/issues/7769
|
|
if (!buttonRef.current) {
|
|
buttonRef.current = event.currentTarget;
|
|
}
|
|
|
|
if (isFocusVisible(event)) {
|
|
setFocusVisible(true);
|
|
|
|
if (onFocusVisible) {
|
|
onFocusVisible(event);
|
|
}
|
|
}
|
|
|
|
if (onFocus) {
|
|
onFocus(event);
|
|
}
|
|
});
|
|
|
|
var isNonNativeButton = function isNonNativeButton() {
|
|
var button = getButtonNode();
|
|
return component && component !== 'button' && !(button.tagName === 'A' && button.href);
|
|
};
|
|
/**
|
|
* IE 11 shim for https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/repeat
|
|
*/
|
|
|
|
|
|
var keydownRef = external_react_.useRef(false);
|
|
var handleKeyDown = useEventCallback(function (event) {
|
|
// Check if key is already down to avoid repeats being counted as multiple activations
|
|
if (focusRipple && !keydownRef.current && focusVisible && rippleRef.current && event.key === ' ') {
|
|
keydownRef.current = true;
|
|
event.persist();
|
|
rippleRef.current.stop(event, function () {
|
|
rippleRef.current.start(event);
|
|
});
|
|
}
|
|
|
|
if (event.target === event.currentTarget && isNonNativeButton() && event.key === ' ') {
|
|
event.preventDefault();
|
|
}
|
|
|
|
if (onKeyDown) {
|
|
onKeyDown(event);
|
|
} // Keyboard accessibility for non interactive elements
|
|
|
|
|
|
if (event.target === event.currentTarget && isNonNativeButton() && event.key === 'Enter' && !disabled) {
|
|
event.preventDefault();
|
|
|
|
if (onClick) {
|
|
onClick(event);
|
|
}
|
|
}
|
|
});
|
|
var handleKeyUp = useEventCallback(function (event) {
|
|
// calling preventDefault in keyUp on a <button> will not dispatch a click event if Space is pressed
|
|
// https://codesandbox.io/s/button-keyup-preventdefault-dn7f0
|
|
if (focusRipple && event.key === ' ' && rippleRef.current && focusVisible && !event.defaultPrevented) {
|
|
keydownRef.current = false;
|
|
event.persist();
|
|
rippleRef.current.stop(event, function () {
|
|
rippleRef.current.pulsate(event);
|
|
});
|
|
}
|
|
|
|
if (onKeyUp) {
|
|
onKeyUp(event);
|
|
} // Keyboard accessibility for non interactive elements
|
|
|
|
|
|
if (onClick && event.target === event.currentTarget && isNonNativeButton() && event.key === ' ' && !event.defaultPrevented) {
|
|
onClick(event);
|
|
}
|
|
});
|
|
var ComponentProp = component;
|
|
|
|
if (ComponentProp === 'button' && other.href) {
|
|
ComponentProp = 'a';
|
|
}
|
|
|
|
var buttonProps = {};
|
|
|
|
if (ComponentProp === 'button') {
|
|
buttonProps.type = type;
|
|
buttonProps.disabled = disabled;
|
|
} else {
|
|
if (ComponentProp !== 'a' || !other.href) {
|
|
buttonProps.role = 'button';
|
|
}
|
|
|
|
buttonProps['aria-disabled'] = disabled;
|
|
}
|
|
|
|
var handleUserRef = useForkRef(buttonRefProp, ref);
|
|
var handleOwnRef = useForkRef(focusVisibleRef, buttonRef);
|
|
var handleRef = useForkRef(handleUserRef, handleOwnRef);
|
|
|
|
var _React$useState2 = external_react_.useState(false),
|
|
mountedState = _React$useState2[0],
|
|
setMountedState = _React$useState2[1];
|
|
|
|
external_react_.useEffect(function () {
|
|
setMountedState(true);
|
|
}, []);
|
|
var enableTouchRipple = mountedState && !disableRipple && !disabled;
|
|
|
|
if (false) {}
|
|
|
|
return /*#__PURE__*/external_react_.createElement(ComponentProp, (0,esm_extends/* default */.Z)({
|
|
className: external_clsx_default()(classes.root, className, focusVisible && [classes.focusVisible, focusVisibleClassName], disabled && classes.disabled),
|
|
onBlur: handleBlur,
|
|
onClick: onClick,
|
|
onFocus: handleFocus,
|
|
onKeyDown: handleKeyDown,
|
|
onKeyUp: handleKeyUp,
|
|
onMouseDown: handleMouseDown,
|
|
onMouseLeave: handleMouseLeave,
|
|
onMouseUp: handleMouseUp,
|
|
onDragLeave: handleDragLeave,
|
|
onTouchEnd: handleTouchEnd,
|
|
onTouchMove: handleTouchMove,
|
|
onTouchStart: handleTouchStart,
|
|
ref: handleRef,
|
|
tabIndex: disabled ? -1 : tabIndex
|
|
}, buttonProps, other), children, enableTouchRipple ?
|
|
/*#__PURE__*/
|
|
|
|
/* TouchRipple is only needed client-side, x2 boost on the server. */
|
|
external_react_.createElement(ButtonBase_TouchRipple, (0,esm_extends/* default */.Z)({
|
|
ref: rippleRef,
|
|
center: centerRipple
|
|
}, TouchRippleProps)) : null);
|
|
});
|
|
false ? 0 : void 0;
|
|
/* harmony default export */ var ButtonBase_ButtonBase = ((0,withStyles/* default */.Z)(ButtonBase_styles, {
|
|
name: 'MuiButtonBase'
|
|
})(ButtonBase));
|
|
|
|
/***/ }),
|
|
|
|
/***/ 895:
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
"use strict";
|
|
/* unused harmony export styles */
|
|
/* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(375);
|
|
/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(122);
|
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(297);
|
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(229);
|
|
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);
|
|
/* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(536);
|
|
/* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(clsx__WEBPACK_IMPORTED_MODULE_2__);
|
|
/* harmony import */ var _material_ui_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(958);
|
|
/* harmony import */ var _material_ui_utils__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_material_ui_utils__WEBPACK_IMPORTED_MODULE_3__);
|
|
/* harmony import */ var _styles_withStyles__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(543);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var styles = function styles(theme) {
|
|
var elevations = {};
|
|
theme.shadows.forEach(function (shadow, index) {
|
|
elevations["elevation".concat(index)] = {
|
|
boxShadow: shadow
|
|
};
|
|
});
|
|
return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_4__/* .default */ .Z)({
|
|
/* Styles applied to the root element. */
|
|
root: {
|
|
backgroundColor: theme.palette.background.paper,
|
|
color: theme.palette.text.primary,
|
|
transition: theme.transitions.create('box-shadow')
|
|
},
|
|
|
|
/* Styles applied to the root element if `square={false}`. */
|
|
rounded: {
|
|
borderRadius: theme.shape.borderRadius
|
|
},
|
|
|
|
/* Styles applied to the root element if `variant="outlined"`. */
|
|
outlined: {
|
|
border: "1px solid ".concat(theme.palette.divider)
|
|
}
|
|
}, elevations);
|
|
};
|
|
var Paper = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.forwardRef(function Paper(props, ref) {
|
|
var classes = props.classes,
|
|
className = props.className,
|
|
_props$component = props.component,
|
|
Component = _props$component === void 0 ? 'div' : _props$component,
|
|
_props$square = props.square,
|
|
square = _props$square === void 0 ? false : _props$square,
|
|
_props$elevation = props.elevation,
|
|
elevation = _props$elevation === void 0 ? 1 : _props$elevation,
|
|
_props$variant = props.variant,
|
|
variant = _props$variant === void 0 ? 'elevation' : _props$variant,
|
|
other = (0,_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_5__/* .default */ .Z)(props, ["classes", "className", "component", "square", "elevation", "variant"]);
|
|
|
|
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(Component, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_4__/* .default */ .Z)({
|
|
className: clsx__WEBPACK_IMPORTED_MODULE_2___default()(classes.root, className, variant === 'outlined' ? classes.outlined : classes["elevation".concat(elevation)], !square && classes.rounded),
|
|
ref: ref
|
|
}, other));
|
|
});
|
|
false ? 0 : void 0;
|
|
/* harmony default export */ __webpack_exports__["Z"] = ((0,_styles_withStyles__WEBPACK_IMPORTED_MODULE_6__/* .default */ .Z)(styles, {
|
|
name: 'MuiPaper'
|
|
})(Paper));
|
|
|
|
/***/ }),
|
|
|
|
/***/ 318:
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
"use strict";
|
|
/* unused harmony export styles */
|
|
/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(122);
|
|
/* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(375);
|
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(297);
|
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(229);
|
|
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);
|
|
/* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(536);
|
|
/* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(clsx__WEBPACK_IMPORTED_MODULE_2__);
|
|
/* harmony import */ var _styles_withStyles__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(543);
|
|
/* harmony import */ var _utils_capitalize__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(871);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var styles = function styles(theme) {
|
|
return {
|
|
/* Styles applied to the root element. */
|
|
root: {
|
|
margin: 0
|
|
},
|
|
|
|
/* Styles applied to the root element if `variant="body2"`. */
|
|
body2: theme.typography.body2,
|
|
|
|
/* Styles applied to the root element if `variant="body1"`. */
|
|
body1: theme.typography.body1,
|
|
|
|
/* Styles applied to the root element if `variant="caption"`. */
|
|
caption: theme.typography.caption,
|
|
|
|
/* Styles applied to the root element if `variant="button"`. */
|
|
button: theme.typography.button,
|
|
|
|
/* Styles applied to the root element if `variant="h1"`. */
|
|
h1: theme.typography.h1,
|
|
|
|
/* Styles applied to the root element if `variant="h2"`. */
|
|
h2: theme.typography.h2,
|
|
|
|
/* Styles applied to the root element if `variant="h3"`. */
|
|
h3: theme.typography.h3,
|
|
|
|
/* Styles applied to the root element if `variant="h4"`. */
|
|
h4: theme.typography.h4,
|
|
|
|
/* Styles applied to the root element if `variant="h5"`. */
|
|
h5: theme.typography.h5,
|
|
|
|
/* Styles applied to the root element if `variant="h6"`. */
|
|
h6: theme.typography.h6,
|
|
|
|
/* Styles applied to the root element if `variant="subtitle1"`. */
|
|
subtitle1: theme.typography.subtitle1,
|
|
|
|
/* Styles applied to the root element if `variant="subtitle2"`. */
|
|
subtitle2: theme.typography.subtitle2,
|
|
|
|
/* Styles applied to the root element if `variant="overline"`. */
|
|
overline: theme.typography.overline,
|
|
|
|
/* Styles applied to the root element if `variant="srOnly"`. Only accessible to screen readers. */
|
|
srOnly: {
|
|
position: 'absolute',
|
|
height: 1,
|
|
width: 1,
|
|
overflow: 'hidden'
|
|
},
|
|
|
|
/* Styles applied to the root element if `align="left"`. */
|
|
alignLeft: {
|
|
textAlign: 'left'
|
|
},
|
|
|
|
/* Styles applied to the root element if `align="center"`. */
|
|
alignCenter: {
|
|
textAlign: 'center'
|
|
},
|
|
|
|
/* Styles applied to the root element if `align="right"`. */
|
|
alignRight: {
|
|
textAlign: 'right'
|
|
},
|
|
|
|
/* Styles applied to the root element if `align="justify"`. */
|
|
alignJustify: {
|
|
textAlign: 'justify'
|
|
},
|
|
|
|
/* Styles applied to the root element if `nowrap={true}`. */
|
|
noWrap: {
|
|
overflow: 'hidden',
|
|
textOverflow: 'ellipsis',
|
|
whiteSpace: 'nowrap'
|
|
},
|
|
|
|
/* Styles applied to the root element if `gutterBottom={true}`. */
|
|
gutterBottom: {
|
|
marginBottom: '0.35em'
|
|
},
|
|
|
|
/* Styles applied to the root element if `paragraph={true}`. */
|
|
paragraph: {
|
|
marginBottom: 16
|
|
},
|
|
|
|
/* Styles applied to the root element if `color="inherit"`. */
|
|
colorInherit: {
|
|
color: 'inherit'
|
|
},
|
|
|
|
/* Styles applied to the root element if `color="primary"`. */
|
|
colorPrimary: {
|
|
color: theme.palette.primary.main
|
|
},
|
|
|
|
/* Styles applied to the root element if `color="secondary"`. */
|
|
colorSecondary: {
|
|
color: theme.palette.secondary.main
|
|
},
|
|
|
|
/* Styles applied to the root element if `color="textPrimary"`. */
|
|
colorTextPrimary: {
|
|
color: theme.palette.text.primary
|
|
},
|
|
|
|
/* Styles applied to the root element if `color="textSecondary"`. */
|
|
colorTextSecondary: {
|
|
color: theme.palette.text.secondary
|
|
},
|
|
|
|
/* Styles applied to the root element if `color="error"`. */
|
|
colorError: {
|
|
color: theme.palette.error.main
|
|
},
|
|
|
|
/* Styles applied to the root element if `display="inline"`. */
|
|
displayInline: {
|
|
display: 'inline'
|
|
},
|
|
|
|
/* Styles applied to the root element if `display="block"`. */
|
|
displayBlock: {
|
|
display: 'block'
|
|
}
|
|
};
|
|
};
|
|
var defaultVariantMapping = {
|
|
h1: 'h1',
|
|
h2: 'h2',
|
|
h3: 'h3',
|
|
h4: 'h4',
|
|
h5: 'h5',
|
|
h6: 'h6',
|
|
subtitle1: 'h6',
|
|
subtitle2: 'h6',
|
|
body1: 'p',
|
|
body2: 'p'
|
|
};
|
|
var Typography = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.forwardRef(function Typography(props, ref) {
|
|
var _props$align = props.align,
|
|
align = _props$align === void 0 ? 'inherit' : _props$align,
|
|
classes = props.classes,
|
|
className = props.className,
|
|
_props$color = props.color,
|
|
color = _props$color === void 0 ? 'initial' : _props$color,
|
|
component = props.component,
|
|
_props$display = props.display,
|
|
display = _props$display === void 0 ? 'initial' : _props$display,
|
|
_props$gutterBottom = props.gutterBottom,
|
|
gutterBottom = _props$gutterBottom === void 0 ? false : _props$gutterBottom,
|
|
_props$noWrap = props.noWrap,
|
|
noWrap = _props$noWrap === void 0 ? false : _props$noWrap,
|
|
_props$paragraph = props.paragraph,
|
|
paragraph = _props$paragraph === void 0 ? false : _props$paragraph,
|
|
_props$variant = props.variant,
|
|
variant = _props$variant === void 0 ? 'body1' : _props$variant,
|
|
_props$variantMapping = props.variantMapping,
|
|
variantMapping = _props$variantMapping === void 0 ? defaultVariantMapping : _props$variantMapping,
|
|
other = (0,_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_3__/* .default */ .Z)(props, ["align", "classes", "className", "color", "component", "display", "gutterBottom", "noWrap", "paragraph", "variant", "variantMapping"]);
|
|
|
|
var Component = component || (paragraph ? 'p' : variantMapping[variant] || defaultVariantMapping[variant]) || 'span';
|
|
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(Component, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_4__/* .default */ .Z)({
|
|
className: clsx__WEBPACK_IMPORTED_MODULE_2___default()(classes.root, className, variant !== 'inherit' && classes[variant], color !== 'initial' && classes["color".concat((0,_utils_capitalize__WEBPACK_IMPORTED_MODULE_5__/* .default */ .Z)(color))], noWrap && classes.noWrap, gutterBottom && classes.gutterBottom, paragraph && classes.paragraph, align !== 'inherit' && classes["align".concat((0,_utils_capitalize__WEBPACK_IMPORTED_MODULE_5__/* .default */ .Z)(align))], display !== 'initial' && classes["display".concat((0,_utils_capitalize__WEBPACK_IMPORTED_MODULE_5__/* .default */ .Z)(display))]),
|
|
ref: ref
|
|
}, other));
|
|
});
|
|
false ? 0 : void 0;
|
|
/* harmony default export */ __webpack_exports__["Z"] = ((0,_styles_withStyles__WEBPACK_IMPORTED_MODULE_6__/* .default */ .Z)(styles, {
|
|
name: 'MuiTypography'
|
|
})(Typography));
|
|
|
|
/***/ }),
|
|
|
|
/***/ 693:
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
"use strict";
|
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
/* harmony export */ "mi": function() { return /* binding */ getContrastRatio; },
|
|
/* harmony export */ "U1": function() { return /* binding */ fade; },
|
|
/* harmony export */ "_j": function() { return /* binding */ darken; },
|
|
/* harmony export */ "$n": function() { return /* binding */ lighten; }
|
|
/* harmony export */ });
|
|
/* unused harmony exports hexToRgb, rgbToHex, hslToRgb, decomposeColor, recomposeColor, getLuminance, emphasize */
|
|
/* harmony import */ var _material_ui_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(958);
|
|
/* harmony import */ var _material_ui_utils__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_material_ui_utils__WEBPACK_IMPORTED_MODULE_0__);
|
|
|
|
|
|
/* eslint-disable no-use-before-define */
|
|
|
|
/**
|
|
* Returns a number whose value is limited to the given range.
|
|
*
|
|
* @param {number} value The value to be clamped
|
|
* @param {number} min The lower boundary of the output range
|
|
* @param {number} max The upper boundary of the output range
|
|
* @returns {number} A number in the range [min, max]
|
|
*/
|
|
function clamp(value) {
|
|
var min = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
|
var max = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;
|
|
|
|
if (false) {}
|
|
|
|
return Math.min(Math.max(min, value), max);
|
|
}
|
|
/**
|
|
* Converts a color from CSS hex format to CSS rgb format.
|
|
*
|
|
* @param {string} color - Hex color, i.e. #nnn or #nnnnnn
|
|
* @returns {string} A CSS rgb color string
|
|
*/
|
|
|
|
|
|
function hexToRgb(color) {
|
|
color = color.substr(1);
|
|
var re = new RegExp(".{1,".concat(color.length >= 6 ? 2 : 1, "}"), 'g');
|
|
var colors = color.match(re);
|
|
|
|
if (colors && colors[0].length === 1) {
|
|
colors = colors.map(function (n) {
|
|
return n + n;
|
|
});
|
|
}
|
|
|
|
return colors ? "rgb".concat(colors.length === 4 ? 'a' : '', "(").concat(colors.map(function (n, index) {
|
|
return index < 3 ? parseInt(n, 16) : Math.round(parseInt(n, 16) / 255 * 1000) / 1000;
|
|
}).join(', '), ")") : '';
|
|
}
|
|
|
|
function intToHex(int) {
|
|
var hex = int.toString(16);
|
|
return hex.length === 1 ? "0".concat(hex) : hex;
|
|
}
|
|
/**
|
|
* Converts a color from CSS rgb format to CSS hex format.
|
|
*
|
|
* @param {string} color - RGB color, i.e. rgb(n, n, n)
|
|
* @returns {string} A CSS rgb color string, i.e. #nnnnnn
|
|
*/
|
|
|
|
|
|
function rgbToHex(color) {
|
|
// Idempotent
|
|
if (color.indexOf('#') === 0) {
|
|
return color;
|
|
}
|
|
|
|
var _decomposeColor = decomposeColor(color),
|
|
values = _decomposeColor.values;
|
|
|
|
return "#".concat(values.map(function (n) {
|
|
return intToHex(n);
|
|
}).join(''));
|
|
}
|
|
/**
|
|
* Converts a color from hsl format to rgb format.
|
|
*
|
|
* @param {string} color - HSL color values
|
|
* @returns {string} rgb color values
|
|
*/
|
|
|
|
function hslToRgb(color) {
|
|
color = decomposeColor(color);
|
|
var _color = color,
|
|
values = _color.values;
|
|
var h = values[0];
|
|
var s = values[1] / 100;
|
|
var l = values[2] / 100;
|
|
var a = s * Math.min(l, 1 - l);
|
|
|
|
var f = function f(n) {
|
|
var k = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : (n + h / 30) % 12;
|
|
return l - a * Math.max(Math.min(k - 3, 9 - k, 1), -1);
|
|
};
|
|
|
|
var type = 'rgb';
|
|
var rgb = [Math.round(f(0) * 255), Math.round(f(8) * 255), Math.round(f(4) * 255)];
|
|
|
|
if (color.type === 'hsla') {
|
|
type += 'a';
|
|
rgb.push(values[3]);
|
|
}
|
|
|
|
return recomposeColor({
|
|
type: type,
|
|
values: rgb
|
|
});
|
|
}
|
|
/**
|
|
* Returns an object with the type and values of a color.
|
|
*
|
|
* Note: Does not support rgb % values.
|
|
*
|
|
* @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()
|
|
* @returns {object} - A MUI color object: {type: string, values: number[]}
|
|
*/
|
|
|
|
function decomposeColor(color) {
|
|
// Idempotent
|
|
if (color.type) {
|
|
return color;
|
|
}
|
|
|
|
if (color.charAt(0) === '#') {
|
|
return decomposeColor(hexToRgb(color));
|
|
}
|
|
|
|
var marker = color.indexOf('(');
|
|
var type = color.substring(0, marker);
|
|
|
|
if (['rgb', 'rgba', 'hsl', 'hsla'].indexOf(type) === -1) {
|
|
throw new Error( false ? 0 : (0,_material_ui_utils__WEBPACK_IMPORTED_MODULE_0__.formatMuiErrorMessage)(3, color));
|
|
}
|
|
|
|
var values = color.substring(marker + 1, color.length - 1).split(',');
|
|
values = values.map(function (value) {
|
|
return parseFloat(value);
|
|
});
|
|
return {
|
|
type: type,
|
|
values: values
|
|
};
|
|
}
|
|
/**
|
|
* Converts a color object with type and values to a string.
|
|
*
|
|
* @param {object} color - Decomposed color
|
|
* @param {string} color.type - One of: 'rgb', 'rgba', 'hsl', 'hsla'
|
|
* @param {array} color.values - [n,n,n] or [n,n,n,n]
|
|
* @returns {string} A CSS color string
|
|
*/
|
|
|
|
function recomposeColor(color) {
|
|
var type = color.type;
|
|
var values = color.values;
|
|
|
|
if (type.indexOf('rgb') !== -1) {
|
|
// Only convert the first 3 values to int (i.e. not alpha)
|
|
values = values.map(function (n, i) {
|
|
return i < 3 ? parseInt(n, 10) : n;
|
|
});
|
|
} else if (type.indexOf('hsl') !== -1) {
|
|
values[1] = "".concat(values[1], "%");
|
|
values[2] = "".concat(values[2], "%");
|
|
}
|
|
|
|
return "".concat(type, "(").concat(values.join(', '), ")");
|
|
}
|
|
/**
|
|
* Calculates the contrast ratio between two colors.
|
|
*
|
|
* Formula: https://www.w3.org/TR/WCAG20-TECHS/G17.html#G17-tests
|
|
*
|
|
* @param {string} foreground - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()
|
|
* @param {string} background - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()
|
|
* @returns {number} A contrast ratio value in the range 0 - 21.
|
|
*/
|
|
|
|
function getContrastRatio(foreground, background) {
|
|
var lumA = getLuminance(foreground);
|
|
var lumB = getLuminance(background);
|
|
return (Math.max(lumA, lumB) + 0.05) / (Math.min(lumA, lumB) + 0.05);
|
|
}
|
|
/**
|
|
* The relative brightness of any point in a color space,
|
|
* normalized to 0 for darkest black and 1 for lightest white.
|
|
*
|
|
* Formula: https://www.w3.org/TR/WCAG20-TECHS/G17.html#G17-tests
|
|
*
|
|
* @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()
|
|
* @returns {number} The relative brightness of the color in the range 0 - 1
|
|
*/
|
|
|
|
function getLuminance(color) {
|
|
color = decomposeColor(color);
|
|
var rgb = color.type === 'hsl' ? decomposeColor(hslToRgb(color)).values : color.values;
|
|
rgb = rgb.map(function (val) {
|
|
val /= 255; // normalized
|
|
|
|
return val <= 0.03928 ? val / 12.92 : Math.pow((val + 0.055) / 1.055, 2.4);
|
|
}); // Truncate at 3 digits
|
|
|
|
return Number((0.2126 * rgb[0] + 0.7152 * rgb[1] + 0.0722 * rgb[2]).toFixed(3));
|
|
}
|
|
/**
|
|
* Darken or lighten a color, depending on its luminance.
|
|
* Light colors are darkened, dark colors are lightened.
|
|
*
|
|
* @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()
|
|
* @param {number} coefficient=0.15 - multiplier in the range 0 - 1
|
|
* @returns {string} A CSS color string. Hex input values are returned as rgb
|
|
*/
|
|
|
|
function emphasize(color) {
|
|
var coefficient = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0.15;
|
|
return getLuminance(color) > 0.5 ? darken(color, coefficient) : lighten(color, coefficient);
|
|
}
|
|
/**
|
|
* Set the absolute transparency of a color.
|
|
* Any existing alpha values are overwritten.
|
|
*
|
|
* @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()
|
|
* @param {number} value - value to set the alpha channel to in the range 0 -1
|
|
* @returns {string} A CSS color string. Hex input values are returned as rgb
|
|
*/
|
|
|
|
function fade(color, value) {
|
|
color = decomposeColor(color);
|
|
value = clamp(value);
|
|
|
|
if (color.type === 'rgb' || color.type === 'hsl') {
|
|
color.type += 'a';
|
|
}
|
|
|
|
color.values[3] = value;
|
|
return recomposeColor(color);
|
|
}
|
|
/**
|
|
* Darkens a color.
|
|
*
|
|
* @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()
|
|
* @param {number} coefficient - multiplier in the range 0 - 1
|
|
* @returns {string} A CSS color string. Hex input values are returned as rgb
|
|
*/
|
|
|
|
function darken(color, coefficient) {
|
|
color = decomposeColor(color);
|
|
coefficient = clamp(coefficient);
|
|
|
|
if (color.type.indexOf('hsl') !== -1) {
|
|
color.values[2] *= 1 - coefficient;
|
|
} else if (color.type.indexOf('rgb') !== -1) {
|
|
for (var i = 0; i < 3; i += 1) {
|
|
color.values[i] *= 1 - coefficient;
|
|
}
|
|
}
|
|
|
|
return recomposeColor(color);
|
|
}
|
|
/**
|
|
* Lightens a color.
|
|
*
|
|
* @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()
|
|
* @param {number} coefficient - multiplier in the range 0 - 1
|
|
* @returns {string} A CSS color string. Hex input values are returned as rgb
|
|
*/
|
|
|
|
function lighten(color, coefficient) {
|
|
color = decomposeColor(color);
|
|
coefficient = clamp(coefficient);
|
|
|
|
if (color.type.indexOf('hsl') !== -1) {
|
|
color.values[2] += (100 - color.values[2]) * coefficient;
|
|
} else if (color.type.indexOf('rgb') !== -1) {
|
|
for (var i = 0; i < 3; i += 1) {
|
|
color.values[i] += (255 - color.values[i]) * coefficient;
|
|
}
|
|
}
|
|
|
|
return recomposeColor(color);
|
|
}
|
|
|
|
/***/ }),
|
|
|
|
/***/ 921:
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
"use strict";
|
|
|
|
// EXPORTS
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
"Z": function() { return /* binding */ styles_defaultTheme; }
|
|
});
|
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js + 1 modules
|
|
var objectWithoutProperties = __webpack_require__(375);
|
|
// EXTERNAL MODULE: external "@material-ui/utils"
|
|
var utils_ = __webpack_require__(958);
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
|
|
var esm_extends = __webpack_require__(122);
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/styles/createBreakpoints.js
|
|
|
|
|
|
// Sorted ASC by size. That's important.
|
|
// It can't be configured as it's used statically for propTypes.
|
|
var keys = ['xs', 'sm', 'md', 'lg', 'xl']; // Keep in mind that @media is inclusive by the CSS specification.
|
|
|
|
function createBreakpoints(breakpoints) {
|
|
var _breakpoints$values = breakpoints.values,
|
|
values = _breakpoints$values === void 0 ? {
|
|
xs: 0,
|
|
sm: 600,
|
|
md: 960,
|
|
lg: 1280,
|
|
xl: 1920
|
|
} : _breakpoints$values,
|
|
_breakpoints$unit = breakpoints.unit,
|
|
unit = _breakpoints$unit === void 0 ? 'px' : _breakpoints$unit,
|
|
_breakpoints$step = breakpoints.step,
|
|
step = _breakpoints$step === void 0 ? 5 : _breakpoints$step,
|
|
other = (0,objectWithoutProperties/* default */.Z)(breakpoints, ["values", "unit", "step"]);
|
|
|
|
function up(key) {
|
|
var value = typeof values[key] === 'number' ? values[key] : key;
|
|
return "@media (min-width:".concat(value).concat(unit, ")");
|
|
}
|
|
|
|
function down(key) {
|
|
var endIndex = keys.indexOf(key) + 1;
|
|
var upperbound = values[keys[endIndex]];
|
|
|
|
if (endIndex === keys.length) {
|
|
// xl down applies to all sizes
|
|
return up('xs');
|
|
}
|
|
|
|
var value = typeof upperbound === 'number' && endIndex > 0 ? upperbound : key;
|
|
return "@media (max-width:".concat(value - step / 100).concat(unit, ")");
|
|
}
|
|
|
|
function between(start, end) {
|
|
var endIndex = keys.indexOf(end);
|
|
|
|
if (endIndex === keys.length - 1) {
|
|
return up(start);
|
|
}
|
|
|
|
return "@media (min-width:".concat(typeof values[start] === 'number' ? values[start] : start).concat(unit, ") and ") + "(max-width:".concat((endIndex !== -1 && typeof values[keys[endIndex + 1]] === 'number' ? values[keys[endIndex + 1]] : end) - step / 100).concat(unit, ")");
|
|
}
|
|
|
|
function only(key) {
|
|
return between(key, key);
|
|
}
|
|
|
|
function width(key) {
|
|
return values[key];
|
|
}
|
|
|
|
return (0,esm_extends/* default */.Z)({
|
|
keys: keys,
|
|
values: values,
|
|
up: up,
|
|
down: down,
|
|
between: between,
|
|
only: only,
|
|
width: width
|
|
}, other);
|
|
}
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
|
|
var defineProperty = __webpack_require__(156);
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/styles/createMixins.js
|
|
|
|
|
|
function createMixins(breakpoints, spacing, mixins) {
|
|
var _toolbar;
|
|
|
|
return (0,esm_extends/* default */.Z)({
|
|
gutters: function gutters() {
|
|
var styles = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
// To deprecate in v4.1
|
|
// warning(
|
|
// false,
|
|
// [
|
|
// 'Material-UI: Theme.mixins.gutters() is deprecated.',
|
|
// 'You can use the source of the mixin directly:',
|
|
// `
|
|
// paddingLeft: theme.spacing(2),
|
|
// paddingRight: theme.spacing(2),
|
|
// [theme.breakpoints.up('sm')]: {
|
|
// paddingLeft: theme.spacing(3),
|
|
// paddingRight: theme.spacing(3),
|
|
// },
|
|
// `,
|
|
// ].join('\n'),
|
|
// );
|
|
return (0,esm_extends/* default */.Z)({
|
|
paddingLeft: spacing(2),
|
|
paddingRight: spacing(2)
|
|
}, styles, (0,defineProperty/* default */.Z)({}, breakpoints.up('sm'), (0,esm_extends/* default */.Z)({
|
|
paddingLeft: spacing(3),
|
|
paddingRight: spacing(3)
|
|
}, styles[breakpoints.up('sm')])));
|
|
},
|
|
toolbar: (_toolbar = {
|
|
minHeight: 56
|
|
}, (0,defineProperty/* default */.Z)(_toolbar, "".concat(breakpoints.up('xs'), " and (orientation: landscape)"), {
|
|
minHeight: 48
|
|
}), (0,defineProperty/* default */.Z)(_toolbar, breakpoints.up('sm'), {
|
|
minHeight: 64
|
|
}), _toolbar)
|
|
}, mixins);
|
|
}
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/colors/common.js
|
|
var common = {
|
|
black: '#000',
|
|
white: '#fff'
|
|
};
|
|
/* harmony default export */ var colors_common = (common);
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/colors/grey.js
|
|
var grey = {
|
|
50: '#fafafa',
|
|
100: '#f5f5f5',
|
|
200: '#eeeeee',
|
|
300: '#e0e0e0',
|
|
400: '#bdbdbd',
|
|
500: '#9e9e9e',
|
|
600: '#757575',
|
|
700: '#616161',
|
|
800: '#424242',
|
|
900: '#212121',
|
|
A100: '#d5d5d5',
|
|
A200: '#aaaaaa',
|
|
A400: '#303030',
|
|
A700: '#616161'
|
|
};
|
|
/* harmony default export */ var colors_grey = (grey);
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/colors/indigo.js
|
|
var indigo = {
|
|
50: '#e8eaf6',
|
|
100: '#c5cae9',
|
|
200: '#9fa8da',
|
|
300: '#7986cb',
|
|
400: '#5c6bc0',
|
|
500: '#3f51b5',
|
|
600: '#3949ab',
|
|
700: '#303f9f',
|
|
800: '#283593',
|
|
900: '#1a237e',
|
|
A100: '#8c9eff',
|
|
A200: '#536dfe',
|
|
A400: '#3d5afe',
|
|
A700: '#304ffe'
|
|
};
|
|
/* harmony default export */ var colors_indigo = (indigo);
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/colors/pink.js
|
|
var pink = {
|
|
50: '#fce4ec',
|
|
100: '#f8bbd0',
|
|
200: '#f48fb1',
|
|
300: '#f06292',
|
|
400: '#ec407a',
|
|
500: '#e91e63',
|
|
600: '#d81b60',
|
|
700: '#c2185b',
|
|
800: '#ad1457',
|
|
900: '#880e4f',
|
|
A100: '#ff80ab',
|
|
A200: '#ff4081',
|
|
A400: '#f50057',
|
|
A700: '#c51162'
|
|
};
|
|
/* harmony default export */ var colors_pink = (pink);
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/colors/red.js
|
|
var red = {
|
|
50: '#ffebee',
|
|
100: '#ffcdd2',
|
|
200: '#ef9a9a',
|
|
300: '#e57373',
|
|
400: '#ef5350',
|
|
500: '#f44336',
|
|
600: '#e53935',
|
|
700: '#d32f2f',
|
|
800: '#c62828',
|
|
900: '#b71c1c',
|
|
A100: '#ff8a80',
|
|
A200: '#ff5252',
|
|
A400: '#ff1744',
|
|
A700: '#d50000'
|
|
};
|
|
/* harmony default export */ var colors_red = (red);
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/colors/orange.js
|
|
var orange = {
|
|
50: '#fff3e0',
|
|
100: '#ffe0b2',
|
|
200: '#ffcc80',
|
|
300: '#ffb74d',
|
|
400: '#ffa726',
|
|
500: '#ff9800',
|
|
600: '#fb8c00',
|
|
700: '#f57c00',
|
|
800: '#ef6c00',
|
|
900: '#e65100',
|
|
A100: '#ffd180',
|
|
A200: '#ffab40',
|
|
A400: '#ff9100',
|
|
A700: '#ff6d00'
|
|
};
|
|
/* harmony default export */ var colors_orange = (orange);
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/colors/blue.js
|
|
var blue = {
|
|
50: '#e3f2fd',
|
|
100: '#bbdefb',
|
|
200: '#90caf9',
|
|
300: '#64b5f6',
|
|
400: '#42a5f5',
|
|
500: '#2196f3',
|
|
600: '#1e88e5',
|
|
700: '#1976d2',
|
|
800: '#1565c0',
|
|
900: '#0d47a1',
|
|
A100: '#82b1ff',
|
|
A200: '#448aff',
|
|
A400: '#2979ff',
|
|
A700: '#2962ff'
|
|
};
|
|
/* harmony default export */ var colors_blue = (blue);
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/colors/green.js
|
|
var green = {
|
|
50: '#e8f5e9',
|
|
100: '#c8e6c9',
|
|
200: '#a5d6a7',
|
|
300: '#81c784',
|
|
400: '#66bb6a',
|
|
500: '#4caf50',
|
|
600: '#43a047',
|
|
700: '#388e3c',
|
|
800: '#2e7d32',
|
|
900: '#1b5e20',
|
|
A100: '#b9f6ca',
|
|
A200: '#69f0ae',
|
|
A400: '#00e676',
|
|
A700: '#00c853'
|
|
};
|
|
/* harmony default export */ var colors_green = (green);
|
|
// EXTERNAL MODULE: ./node_modules/@material-ui/core/esm/styles/colorManipulator.js
|
|
var colorManipulator = __webpack_require__(693);
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/styles/createPalette.js
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var light = {
|
|
// The colors used to style the text.
|
|
text: {
|
|
// The most important text.
|
|
primary: 'rgba(0, 0, 0, 0.87)',
|
|
// Secondary text.
|
|
secondary: 'rgba(0, 0, 0, 0.54)',
|
|
// Disabled text have even lower visual prominence.
|
|
disabled: 'rgba(0, 0, 0, 0.38)',
|
|
// Text hints.
|
|
hint: 'rgba(0, 0, 0, 0.38)'
|
|
},
|
|
// The color used to divide different elements.
|
|
divider: 'rgba(0, 0, 0, 0.12)',
|
|
// The background colors used to style the surfaces.
|
|
// Consistency between these values is important.
|
|
background: {
|
|
paper: colors_common.white,
|
|
default: colors_grey[50]
|
|
},
|
|
// The colors used to style the action elements.
|
|
action: {
|
|
// The color of an active action like an icon button.
|
|
active: 'rgba(0, 0, 0, 0.54)',
|
|
// The color of an hovered action.
|
|
hover: 'rgba(0, 0, 0, 0.04)',
|
|
hoverOpacity: 0.04,
|
|
// The color of a selected action.
|
|
selected: 'rgba(0, 0, 0, 0.08)',
|
|
selectedOpacity: 0.08,
|
|
// The color of a disabled action.
|
|
disabled: 'rgba(0, 0, 0, 0.26)',
|
|
// The background color of a disabled action.
|
|
disabledBackground: 'rgba(0, 0, 0, 0.12)',
|
|
disabledOpacity: 0.38,
|
|
focus: 'rgba(0, 0, 0, 0.12)',
|
|
focusOpacity: 0.12,
|
|
activatedOpacity: 0.12
|
|
}
|
|
};
|
|
var dark = {
|
|
text: {
|
|
primary: colors_common.white,
|
|
secondary: 'rgba(255, 255, 255, 0.7)',
|
|
disabled: 'rgba(255, 255, 255, 0.5)',
|
|
hint: 'rgba(255, 255, 255, 0.5)',
|
|
icon: 'rgba(255, 255, 255, 0.5)'
|
|
},
|
|
divider: 'rgba(255, 255, 255, 0.12)',
|
|
background: {
|
|
paper: colors_grey[800],
|
|
default: '#303030'
|
|
},
|
|
action: {
|
|
active: colors_common.white,
|
|
hover: 'rgba(255, 255, 255, 0.08)',
|
|
hoverOpacity: 0.08,
|
|
selected: 'rgba(255, 255, 255, 0.16)',
|
|
selectedOpacity: 0.16,
|
|
disabled: 'rgba(255, 255, 255, 0.3)',
|
|
disabledBackground: 'rgba(255, 255, 255, 0.12)',
|
|
disabledOpacity: 0.38,
|
|
focus: 'rgba(255, 255, 255, 0.12)',
|
|
focusOpacity: 0.12,
|
|
activatedOpacity: 0.24
|
|
}
|
|
};
|
|
|
|
function addLightOrDark(intent, direction, shade, tonalOffset) {
|
|
var tonalOffsetLight = tonalOffset.light || tonalOffset;
|
|
var tonalOffsetDark = tonalOffset.dark || tonalOffset * 1.5;
|
|
|
|
if (!intent[direction]) {
|
|
if (intent.hasOwnProperty(shade)) {
|
|
intent[direction] = intent[shade];
|
|
} else if (direction === 'light') {
|
|
intent.light = (0,colorManipulator/* lighten */.$n)(intent.main, tonalOffsetLight);
|
|
} else if (direction === 'dark') {
|
|
intent.dark = (0,colorManipulator/* darken */._j)(intent.main, tonalOffsetDark);
|
|
}
|
|
}
|
|
}
|
|
|
|
function createPalette(palette) {
|
|
var _palette$primary = palette.primary,
|
|
primary = _palette$primary === void 0 ? {
|
|
light: colors_indigo[300],
|
|
main: colors_indigo[500],
|
|
dark: colors_indigo[700]
|
|
} : _palette$primary,
|
|
_palette$secondary = palette.secondary,
|
|
secondary = _palette$secondary === void 0 ? {
|
|
light: colors_pink.A200,
|
|
main: colors_pink.A400,
|
|
dark: colors_pink.A700
|
|
} : _palette$secondary,
|
|
_palette$error = palette.error,
|
|
error = _palette$error === void 0 ? {
|
|
light: colors_red[300],
|
|
main: colors_red[500],
|
|
dark: colors_red[700]
|
|
} : _palette$error,
|
|
_palette$warning = palette.warning,
|
|
warning = _palette$warning === void 0 ? {
|
|
light: colors_orange[300],
|
|
main: colors_orange[500],
|
|
dark: colors_orange[700]
|
|
} : _palette$warning,
|
|
_palette$info = palette.info,
|
|
info = _palette$info === void 0 ? {
|
|
light: colors_blue[300],
|
|
main: colors_blue[500],
|
|
dark: colors_blue[700]
|
|
} : _palette$info,
|
|
_palette$success = palette.success,
|
|
success = _palette$success === void 0 ? {
|
|
light: colors_green[300],
|
|
main: colors_green[500],
|
|
dark: colors_green[700]
|
|
} : _palette$success,
|
|
_palette$type = palette.type,
|
|
type = _palette$type === void 0 ? 'light' : _palette$type,
|
|
_palette$contrastThre = palette.contrastThreshold,
|
|
contrastThreshold = _palette$contrastThre === void 0 ? 3 : _palette$contrastThre,
|
|
_palette$tonalOffset = palette.tonalOffset,
|
|
tonalOffset = _palette$tonalOffset === void 0 ? 0.2 : _palette$tonalOffset,
|
|
other = (0,objectWithoutProperties/* default */.Z)(palette, ["primary", "secondary", "error", "warning", "info", "success", "type", "contrastThreshold", "tonalOffset"]); // Use the same logic as
|
|
// Bootstrap: https://github.com/twbs/bootstrap/blob/1d6e3710dd447de1a200f29e8fa521f8a0908f70/scss/_functions.scss#L59
|
|
// and material-components-web https://github.com/material-components/material-components-web/blob/ac46b8863c4dab9fc22c4c662dc6bd1b65dd652f/packages/mdc-theme/_functions.scss#L54
|
|
|
|
|
|
function getContrastText(background) {
|
|
var contrastText = (0,colorManipulator/* getContrastRatio */.mi)(background, dark.text.primary) >= contrastThreshold ? dark.text.primary : light.text.primary;
|
|
|
|
if (false) { var contrast; }
|
|
|
|
return contrastText;
|
|
}
|
|
|
|
var augmentColor = function augmentColor(color) {
|
|
var mainShade = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 500;
|
|
var lightShade = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 300;
|
|
var darkShade = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 700;
|
|
color = (0,esm_extends/* default */.Z)({}, color);
|
|
|
|
if (!color.main && color[mainShade]) {
|
|
color.main = color[mainShade];
|
|
}
|
|
|
|
if (!color.main) {
|
|
throw new Error( false ? 0 : (0,utils_.formatMuiErrorMessage)(4, mainShade));
|
|
}
|
|
|
|
if (typeof color.main !== 'string') {
|
|
throw new Error( false ? 0 : (0,utils_.formatMuiErrorMessage)(5, JSON.stringify(color.main)));
|
|
}
|
|
|
|
addLightOrDark(color, 'light', lightShade, tonalOffset);
|
|
addLightOrDark(color, 'dark', darkShade, tonalOffset);
|
|
|
|
if (!color.contrastText) {
|
|
color.contrastText = getContrastText(color.main);
|
|
}
|
|
|
|
return color;
|
|
};
|
|
|
|
var types = {
|
|
dark: dark,
|
|
light: light
|
|
};
|
|
|
|
if (false) {}
|
|
|
|
var paletteOutput = (0,utils_.deepmerge)((0,esm_extends/* default */.Z)({
|
|
// A collection of common colors.
|
|
common: colors_common,
|
|
// The palette type, can be light or dark.
|
|
type: type,
|
|
// The colors used to represent primary interface elements for a user.
|
|
primary: augmentColor(primary),
|
|
// The colors used to represent secondary interface elements for a user.
|
|
secondary: augmentColor(secondary, 'A400', 'A200', 'A700'),
|
|
// The colors used to represent interface elements that the user should be made aware of.
|
|
error: augmentColor(error),
|
|
// The colors used to represent potentially dangerous actions or important messages.
|
|
warning: augmentColor(warning),
|
|
// The colors used to present information to the user that is neutral and not necessarily important.
|
|
info: augmentColor(info),
|
|
// The colors used to indicate the successful completion of an action that user triggered.
|
|
success: augmentColor(success),
|
|
// The grey colors.
|
|
grey: colors_grey,
|
|
// Used by `getContrastText()` to maximize the contrast between
|
|
// the background and the text.
|
|
contrastThreshold: contrastThreshold,
|
|
// Takes a background color and returns the text color that maximizes the contrast.
|
|
getContrastText: getContrastText,
|
|
// Generate a rich color object.
|
|
augmentColor: augmentColor,
|
|
// Used by the functions below to shift a color's luminance by approximately
|
|
// two indexes within its tonal palette.
|
|
// E.g., shift from Red 500 to Red 300 or Red 700.
|
|
tonalOffset: tonalOffset
|
|
}, types[type]), other);
|
|
return paletteOutput;
|
|
}
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/styles/createTypography.js
|
|
|
|
|
|
|
|
|
|
function round(value) {
|
|
return Math.round(value * 1e5) / 1e5;
|
|
}
|
|
|
|
var caseAllCaps = {
|
|
textTransform: 'uppercase'
|
|
};
|
|
var defaultFontFamily = '"Roboto", "Helvetica", "Arial", sans-serif';
|
|
/**
|
|
* @see @link{https://material.io/design/typography/the-type-system.html}
|
|
* @see @link{https://material.io/design/typography/understanding-typography.html}
|
|
*/
|
|
|
|
function createTypography(palette, typography) {
|
|
var _ref = typeof typography === 'function' ? typography(palette) : typography,
|
|
_ref$fontFamily = _ref.fontFamily,
|
|
fontFamily = _ref$fontFamily === void 0 ? defaultFontFamily : _ref$fontFamily,
|
|
_ref$fontSize = _ref.fontSize,
|
|
fontSize = _ref$fontSize === void 0 ? 14 : _ref$fontSize,
|
|
_ref$fontWeightLight = _ref.fontWeightLight,
|
|
fontWeightLight = _ref$fontWeightLight === void 0 ? 300 : _ref$fontWeightLight,
|
|
_ref$fontWeightRegula = _ref.fontWeightRegular,
|
|
fontWeightRegular = _ref$fontWeightRegula === void 0 ? 400 : _ref$fontWeightRegula,
|
|
_ref$fontWeightMedium = _ref.fontWeightMedium,
|
|
fontWeightMedium = _ref$fontWeightMedium === void 0 ? 500 : _ref$fontWeightMedium,
|
|
_ref$fontWeightBold = _ref.fontWeightBold,
|
|
fontWeightBold = _ref$fontWeightBold === void 0 ? 700 : _ref$fontWeightBold,
|
|
_ref$htmlFontSize = _ref.htmlFontSize,
|
|
htmlFontSize = _ref$htmlFontSize === void 0 ? 16 : _ref$htmlFontSize,
|
|
allVariants = _ref.allVariants,
|
|
pxToRem2 = _ref.pxToRem,
|
|
other = (0,objectWithoutProperties/* default */.Z)(_ref, ["fontFamily", "fontSize", "fontWeightLight", "fontWeightRegular", "fontWeightMedium", "fontWeightBold", "htmlFontSize", "allVariants", "pxToRem"]);
|
|
|
|
if (false) {}
|
|
|
|
var coef = fontSize / 14;
|
|
|
|
var pxToRem = pxToRem2 || function (size) {
|
|
return "".concat(size / htmlFontSize * coef, "rem");
|
|
};
|
|
|
|
var buildVariant = function buildVariant(fontWeight, size, lineHeight, letterSpacing, casing) {
|
|
return (0,esm_extends/* default */.Z)({
|
|
fontFamily: fontFamily,
|
|
fontWeight: fontWeight,
|
|
fontSize: pxToRem(size),
|
|
// Unitless following https://meyerweb.com/eric/thoughts/2006/02/08/unitless-line-heights/
|
|
lineHeight: lineHeight
|
|
}, fontFamily === defaultFontFamily ? {
|
|
letterSpacing: "".concat(round(letterSpacing / size), "em")
|
|
} : {}, casing, allVariants);
|
|
};
|
|
|
|
var variants = {
|
|
h1: buildVariant(fontWeightLight, 96, 1.167, -1.5),
|
|
h2: buildVariant(fontWeightLight, 60, 1.2, -0.5),
|
|
h3: buildVariant(fontWeightRegular, 48, 1.167, 0),
|
|
h4: buildVariant(fontWeightRegular, 34, 1.235, 0.25),
|
|
h5: buildVariant(fontWeightRegular, 24, 1.334, 0),
|
|
h6: buildVariant(fontWeightMedium, 20, 1.6, 0.15),
|
|
subtitle1: buildVariant(fontWeightRegular, 16, 1.75, 0.15),
|
|
subtitle2: buildVariant(fontWeightMedium, 14, 1.57, 0.1),
|
|
body1: buildVariant(fontWeightRegular, 16, 1.5, 0.15),
|
|
body2: buildVariant(fontWeightRegular, 14, 1.43, 0.15),
|
|
button: buildVariant(fontWeightMedium, 14, 1.75, 0.4, caseAllCaps),
|
|
caption: buildVariant(fontWeightRegular, 12, 1.66, 0.4),
|
|
overline: buildVariant(fontWeightRegular, 12, 2.66, 1, caseAllCaps)
|
|
};
|
|
return (0,utils_.deepmerge)((0,esm_extends/* default */.Z)({
|
|
htmlFontSize: htmlFontSize,
|
|
pxToRem: pxToRem,
|
|
round: round,
|
|
// TODO v5: remove
|
|
fontFamily: fontFamily,
|
|
fontSize: fontSize,
|
|
fontWeightLight: fontWeightLight,
|
|
fontWeightRegular: fontWeightRegular,
|
|
fontWeightMedium: fontWeightMedium,
|
|
fontWeightBold: fontWeightBold
|
|
}, variants), other, {
|
|
clone: false // No need to clone deep
|
|
|
|
});
|
|
}
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/styles/shadows.js
|
|
var shadowKeyUmbraOpacity = 0.2;
|
|
var shadowKeyPenumbraOpacity = 0.14;
|
|
var shadowAmbientShadowOpacity = 0.12;
|
|
|
|
function createShadow() {
|
|
return ["".concat(arguments.length <= 0 ? undefined : arguments[0], "px ").concat(arguments.length <= 1 ? undefined : arguments[1], "px ").concat(arguments.length <= 2 ? undefined : arguments[2], "px ").concat(arguments.length <= 3 ? undefined : arguments[3], "px rgba(0,0,0,").concat(shadowKeyUmbraOpacity, ")"), "".concat(arguments.length <= 4 ? undefined : arguments[4], "px ").concat(arguments.length <= 5 ? undefined : arguments[5], "px ").concat(arguments.length <= 6 ? undefined : arguments[6], "px ").concat(arguments.length <= 7 ? undefined : arguments[7], "px rgba(0,0,0,").concat(shadowKeyPenumbraOpacity, ")"), "".concat(arguments.length <= 8 ? undefined : arguments[8], "px ").concat(arguments.length <= 9 ? undefined : arguments[9], "px ").concat(arguments.length <= 10 ? undefined : arguments[10], "px ").concat(arguments.length <= 11 ? undefined : arguments[11], "px rgba(0,0,0,").concat(shadowAmbientShadowOpacity, ")")].join(',');
|
|
} // Values from https://github.com/material-components/material-components-web/blob/be8747f94574669cb5e7add1a7c54fa41a89cec7/packages/mdc-elevation/_variables.scss
|
|
|
|
|
|
var shadows = ['none', createShadow(0, 2, 1, -1, 0, 1, 1, 0, 0, 1, 3, 0), createShadow(0, 3, 1, -2, 0, 2, 2, 0, 0, 1, 5, 0), createShadow(0, 3, 3, -2, 0, 3, 4, 0, 0, 1, 8, 0), createShadow(0, 2, 4, -1, 0, 4, 5, 0, 0, 1, 10, 0), createShadow(0, 3, 5, -1, 0, 5, 8, 0, 0, 1, 14, 0), createShadow(0, 3, 5, -1, 0, 6, 10, 0, 0, 1, 18, 0), createShadow(0, 4, 5, -2, 0, 7, 10, 1, 0, 2, 16, 1), createShadow(0, 5, 5, -3, 0, 8, 10, 1, 0, 3, 14, 2), createShadow(0, 5, 6, -3, 0, 9, 12, 1, 0, 3, 16, 2), createShadow(0, 6, 6, -3, 0, 10, 14, 1, 0, 4, 18, 3), createShadow(0, 6, 7, -4, 0, 11, 15, 1, 0, 4, 20, 3), createShadow(0, 7, 8, -4, 0, 12, 17, 2, 0, 5, 22, 4), createShadow(0, 7, 8, -4, 0, 13, 19, 2, 0, 5, 24, 4), createShadow(0, 7, 9, -4, 0, 14, 21, 2, 0, 5, 26, 4), createShadow(0, 8, 9, -5, 0, 15, 22, 2, 0, 6, 28, 5), createShadow(0, 8, 10, -5, 0, 16, 24, 2, 0, 6, 30, 5), createShadow(0, 8, 11, -5, 0, 17, 26, 2, 0, 6, 32, 5), createShadow(0, 9, 11, -5, 0, 18, 28, 2, 0, 7, 34, 6), createShadow(0, 9, 12, -6, 0, 19, 29, 2, 0, 7, 36, 6), createShadow(0, 10, 13, -6, 0, 20, 31, 3, 0, 8, 38, 7), createShadow(0, 10, 13, -6, 0, 21, 33, 3, 0, 8, 40, 7), createShadow(0, 10, 14, -6, 0, 22, 35, 3, 0, 8, 42, 7), createShadow(0, 11, 14, -7, 0, 23, 36, 3, 0, 9, 44, 8), createShadow(0, 11, 15, -7, 0, 24, 38, 3, 0, 9, 46, 8)];
|
|
/* harmony default export */ var styles_shadows = (shadows);
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/styles/shape.js
|
|
var shape = {
|
|
borderRadius: 4
|
|
};
|
|
/* harmony default export */ var styles_shape = (shape);
|
|
// EXTERNAL MODULE: external "@material-ui/system"
|
|
var system_ = __webpack_require__(137);
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/styles/createSpacing.js
|
|
|
|
var warnOnce;
|
|
function createSpacing() {
|
|
var spacingInput = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 8;
|
|
|
|
// Already transformed.
|
|
if (spacingInput.mui) {
|
|
return spacingInput;
|
|
} // Material Design layouts are visually balanced. Most measurements align to an 8dp grid applied, which aligns both spacing and the overall layout.
|
|
// Smaller components, such as icons and type, can align to a 4dp grid.
|
|
// https://material.io/design/layout/understanding-layout.html#usage
|
|
|
|
|
|
var transform = (0,system_.createUnarySpacing)({
|
|
spacing: spacingInput
|
|
});
|
|
|
|
var spacing = function spacing() {
|
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
args[_key] = arguments[_key];
|
|
}
|
|
|
|
if (false) {}
|
|
|
|
if (args.length === 0) {
|
|
return transform(1);
|
|
}
|
|
|
|
if (args.length === 1) {
|
|
return transform(args[0]);
|
|
}
|
|
|
|
return args.map(function (argument) {
|
|
if (typeof argument === 'string') {
|
|
return argument;
|
|
}
|
|
|
|
var output = transform(argument);
|
|
return typeof output === 'number' ? "".concat(output, "px") : output;
|
|
}).join(' ');
|
|
}; // Backward compatibility, to remove in v5.
|
|
|
|
|
|
Object.defineProperty(spacing, 'unit', {
|
|
get: function get() {
|
|
if (false) {}
|
|
|
|
return spacingInput;
|
|
}
|
|
});
|
|
spacing.mui = true;
|
|
return spacing;
|
|
}
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/styles/transitions.js
|
|
|
|
// Follow https://material.google.com/motion/duration-easing.html#duration-easing-natural-easing-curves
|
|
// to learn the context in which each easing should be used.
|
|
var easing = {
|
|
// This is the most common easing curve.
|
|
easeInOut: 'cubic-bezier(0.4, 0, 0.2, 1)',
|
|
// Objects enter the screen at full velocity from off-screen and
|
|
// slowly decelerate to a resting point.
|
|
easeOut: 'cubic-bezier(0.0, 0, 0.2, 1)',
|
|
// Objects leave the screen at full velocity. They do not decelerate when off-screen.
|
|
easeIn: 'cubic-bezier(0.4, 0, 1, 1)',
|
|
// The sharp curve is used by objects that may return to the screen at any time.
|
|
sharp: 'cubic-bezier(0.4, 0, 0.6, 1)'
|
|
}; // Follow https://material.io/guidelines/motion/duration-easing.html#duration-easing-common-durations
|
|
// to learn when use what timing
|
|
|
|
var duration = {
|
|
shortest: 150,
|
|
shorter: 200,
|
|
short: 250,
|
|
// most basic recommended timing
|
|
standard: 300,
|
|
// this is to be used in complex animations
|
|
complex: 375,
|
|
// recommended when something is entering screen
|
|
enteringScreen: 225,
|
|
// recommended when something is leaving screen
|
|
leavingScreen: 195
|
|
};
|
|
|
|
function formatMs(milliseconds) {
|
|
return "".concat(Math.round(milliseconds), "ms");
|
|
}
|
|
/**
|
|
* @param {string|Array} props
|
|
* @param {object} param
|
|
* @param {string} param.prop
|
|
* @param {number} param.duration
|
|
* @param {string} param.easing
|
|
* @param {number} param.delay
|
|
*/
|
|
|
|
|
|
/* harmony default export */ var transitions = ({
|
|
easing: easing,
|
|
duration: duration,
|
|
create: function create() {
|
|
var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['all'];
|
|
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
|
|
var _options$duration = options.duration,
|
|
durationOption = _options$duration === void 0 ? duration.standard : _options$duration,
|
|
_options$easing = options.easing,
|
|
easingOption = _options$easing === void 0 ? easing.easeInOut : _options$easing,
|
|
_options$delay = options.delay,
|
|
delay = _options$delay === void 0 ? 0 : _options$delay,
|
|
other = (0,objectWithoutProperties/* default */.Z)(options, ["duration", "easing", "delay"]);
|
|
|
|
if (false) { var isNumber, isString; }
|
|
|
|
return (Array.isArray(props) ? props : [props]).map(function (animatedProp) {
|
|
return "".concat(animatedProp, " ").concat(typeof durationOption === 'string' ? durationOption : formatMs(durationOption), " ").concat(easingOption, " ").concat(typeof delay === 'string' ? delay : formatMs(delay));
|
|
}).join(',');
|
|
},
|
|
getAutoHeightDuration: function getAutoHeightDuration(height) {
|
|
if (!height) {
|
|
return 0;
|
|
}
|
|
|
|
var constant = height / 36; // https://www.wolframalpha.com/input/?i=(4+%2B+15+*+(x+%2F+36+)+**+0.25+%2B+(x+%2F+36)+%2F+5)+*+10
|
|
|
|
return Math.round((4 + 15 * Math.pow(constant, 0.25) + constant / 5) * 10);
|
|
}
|
|
});
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/styles/zIndex.js
|
|
// We need to centralize the zIndex definitions as they work
|
|
// like global values in the browser.
|
|
var zIndex = {
|
|
mobileStepper: 1000,
|
|
speedDial: 1050,
|
|
appBar: 1100,
|
|
drawer: 1200,
|
|
modal: 1300,
|
|
snackbar: 1400,
|
|
tooltip: 1500
|
|
};
|
|
/* harmony default export */ var styles_zIndex = (zIndex);
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/styles/createMuiTheme.js
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function createMuiTheme() {
|
|
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
|
|
var _options$breakpoints = options.breakpoints,
|
|
breakpointsInput = _options$breakpoints === void 0 ? {} : _options$breakpoints,
|
|
_options$mixins = options.mixins,
|
|
mixinsInput = _options$mixins === void 0 ? {} : _options$mixins,
|
|
_options$palette = options.palette,
|
|
paletteInput = _options$palette === void 0 ? {} : _options$palette,
|
|
spacingInput = options.spacing,
|
|
_options$typography = options.typography,
|
|
typographyInput = _options$typography === void 0 ? {} : _options$typography,
|
|
other = (0,objectWithoutProperties/* default */.Z)(options, ["breakpoints", "mixins", "palette", "spacing", "typography"]);
|
|
|
|
var palette = createPalette(paletteInput);
|
|
var breakpoints = createBreakpoints(breakpointsInput);
|
|
var spacing = createSpacing(spacingInput);
|
|
var muiTheme = (0,utils_.deepmerge)({
|
|
breakpoints: breakpoints,
|
|
direction: 'ltr',
|
|
mixins: createMixins(breakpoints, spacing, mixinsInput),
|
|
overrides: {},
|
|
// Inject custom styles
|
|
palette: palette,
|
|
props: {},
|
|
// Provide default props
|
|
shadows: styles_shadows,
|
|
typography: createTypography(palette, typographyInput),
|
|
spacing: spacing,
|
|
shape: styles_shape,
|
|
transitions: transitions,
|
|
zIndex: styles_zIndex
|
|
}, other);
|
|
|
|
for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
args[_key - 1] = arguments[_key];
|
|
}
|
|
|
|
muiTheme = args.reduce(function (acc, argument) {
|
|
return (0,utils_.deepmerge)(acc, argument);
|
|
}, muiTheme);
|
|
|
|
if (false) { var traverse, pseudoClasses; }
|
|
|
|
return muiTheme;
|
|
}
|
|
|
|
/* harmony default export */ var styles_createMuiTheme = (createMuiTheme);
|
|
;// CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/styles/defaultTheme.js
|
|
|
|
var defaultTheme = styles_createMuiTheme();
|
|
/* harmony default export */ var styles_defaultTheme = (defaultTheme);
|
|
|
|
/***/ }),
|
|
|
|
/***/ 120:
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
"use strict";
|
|
/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(122);
|
|
/* harmony import */ var _material_ui_styles__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(47);
|
|
/* harmony import */ var _material_ui_styles__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_material_ui_styles__WEBPACK_IMPORTED_MODULE_0__);
|
|
/* harmony import */ var _defaultTheme__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(921);
|
|
|
|
|
|
|
|
|
|
function makeStyles(stylesOrCreator) {
|
|
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
return (0,_material_ui_styles__WEBPACK_IMPORTED_MODULE_0__.makeStyles)(stylesOrCreator, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__/* .default */ .Z)({
|
|
defaultTheme: _defaultTheme__WEBPACK_IMPORTED_MODULE_2__/* .default */ .Z
|
|
}, options));
|
|
}
|
|
|
|
/* harmony default export */ __webpack_exports__["Z"] = (makeStyles);
|
|
|
|
/***/ }),
|
|
|
|
/***/ 543:
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
"use strict";
|
|
/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(122);
|
|
/* harmony import */ var _material_ui_styles__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(47);
|
|
/* harmony import */ var _material_ui_styles__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_material_ui_styles__WEBPACK_IMPORTED_MODULE_0__);
|
|
/* harmony import */ var _defaultTheme__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(921);
|
|
|
|
|
|
|
|
|
|
function withStyles(stylesOrCreator, options) {
|
|
return (0,_material_ui_styles__WEBPACK_IMPORTED_MODULE_0__.withStyles)(stylesOrCreator, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__/* .default */ .Z)({
|
|
defaultTheme: _defaultTheme__WEBPACK_IMPORTED_MODULE_2__/* .default */ .Z
|
|
}, options));
|
|
}
|
|
|
|
/* harmony default export */ __webpack_exports__["Z"] = (withStyles);
|
|
|
|
/***/ }),
|
|
|
|
/***/ 871:
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
"use strict";
|
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
/* harmony export */ "Z": function() { return /* binding */ capitalize; }
|
|
/* harmony export */ });
|
|
/* harmony import */ var _material_ui_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(958);
|
|
/* harmony import */ var _material_ui_utils__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_material_ui_utils__WEBPACK_IMPORTED_MODULE_0__);
|
|
|
|
// It should to be noted that this function isn't equivalent to `text-transform: capitalize`.
|
|
//
|
|
// A strict capitalization should uppercase the first letter of each word a the sentence.
|
|
// We only handle the first word.
|
|
function capitalize(string) {
|
|
if (typeof string !== 'string') {
|
|
throw new Error( false ? 0 : (0,_material_ui_utils__WEBPACK_IMPORTED_MODULE_0__.formatMuiErrorMessage)(7));
|
|
}
|
|
|
|
return string.charAt(0).toUpperCase() + string.slice(1);
|
|
}
|
|
|
|
/***/ })
|
|
|
|
};
|
|
; |