+
+
+ Github User Cards
+
+
+
+
+
\ No newline at end of file
diff --git a/github-user-card/src/App.js b/github-user-card/src/App.js
new file mode 100644
index 0000000000..735a13f5c5
--- /dev/null
+++ b/github-user-card/src/App.js
@@ -0,0 +1,72 @@
+import React from 'react';
+import axios from 'axios';
+import User from './components/user';
+import Followers from './components/followers';
+import Search from './components/search';
+import { CssBaseline } from '@material-ui/core';
+import { StyledContainer, Heading, FollowersContainer } from './components/styles';
+
+class App extends React.Component {
+ constructor(){
+ super();
+ this.state = {
+ username: 'kwnie',
+ userData: [],
+ followers: []
+ }
+ };
+
+ componentDidMount = () => {
+ this.search(this.state.username)
+ };
+
+ componentDidUpdate = (prevProps, prevState) => {
+ if(prevState.userData !== this.state.userData){
+ console.log('userdata has changed')
+ }
+ };
+
+ search = username => {
+
+ axios.get(`https://api.github.com/users/${username}`)
+ .then(res => this.setState({
+ ...this.state,
+ userData: [res.data]
+ }))
+
+ axios.get(`https://api.github.com/users/${username}/followers`)
+ .then(res => this.setState({
+ ...this.state,
+ followers: res.data
+ })
+ )
+ .catch(err => console.log(err))
+ };
+
+ render(){
+ return (
+
+
+
+ Github User Cards
+
+
+
+ {this.state.userData && this.state.userData.map((user, index) => {
+ return
+ })}
+
+ Followers
+
+
+ {this.state.followers && this.state.followers.map((follower, index) => {
+ return
+ })}
+
+
+
+ );
+ }
+}
+
+export default App;
diff --git a/github-user-card/src/components/followers.js b/github-user-card/src/components/followers.js
new file mode 100644
index 0000000000..f31a0ff767
--- /dev/null
+++ b/github-user-card/src/components/followers.js
@@ -0,0 +1,23 @@
+import React from 'react';
+import { StyledCard, FollowerAvatar, StyledCardContent, StyledTypography } from './styles';
+
+class Followers extends React.Component {
+ render(){
+
+ const { follower } = this.props;
+
+ return (
+
+
+
+
+
+ {follower.login}
+
+
+
+ )
+ }
+}
+
+export default Followers;
\ No newline at end of file
diff --git a/github-user-card/src/components/search.js b/github-user-card/src/components/search.js
new file mode 100644
index 0000000000..b8323bb955
--- /dev/null
+++ b/github-user-card/src/components/search.js
@@ -0,0 +1,45 @@
+import React from 'react';
+// import { SearchContainer } from './styles';
+// import { Input } from '@material-ui/core';
+// import SearchIcon from '@material-ui/icons/Search';
+
+class Search extends React.Component {
+
+ constructor() {
+ super();
+ this.state = {
+ username: ""
+ }
+ }
+
+ handleChange = (e) => {
+ this.setState({
+ ...this.state,
+ username: e.target.value
+ })
+ }
+
+ handleSubmit = (e) => {
+ e.preventDefault();
+ this.props.search(this.state.username);
+ this.setState({
+ ...this.state,
+ username: ""
+ })
+ }
+
+ render(){
+ return (
+
+ )
+ }
+};
+
+export default Search;
\ No newline at end of file
diff --git a/github-user-card/src/components/styles.js b/github-user-card/src/components/styles.js
new file mode 100644
index 0000000000..a810daffda
--- /dev/null
+++ b/github-user-card/src/components/styles.js
@@ -0,0 +1,70 @@
+import { styled } from '@material-ui/core/styles';
+import { Container, Typography, Card, Avatar, FormControl } from '@material-ui/core';
+
+export const StyledContainer = styled(Container) ({
+ display: 'flex',
+ flexDirection: 'column',
+ alignItems: 'center',
+ background: "url('https://cdn.pixabay.com/photo/2020/06/12/09/30/code-5289831_1280.jpg') no-repeat center center fixed",
+ '-webkit-background-size': 'cover',
+ '-moz-background-size': 'cover',
+ '-o-background-size': 'cover',
+ backgroundSize: 'cover',
+ padding: 0,
+});
+
+export const FollowersContainer = styled(Container) ({
+ display: 'flex',
+ flexDirection: 'row',
+ flexWrap: 'wrap',
+ justifyContent: 'center',
+});
+
+export const Heading = styled(Container) ({
+ backgroundColor: 'white',
+ width: '100%',
+ padding: '2%',
+ fontSize: '40px',
+ display: 'flex',
+ justifyContent: 'center',
+});
+
+export const StyledCard = styled(Card)({
+ width: '25%',
+ padding: '1%',
+ margin: '2%',
+});
+
+export const StyledCardContent = styled(Typography) ({
+ padding: '1%',
+ display: 'flex',
+ flexDirection: 'column',
+ alignItems: 'center',
+})
+
+export const UserAvatar = styled(Avatar) ({
+ width: '60%',
+ height: '60%',
+})
+
+export const FollowerAvatar = styled(Avatar) ({
+ width: '30%',
+ height: '30%',
+})
+
+export const StyledTypography = styled(Typography) ({
+ fontSize: '18px',
+ padding: '5%',
+})
+
+export const SearchContainer = styled(FormControl) ({
+ backgroundColor: 'white',
+ width: '40%',
+ display: 'flex',
+ flexDirection: 'row',
+ justifyContent: 'center',
+ padding: '1%',
+ margin: '3%',
+ outline: '1px solid'
+})
+
diff --git a/github-user-card/src/components/user.js b/github-user-card/src/components/user.js
new file mode 100644
index 0000000000..08e75ddfd9
--- /dev/null
+++ b/github-user-card/src/components/user.js
@@ -0,0 +1,32 @@
+import React from 'react';
+import { StyledCard, StyledCardContent, UserAvatar, StyledTypography } from './styles';
+import { Container } from '@material-ui/core';
+
+class User extends React.Component {
+ render(){
+
+ const { user } = this.props;
+
+ return (
+
+
+
+
+
+
+ {user.name}
+ {user.login}
+ {user.bio}
+ {user.location}
+ Followers: {user.followers}
+ Following: {user.following}
+
+
+
+
+
+ );
+ }
+}
+
+export default User;
\ No newline at end of file
diff --git a/github-user-card/src/index.js b/github-user-card/src/index.js
new file mode 100644
index 0000000000..6289feaabc
--- /dev/null
+++ b/github-user-card/src/index.js
@@ -0,0 +1,8 @@
+import React from 'react';
+import ReactDOM from 'react-dom';
+import App from './App';
+
+ReactDOM.render(
+ ,
+ document.getElementById('root')
+);
diff --git a/node_modules/.bin/loose-envify b/node_modules/.bin/loose-envify
new file mode 120000
index 0000000000..ed9009c5aa
--- /dev/null
+++ b/node_modules/.bin/loose-envify
@@ -0,0 +1 @@
+../loose-envify/cli.js
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/LICENSE b/node_modules/@babel/runtime/LICENSE
new file mode 100644
index 0000000000..f31575ec77
--- /dev/null
+++ b/node_modules/@babel/runtime/LICENSE
@@ -0,0 +1,22 @@
+MIT License
+
+Copyright (c) 2014-present Sebastian McKenzie and other contributors
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/node_modules/@babel/runtime/README.md b/node_modules/@babel/runtime/README.md
new file mode 100644
index 0000000000..119c99d95d
--- /dev/null
+++ b/node_modules/@babel/runtime/README.md
@@ -0,0 +1,19 @@
+# @babel/runtime
+
+> babel's modular runtime helpers
+
+See our website [@babel/runtime](https://babeljs.io/docs/en/babel-runtime) for more information.
+
+## Install
+
+Using npm:
+
+```sh
+npm install --save @babel/runtime
+```
+
+or using yarn:
+
+```sh
+yarn add @babel/runtime
+```
diff --git a/node_modules/@babel/runtime/helpers/AsyncGenerator.js b/node_modules/@babel/runtime/helpers/AsyncGenerator.js
new file mode 100644
index 0000000000..cdca7f5505
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/AsyncGenerator.js
@@ -0,0 +1,99 @@
+var AwaitValue = require("./AwaitValue.js");
+
+function AsyncGenerator(gen) {
+ var front, back;
+
+ function send(key, arg) {
+ return new Promise(function (resolve, reject) {
+ var request = {
+ key: key,
+ arg: arg,
+ resolve: resolve,
+ reject: reject,
+ next: null
+ };
+
+ if (back) {
+ back = back.next = request;
+ } else {
+ front = back = request;
+ resume(key, arg);
+ }
+ });
+ }
+
+ function resume(key, arg) {
+ try {
+ var result = gen[key](arg);
+ var value = result.value;
+ var wrappedAwait = value instanceof AwaitValue;
+ Promise.resolve(wrappedAwait ? value.wrapped : value).then(function (arg) {
+ if (wrappedAwait) {
+ resume(key === "return" ? "return" : "next", arg);
+ return;
+ }
+
+ settle(result.done ? "return" : "normal", arg);
+ }, function (err) {
+ resume("throw", err);
+ });
+ } catch (err) {
+ settle("throw", err);
+ }
+ }
+
+ function settle(type, value) {
+ switch (type) {
+ case "return":
+ front.resolve({
+ value: value,
+ done: true
+ });
+ break;
+
+ case "throw":
+ front.reject(value);
+ break;
+
+ default:
+ front.resolve({
+ value: value,
+ done: false
+ });
+ break;
+ }
+
+ front = front.next;
+
+ if (front) {
+ resume(front.key, front.arg);
+ } else {
+ back = null;
+ }
+ }
+
+ this._invoke = send;
+
+ if (typeof gen["return"] !== "function") {
+ this["return"] = undefined;
+ }
+}
+
+AsyncGenerator.prototype[typeof Symbol === "function" && Symbol.asyncIterator || "@@asyncIterator"] = function () {
+ return this;
+};
+
+AsyncGenerator.prototype.next = function (arg) {
+ return this._invoke("next", arg);
+};
+
+AsyncGenerator.prototype["throw"] = function (arg) {
+ return this._invoke("throw", arg);
+};
+
+AsyncGenerator.prototype["return"] = function (arg) {
+ return this._invoke("return", arg);
+};
+
+module.exports = AsyncGenerator;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/AwaitValue.js b/node_modules/@babel/runtime/helpers/AwaitValue.js
new file mode 100644
index 0000000000..d36df6ec3c
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/AwaitValue.js
@@ -0,0 +1,6 @@
+function _AwaitValue(value) {
+ this.wrapped = value;
+}
+
+module.exports = _AwaitValue;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/applyDecoratedDescriptor.js b/node_modules/@babel/runtime/helpers/applyDecoratedDescriptor.js
new file mode 100644
index 0000000000..feaeab8d26
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/applyDecoratedDescriptor.js
@@ -0,0 +1,31 @@
+function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) {
+ var desc = {};
+ Object.keys(descriptor).forEach(function (key) {
+ desc[key] = descriptor[key];
+ });
+ desc.enumerable = !!desc.enumerable;
+ desc.configurable = !!desc.configurable;
+
+ if ('value' in desc || desc.initializer) {
+ desc.writable = true;
+ }
+
+ desc = decorators.slice().reverse().reduce(function (desc, decorator) {
+ return decorator(target, property, desc) || desc;
+ }, desc);
+
+ if (context && desc.initializer !== void 0) {
+ desc.value = desc.initializer ? desc.initializer.call(context) : void 0;
+ desc.initializer = undefined;
+ }
+
+ if (desc.initializer === void 0) {
+ Object.defineProperty(target, property, desc);
+ desc = null;
+ }
+
+ return desc;
+}
+
+module.exports = _applyDecoratedDescriptor;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/arrayLikeToArray.js b/node_modules/@babel/runtime/helpers/arrayLikeToArray.js
new file mode 100644
index 0000000000..a459c8ead7
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/arrayLikeToArray.js
@@ -0,0 +1,12 @@
+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;
+}
+
+module.exports = _arrayLikeToArray;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/arrayWithHoles.js b/node_modules/@babel/runtime/helpers/arrayWithHoles.js
new file mode 100644
index 0000000000..9a36e2aa02
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/arrayWithHoles.js
@@ -0,0 +1,6 @@
+function _arrayWithHoles(arr) {
+ if (Array.isArray(arr)) return arr;
+}
+
+module.exports = _arrayWithHoles;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/arrayWithoutHoles.js b/node_modules/@babel/runtime/helpers/arrayWithoutHoles.js
new file mode 100644
index 0000000000..aac913f108
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/arrayWithoutHoles.js
@@ -0,0 +1,8 @@
+var arrayLikeToArray = require("./arrayLikeToArray.js");
+
+function _arrayWithoutHoles(arr) {
+ if (Array.isArray(arr)) return arrayLikeToArray(arr);
+}
+
+module.exports = _arrayWithoutHoles;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/assertThisInitialized.js b/node_modules/@babel/runtime/helpers/assertThisInitialized.js
new file mode 100644
index 0000000000..352e1e6087
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/assertThisInitialized.js
@@ -0,0 +1,10 @@
+function _assertThisInitialized(self) {
+ if (self === void 0) {
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
+ }
+
+ return self;
+}
+
+module.exports = _assertThisInitialized;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/asyncGeneratorDelegate.js b/node_modules/@babel/runtime/helpers/asyncGeneratorDelegate.js
new file mode 100644
index 0000000000..91f6d61bdc
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/asyncGeneratorDelegate.js
@@ -0,0 +1,57 @@
+function _asyncGeneratorDelegate(inner, awaitWrap) {
+ var iter = {},
+ waiting = false;
+
+ function pump(key, value) {
+ waiting = true;
+ value = new Promise(function (resolve) {
+ resolve(inner[key](value));
+ });
+ return {
+ done: false,
+ value: awaitWrap(value)
+ };
+ }
+
+ ;
+
+ iter[typeof Symbol !== "undefined" && Symbol.iterator || "@@iterator"] = function () {
+ return this;
+ };
+
+ iter.next = function (value) {
+ if (waiting) {
+ waiting = false;
+ return value;
+ }
+
+ return pump("next", value);
+ };
+
+ if (typeof inner["throw"] === "function") {
+ iter["throw"] = function (value) {
+ if (waiting) {
+ waiting = false;
+ throw value;
+ }
+
+ return pump("throw", value);
+ };
+ }
+
+ if (typeof inner["return"] === "function") {
+ iter["return"] = function (value) {
+ if (waiting) {
+ waiting = false;
+ return value;
+ }
+
+ return pump("return", value);
+ };
+ }
+
+ return iter;
+}
+
+module.exports = _asyncGeneratorDelegate;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/asyncIterator.js b/node_modules/@babel/runtime/helpers/asyncIterator.js
new file mode 100644
index 0000000000..d59aa99d37
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/asyncIterator.js
@@ -0,0 +1,16 @@
+function _asyncIterator(iterable) {
+ var method;
+
+ if (typeof Symbol !== "undefined") {
+ if (Symbol.asyncIterator) method = iterable[Symbol.asyncIterator];
+ if (method == null && Symbol.iterator) method = iterable[Symbol.iterator];
+ }
+
+ if (method == null) method = iterable["@@asyncIterator"];
+ if (method == null) method = iterable["@@iterator"];
+ if (method == null) throw new TypeError("Object is not async iterable");
+ return method.call(iterable);
+}
+
+module.exports = _asyncIterator;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/asyncToGenerator.js b/node_modules/@babel/runtime/helpers/asyncToGenerator.js
new file mode 100644
index 0000000000..ec5daa8ced
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/asyncToGenerator.js
@@ -0,0 +1,38 @@
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
+ try {
+ var info = gen[key](arg);
+ var value = info.value;
+ } catch (error) {
+ reject(error);
+ return;
+ }
+
+ if (info.done) {
+ resolve(value);
+ } else {
+ Promise.resolve(value).then(_next, _throw);
+ }
+}
+
+function _asyncToGenerator(fn) {
+ return function () {
+ var self = this,
+ args = arguments;
+ return new Promise(function (resolve, reject) {
+ var gen = fn.apply(self, args);
+
+ function _next(value) {
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
+ }
+
+ function _throw(err) {
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
+ }
+
+ _next(undefined);
+ });
+ };
+}
+
+module.exports = _asyncToGenerator;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/awaitAsyncGenerator.js b/node_modules/@babel/runtime/helpers/awaitAsyncGenerator.js
new file mode 100644
index 0000000000..c338fee0db
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/awaitAsyncGenerator.js
@@ -0,0 +1,8 @@
+var AwaitValue = require("./AwaitValue.js");
+
+function _awaitAsyncGenerator(value) {
+ return new AwaitValue(value);
+}
+
+module.exports = _awaitAsyncGenerator;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/classCallCheck.js b/node_modules/@babel/runtime/helpers/classCallCheck.js
new file mode 100644
index 0000000000..026da41c1c
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/classCallCheck.js
@@ -0,0 +1,8 @@
+function _classCallCheck(instance, Constructor) {
+ if (!(instance instanceof Constructor)) {
+ throw new TypeError("Cannot call a class as a function");
+ }
+}
+
+module.exports = _classCallCheck;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/classNameTDZError.js b/node_modules/@babel/runtime/helpers/classNameTDZError.js
new file mode 100644
index 0000000000..bf740fadd7
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/classNameTDZError.js
@@ -0,0 +1,6 @@
+function _classNameTDZError(name) {
+ throw new Error("Class \"" + name + "\" cannot be referenced in computed property keys.");
+}
+
+module.exports = _classNameTDZError;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/classPrivateFieldDestructureSet.js b/node_modules/@babel/runtime/helpers/classPrivateFieldDestructureSet.js
new file mode 100644
index 0000000000..50b9fb01db
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/classPrivateFieldDestructureSet.js
@@ -0,0 +1,11 @@
+var classApplyDescriptorDestructureSet = require("./classApplyDescriptorDestructureSet.js");
+
+var classExtractFieldDescriptor = require("./classExtractFieldDescriptor.js");
+
+function _classPrivateFieldDestructureSet(receiver, privateMap) {
+ var descriptor = classExtractFieldDescriptor(receiver, privateMap, "set");
+ return classApplyDescriptorDestructureSet(receiver, descriptor);
+}
+
+module.exports = _classPrivateFieldDestructureSet;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/classPrivateFieldGet.js b/node_modules/@babel/runtime/helpers/classPrivateFieldGet.js
new file mode 100644
index 0000000000..df559699ce
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/classPrivateFieldGet.js
@@ -0,0 +1,11 @@
+var classApplyDescriptorGet = require("./classApplyDescriptorGet.js");
+
+var classExtractFieldDescriptor = require("./classExtractFieldDescriptor.js");
+
+function _classPrivateFieldGet(receiver, privateMap) {
+ var descriptor = classExtractFieldDescriptor(receiver, privateMap, "get");
+ return classApplyDescriptorGet(receiver, descriptor);
+}
+
+module.exports = _classPrivateFieldGet;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/classPrivateFieldLooseBase.js b/node_modules/@babel/runtime/helpers/classPrivateFieldLooseBase.js
new file mode 100644
index 0000000000..3acdb7b0fa
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/classPrivateFieldLooseBase.js
@@ -0,0 +1,10 @@
+function _classPrivateFieldBase(receiver, privateKey) {
+ if (!Object.prototype.hasOwnProperty.call(receiver, privateKey)) {
+ throw new TypeError("attempted to use private field on non-instance");
+ }
+
+ return receiver;
+}
+
+module.exports = _classPrivateFieldBase;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/classPrivateFieldLooseKey.js b/node_modules/@babel/runtime/helpers/classPrivateFieldLooseKey.js
new file mode 100644
index 0000000000..3c0c552b75
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/classPrivateFieldLooseKey.js
@@ -0,0 +1,8 @@
+var id = 0;
+
+function _classPrivateFieldKey(name) {
+ return "__private_" + id++ + "_" + name;
+}
+
+module.exports = _classPrivateFieldKey;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/classPrivateFieldSet.js b/node_modules/@babel/runtime/helpers/classPrivateFieldSet.js
new file mode 100644
index 0000000000..d4a59b0b7e
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/classPrivateFieldSet.js
@@ -0,0 +1,12 @@
+var classApplyDescriptorSet = require("./classApplyDescriptorSet.js");
+
+var classExtractFieldDescriptor = require("./classExtractFieldDescriptor.js");
+
+function _classPrivateFieldSet(receiver, privateMap, value) {
+ var descriptor = classExtractFieldDescriptor(receiver, privateMap, "set");
+ classApplyDescriptorSet(receiver, descriptor, value);
+ return value;
+}
+
+module.exports = _classPrivateFieldSet;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/classPrivateMethodGet.js b/node_modules/@babel/runtime/helpers/classPrivateMethodGet.js
new file mode 100644
index 0000000000..d2f8ab1549
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/classPrivateMethodGet.js
@@ -0,0 +1,10 @@
+function _classPrivateMethodGet(receiver, privateSet, fn) {
+ if (!privateSet.has(receiver)) {
+ throw new TypeError("attempted to get private field on non-instance");
+ }
+
+ return fn;
+}
+
+module.exports = _classPrivateMethodGet;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/classPrivateMethodSet.js b/node_modules/@babel/runtime/helpers/classPrivateMethodSet.js
new file mode 100644
index 0000000000..f500d16bef
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/classPrivateMethodSet.js
@@ -0,0 +1,6 @@
+function _classPrivateMethodSet() {
+ throw new TypeError("attempted to reassign private method");
+}
+
+module.exports = _classPrivateMethodSet;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/classStaticPrivateFieldSpecGet.js b/node_modules/@babel/runtime/helpers/classStaticPrivateFieldSpecGet.js
new file mode 100644
index 0000000000..136c1f66ea
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/classStaticPrivateFieldSpecGet.js
@@ -0,0 +1,14 @@
+var classApplyDescriptorGet = require("./classApplyDescriptorGet.js");
+
+var classCheckPrivateStaticAccess = require("./classCheckPrivateStaticAccess.js");
+
+var classCheckPrivateStaticFieldDescriptor = require("./classCheckPrivateStaticFieldDescriptor.js");
+
+function _classStaticPrivateFieldSpecGet(receiver, classConstructor, descriptor) {
+ classCheckPrivateStaticAccess(receiver, classConstructor);
+ classCheckPrivateStaticFieldDescriptor(descriptor, "get");
+ return classApplyDescriptorGet(receiver, descriptor);
+}
+
+module.exports = _classStaticPrivateFieldSpecGet;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/classStaticPrivateFieldSpecSet.js b/node_modules/@babel/runtime/helpers/classStaticPrivateFieldSpecSet.js
new file mode 100644
index 0000000000..e6ecfa4b14
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/classStaticPrivateFieldSpecSet.js
@@ -0,0 +1,15 @@
+var classApplyDescriptorSet = require("./classApplyDescriptorSet.js");
+
+var classCheckPrivateStaticAccess = require("./classCheckPrivateStaticAccess.js");
+
+var classCheckPrivateStaticFieldDescriptor = require("./classCheckPrivateStaticFieldDescriptor.js");
+
+function _classStaticPrivateFieldSpecSet(receiver, classConstructor, descriptor, value) {
+ classCheckPrivateStaticAccess(receiver, classConstructor);
+ classCheckPrivateStaticFieldDescriptor(descriptor, "set");
+ classApplyDescriptorSet(receiver, descriptor, value);
+ return value;
+}
+
+module.exports = _classStaticPrivateFieldSpecSet;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/classStaticPrivateMethodGet.js b/node_modules/@babel/runtime/helpers/classStaticPrivateMethodGet.js
new file mode 100644
index 0000000000..5bc41fc74c
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/classStaticPrivateMethodGet.js
@@ -0,0 +1,9 @@
+var classCheckPrivateStaticAccess = require("./classCheckPrivateStaticAccess.js");
+
+function _classStaticPrivateMethodGet(receiver, classConstructor, method) {
+ classCheckPrivateStaticAccess(receiver, classConstructor);
+ return method;
+}
+
+module.exports = _classStaticPrivateMethodGet;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/classStaticPrivateMethodSet.js b/node_modules/@babel/runtime/helpers/classStaticPrivateMethodSet.js
new file mode 100644
index 0000000000..06cfcc1631
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/classStaticPrivateMethodSet.js
@@ -0,0 +1,6 @@
+function _classStaticPrivateMethodSet() {
+ throw new TypeError("attempted to set read only static private field");
+}
+
+module.exports = _classStaticPrivateMethodSet;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/construct.js b/node_modules/@babel/runtime/helpers/construct.js
new file mode 100644
index 0000000000..108b39a734
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/construct.js
@@ -0,0 +1,26 @@
+var setPrototypeOf = require("./setPrototypeOf.js");
+
+var isNativeReflectConstruct = require("./isNativeReflectConstruct.js");
+
+function _construct(Parent, args, Class) {
+ if (isNativeReflectConstruct()) {
+ module.exports = _construct = Reflect.construct;
+ module.exports["default"] = module.exports, module.exports.__esModule = true;
+ } else {
+ module.exports = _construct = function _construct(Parent, args, Class) {
+ var a = [null];
+ a.push.apply(a, args);
+ var Constructor = Function.bind.apply(Parent, a);
+ var instance = new Constructor();
+ if (Class) setPrototypeOf(instance, Class.prototype);
+ return instance;
+ };
+
+ module.exports["default"] = module.exports, module.exports.__esModule = true;
+ }
+
+ return _construct.apply(null, arguments);
+}
+
+module.exports = _construct;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/createClass.js b/node_modules/@babel/runtime/helpers/createClass.js
new file mode 100644
index 0000000000..293bd612fc
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/createClass.js
@@ -0,0 +1,18 @@
+function _defineProperties(target, props) {
+ for (var i = 0; i < props.length; i++) {
+ var descriptor = props[i];
+ descriptor.enumerable = descriptor.enumerable || false;
+ descriptor.configurable = true;
+ if ("value" in descriptor) descriptor.writable = true;
+ Object.defineProperty(target, descriptor.key, descriptor);
+ }
+}
+
+function _createClass(Constructor, protoProps, staticProps) {
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
+ if (staticProps) _defineProperties(Constructor, staticProps);
+ return Constructor;
+}
+
+module.exports = _createClass;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/createForOfIteratorHelper.js b/node_modules/@babel/runtime/helpers/createForOfIteratorHelper.js
new file mode 100644
index 0000000000..90988658f9
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/createForOfIteratorHelper.js
@@ -0,0 +1,61 @@
+var unsupportedIterableToArray = require("./unsupportedIterableToArray.js");
+
+function _createForOfIteratorHelper(o, allowArrayLike) {
+ var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"];
+
+ if (!it) {
+ if (Array.isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
+ if (it) o = it;
+ var i = 0;
+
+ var F = function F() {};
+
+ return {
+ s: F,
+ n: function n() {
+ if (i >= o.length) return {
+ done: true
+ };
+ return {
+ done: false,
+ value: o[i++]
+ };
+ },
+ e: function e(_e) {
+ throw _e;
+ },
+ f: F
+ };
+ }
+
+ throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
+ }
+
+ var normalCompletion = true,
+ didErr = false,
+ err;
+ return {
+ s: function s() {
+ it = it.call(o);
+ },
+ n: function n() {
+ var step = it.next();
+ normalCompletion = step.done;
+ return step;
+ },
+ e: function e(_e2) {
+ didErr = true;
+ err = _e2;
+ },
+ f: function f() {
+ try {
+ if (!normalCompletion && it["return"] != null) it["return"]();
+ } finally {
+ if (didErr) throw err;
+ }
+ }
+ };
+}
+
+module.exports = _createForOfIteratorHelper;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/createForOfIteratorHelperLoose.js b/node_modules/@babel/runtime/helpers/createForOfIteratorHelperLoose.js
new file mode 100644
index 0000000000..2dedbc99a5
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/createForOfIteratorHelperLoose.js
@@ -0,0 +1,25 @@
+var unsupportedIterableToArray = require("./unsupportedIterableToArray.js");
+
+function _createForOfIteratorHelperLoose(o, allowArrayLike) {
+ var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"];
+ if (it) return (it = it.call(o)).next.bind(it);
+
+ if (Array.isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
+ if (it) o = it;
+ var i = 0;
+ return function () {
+ if (i >= o.length) return {
+ done: true
+ };
+ return {
+ done: false,
+ value: o[i++]
+ };
+ };
+ }
+
+ throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
+}
+
+module.exports = _createForOfIteratorHelperLoose;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/createSuper.js b/node_modules/@babel/runtime/helpers/createSuper.js
new file mode 100644
index 0000000000..0acdd513ba
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/createSuper.js
@@ -0,0 +1,25 @@
+var getPrototypeOf = require("./getPrototypeOf.js");
+
+var isNativeReflectConstruct = require("./isNativeReflectConstruct.js");
+
+var possibleConstructorReturn = require("./possibleConstructorReturn.js");
+
+function _createSuper(Derived) {
+ var hasNativeReflectConstruct = isNativeReflectConstruct();
+ return function _createSuperInternal() {
+ var Super = getPrototypeOf(Derived),
+ result;
+
+ if (hasNativeReflectConstruct) {
+ var NewTarget = getPrototypeOf(this).constructor;
+ result = Reflect.construct(Super, arguments, NewTarget);
+ } else {
+ result = Super.apply(this, arguments);
+ }
+
+ return possibleConstructorReturn(this, result);
+ };
+}
+
+module.exports = _createSuper;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/decorate.js b/node_modules/@babel/runtime/helpers/decorate.js
new file mode 100644
index 0000000000..80d1751656
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/decorate.js
@@ -0,0 +1,401 @@
+var toArray = require("./toArray.js");
+
+var toPropertyKey = require("./toPropertyKey.js");
+
+function _decorate(decorators, factory, superClass, mixins) {
+ var api = _getDecoratorsApi();
+
+ if (mixins) {
+ for (var i = 0; i < mixins.length; i++) {
+ api = mixins[i](api);
+ }
+ }
+
+ var r = factory(function initialize(O) {
+ api.initializeInstanceElements(O, decorated.elements);
+ }, superClass);
+ var decorated = api.decorateClass(_coalesceClassElements(r.d.map(_createElementDescriptor)), decorators);
+ api.initializeClassElements(r.F, decorated.elements);
+ return api.runClassFinishers(r.F, decorated.finishers);
+}
+
+function _getDecoratorsApi() {
+ _getDecoratorsApi = function _getDecoratorsApi() {
+ return api;
+ };
+
+ var api = {
+ elementsDefinitionOrder: [["method"], ["field"]],
+ initializeInstanceElements: function initializeInstanceElements(O, elements) {
+ ["method", "field"].forEach(function (kind) {
+ elements.forEach(function (element) {
+ if (element.kind === kind && element.placement === "own") {
+ this.defineClassElement(O, element);
+ }
+ }, this);
+ }, this);
+ },
+ initializeClassElements: function initializeClassElements(F, elements) {
+ var proto = F.prototype;
+ ["method", "field"].forEach(function (kind) {
+ elements.forEach(function (element) {
+ var placement = element.placement;
+
+ if (element.kind === kind && (placement === "static" || placement === "prototype")) {
+ var receiver = placement === "static" ? F : proto;
+ this.defineClassElement(receiver, element);
+ }
+ }, this);
+ }, this);
+ },
+ defineClassElement: function defineClassElement(receiver, element) {
+ var descriptor = element.descriptor;
+
+ if (element.kind === "field") {
+ var initializer = element.initializer;
+ descriptor = {
+ enumerable: descriptor.enumerable,
+ writable: descriptor.writable,
+ configurable: descriptor.configurable,
+ value: initializer === void 0 ? void 0 : initializer.call(receiver)
+ };
+ }
+
+ Object.defineProperty(receiver, element.key, descriptor);
+ },
+ decorateClass: function decorateClass(elements, decorators) {
+ var newElements = [];
+ var finishers = [];
+ var placements = {
+ "static": [],
+ prototype: [],
+ own: []
+ };
+ elements.forEach(function (element) {
+ this.addElementPlacement(element, placements);
+ }, this);
+ elements.forEach(function (element) {
+ if (!_hasDecorators(element)) return newElements.push(element);
+ var elementFinishersExtras = this.decorateElement(element, placements);
+ newElements.push(elementFinishersExtras.element);
+ newElements.push.apply(newElements, elementFinishersExtras.extras);
+ finishers.push.apply(finishers, elementFinishersExtras.finishers);
+ }, this);
+
+ if (!decorators) {
+ return {
+ elements: newElements,
+ finishers: finishers
+ };
+ }
+
+ var result = this.decorateConstructor(newElements, decorators);
+ finishers.push.apply(finishers, result.finishers);
+ result.finishers = finishers;
+ return result;
+ },
+ addElementPlacement: function addElementPlacement(element, placements, silent) {
+ var keys = placements[element.placement];
+
+ if (!silent && keys.indexOf(element.key) !== -1) {
+ throw new TypeError("Duplicated element (" + element.key + ")");
+ }
+
+ keys.push(element.key);
+ },
+ decorateElement: function decorateElement(element, placements) {
+ var extras = [];
+ var finishers = [];
+
+ for (var decorators = element.decorators, i = decorators.length - 1; i >= 0; i--) {
+ var keys = placements[element.placement];
+ keys.splice(keys.indexOf(element.key), 1);
+ var elementObject = this.fromElementDescriptor(element);
+ var elementFinisherExtras = this.toElementFinisherExtras((0, decorators[i])(elementObject) || elementObject);
+ element = elementFinisherExtras.element;
+ this.addElementPlacement(element, placements);
+
+ if (elementFinisherExtras.finisher) {
+ finishers.push(elementFinisherExtras.finisher);
+ }
+
+ var newExtras = elementFinisherExtras.extras;
+
+ if (newExtras) {
+ for (var j = 0; j < newExtras.length; j++) {
+ this.addElementPlacement(newExtras[j], placements);
+ }
+
+ extras.push.apply(extras, newExtras);
+ }
+ }
+
+ return {
+ element: element,
+ finishers: finishers,
+ extras: extras
+ };
+ },
+ decorateConstructor: function decorateConstructor(elements, decorators) {
+ var finishers = [];
+
+ for (var i = decorators.length - 1; i >= 0; i--) {
+ var obj = this.fromClassDescriptor(elements);
+ var elementsAndFinisher = this.toClassDescriptor((0, decorators[i])(obj) || obj);
+
+ if (elementsAndFinisher.finisher !== undefined) {
+ finishers.push(elementsAndFinisher.finisher);
+ }
+
+ if (elementsAndFinisher.elements !== undefined) {
+ elements = elementsAndFinisher.elements;
+
+ for (var j = 0; j < elements.length - 1; j++) {
+ for (var k = j + 1; k < elements.length; k++) {
+ if (elements[j].key === elements[k].key && elements[j].placement === elements[k].placement) {
+ throw new TypeError("Duplicated element (" + elements[j].key + ")");
+ }
+ }
+ }
+ }
+ }
+
+ return {
+ elements: elements,
+ finishers: finishers
+ };
+ },
+ fromElementDescriptor: function fromElementDescriptor(element) {
+ var obj = {
+ kind: element.kind,
+ key: element.key,
+ placement: element.placement,
+ descriptor: element.descriptor
+ };
+ var desc = {
+ value: "Descriptor",
+ configurable: true
+ };
+ Object.defineProperty(obj, Symbol.toStringTag, desc);
+ if (element.kind === "field") obj.initializer = element.initializer;
+ return obj;
+ },
+ toElementDescriptors: function toElementDescriptors(elementObjects) {
+ if (elementObjects === undefined) return;
+ return toArray(elementObjects).map(function (elementObject) {
+ var element = this.toElementDescriptor(elementObject);
+ this.disallowProperty(elementObject, "finisher", "An element descriptor");
+ this.disallowProperty(elementObject, "extras", "An element descriptor");
+ return element;
+ }, this);
+ },
+ toElementDescriptor: function toElementDescriptor(elementObject) {
+ var kind = String(elementObject.kind);
+
+ if (kind !== "method" && kind !== "field") {
+ throw new TypeError('An element descriptor\'s .kind property must be either "method" or' + ' "field", but a decorator created an element descriptor with' + ' .kind "' + kind + '"');
+ }
+
+ var key = toPropertyKey(elementObject.key);
+ var placement = String(elementObject.placement);
+
+ if (placement !== "static" && placement !== "prototype" && placement !== "own") {
+ throw new TypeError('An element descriptor\'s .placement property must be one of "static",' + ' "prototype" or "own", but a decorator created an element descriptor' + ' with .placement "' + placement + '"');
+ }
+
+ var descriptor = elementObject.descriptor;
+ this.disallowProperty(elementObject, "elements", "An element descriptor");
+ var element = {
+ kind: kind,
+ key: key,
+ placement: placement,
+ descriptor: Object.assign({}, descriptor)
+ };
+
+ if (kind !== "field") {
+ this.disallowProperty(elementObject, "initializer", "A method descriptor");
+ } else {
+ this.disallowProperty(descriptor, "get", "The property descriptor of a field descriptor");
+ this.disallowProperty(descriptor, "set", "The property descriptor of a field descriptor");
+ this.disallowProperty(descriptor, "value", "The property descriptor of a field descriptor");
+ element.initializer = elementObject.initializer;
+ }
+
+ return element;
+ },
+ toElementFinisherExtras: function toElementFinisherExtras(elementObject) {
+ var element = this.toElementDescriptor(elementObject);
+
+ var finisher = _optionalCallableProperty(elementObject, "finisher");
+
+ var extras = this.toElementDescriptors(elementObject.extras);
+ return {
+ element: element,
+ finisher: finisher,
+ extras: extras
+ };
+ },
+ fromClassDescriptor: function fromClassDescriptor(elements) {
+ var obj = {
+ kind: "class",
+ elements: elements.map(this.fromElementDescriptor, this)
+ };
+ var desc = {
+ value: "Descriptor",
+ configurable: true
+ };
+ Object.defineProperty(obj, Symbol.toStringTag, desc);
+ return obj;
+ },
+ toClassDescriptor: function toClassDescriptor(obj) {
+ var kind = String(obj.kind);
+
+ if (kind !== "class") {
+ throw new TypeError('A class descriptor\'s .kind property must be "class", but a decorator' + ' created a class descriptor with .kind "' + kind + '"');
+ }
+
+ this.disallowProperty(obj, "key", "A class descriptor");
+ this.disallowProperty(obj, "placement", "A class descriptor");
+ this.disallowProperty(obj, "descriptor", "A class descriptor");
+ this.disallowProperty(obj, "initializer", "A class descriptor");
+ this.disallowProperty(obj, "extras", "A class descriptor");
+
+ var finisher = _optionalCallableProperty(obj, "finisher");
+
+ var elements = this.toElementDescriptors(obj.elements);
+ return {
+ elements: elements,
+ finisher: finisher
+ };
+ },
+ runClassFinishers: function runClassFinishers(constructor, finishers) {
+ for (var i = 0; i < finishers.length; i++) {
+ var newConstructor = (0, finishers[i])(constructor);
+
+ if (newConstructor !== undefined) {
+ if (typeof newConstructor !== "function") {
+ throw new TypeError("Finishers must return a constructor.");
+ }
+
+ constructor = newConstructor;
+ }
+ }
+
+ return constructor;
+ },
+ disallowProperty: function disallowProperty(obj, name, objectType) {
+ if (obj[name] !== undefined) {
+ throw new TypeError(objectType + " can't have a ." + name + " property.");
+ }
+ }
+ };
+ return api;
+}
+
+function _createElementDescriptor(def) {
+ var key = toPropertyKey(def.key);
+ var descriptor;
+
+ if (def.kind === "method") {
+ descriptor = {
+ value: def.value,
+ writable: true,
+ configurable: true,
+ enumerable: false
+ };
+ } else if (def.kind === "get") {
+ descriptor = {
+ get: def.value,
+ configurable: true,
+ enumerable: false
+ };
+ } else if (def.kind === "set") {
+ descriptor = {
+ set: def.value,
+ configurable: true,
+ enumerable: false
+ };
+ } else if (def.kind === "field") {
+ descriptor = {
+ configurable: true,
+ writable: true,
+ enumerable: true
+ };
+ }
+
+ var element = {
+ kind: def.kind === "field" ? "field" : "method",
+ key: key,
+ placement: def["static"] ? "static" : def.kind === "field" ? "own" : "prototype",
+ descriptor: descriptor
+ };
+ if (def.decorators) element.decorators = def.decorators;
+ if (def.kind === "field") element.initializer = def.value;
+ return element;
+}
+
+function _coalesceGetterSetter(element, other) {
+ if (element.descriptor.get !== undefined) {
+ other.descriptor.get = element.descriptor.get;
+ } else {
+ other.descriptor.set = element.descriptor.set;
+ }
+}
+
+function _coalesceClassElements(elements) {
+ var newElements = [];
+
+ var isSameElement = function isSameElement(other) {
+ return other.kind === "method" && other.key === element.key && other.placement === element.placement;
+ };
+
+ for (var i = 0; i < elements.length; i++) {
+ var element = elements[i];
+ var other;
+
+ if (element.kind === "method" && (other = newElements.find(isSameElement))) {
+ if (_isDataDescriptor(element.descriptor) || _isDataDescriptor(other.descriptor)) {
+ if (_hasDecorators(element) || _hasDecorators(other)) {
+ throw new ReferenceError("Duplicated methods (" + element.key + ") can't be decorated.");
+ }
+
+ other.descriptor = element.descriptor;
+ } else {
+ if (_hasDecorators(element)) {
+ if (_hasDecorators(other)) {
+ throw new ReferenceError("Decorators can't be placed on different accessors with for " + "the same property (" + element.key + ").");
+ }
+
+ other.decorators = element.decorators;
+ }
+
+ _coalesceGetterSetter(element, other);
+ }
+ } else {
+ newElements.push(element);
+ }
+ }
+
+ return newElements;
+}
+
+function _hasDecorators(element) {
+ return element.decorators && element.decorators.length;
+}
+
+function _isDataDescriptor(desc) {
+ return desc !== undefined && !(desc.value === undefined && desc.writable === undefined);
+}
+
+function _optionalCallableProperty(obj, name) {
+ var value = obj[name];
+
+ if (value !== undefined && typeof value !== "function") {
+ throw new TypeError("Expected '" + name + "' to be a function");
+ }
+
+ return value;
+}
+
+module.exports = _decorate;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/defaults.js b/node_modules/@babel/runtime/helpers/defaults.js
new file mode 100644
index 0000000000..576c5a4b42
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/defaults.js
@@ -0,0 +1,17 @@
+function _defaults(obj, defaults) {
+ var keys = Object.getOwnPropertyNames(defaults);
+
+ for (var i = 0; i < keys.length; i++) {
+ var key = keys[i];
+ var value = Object.getOwnPropertyDescriptor(defaults, key);
+
+ if (value && value.configurable && obj[key] === undefined) {
+ Object.defineProperty(obj, key, value);
+ }
+ }
+
+ return obj;
+}
+
+module.exports = _defaults;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/defineEnumerableProperties.js b/node_modules/@babel/runtime/helpers/defineEnumerableProperties.js
new file mode 100644
index 0000000000..4fe90c3c97
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/defineEnumerableProperties.js
@@ -0,0 +1,25 @@
+function _defineEnumerableProperties(obj, descs) {
+ for (var key in descs) {
+ var desc = descs[key];
+ desc.configurable = desc.enumerable = true;
+ if ("value" in desc) desc.writable = true;
+ Object.defineProperty(obj, key, desc);
+ }
+
+ if (Object.getOwnPropertySymbols) {
+ var objectSymbols = Object.getOwnPropertySymbols(descs);
+
+ for (var i = 0; i < objectSymbols.length; i++) {
+ var sym = objectSymbols[i];
+ var desc = descs[sym];
+ desc.configurable = desc.enumerable = true;
+ if ("value" in desc) desc.writable = true;
+ Object.defineProperty(obj, sym, desc);
+ }
+ }
+
+ return obj;
+}
+
+module.exports = _defineEnumerableProperties;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/defineProperty.js b/node_modules/@babel/runtime/helpers/defineProperty.js
new file mode 100644
index 0000000000..1cd65ac261
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/defineProperty.js
@@ -0,0 +1,17 @@
+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;
+}
+
+module.exports = _defineProperty;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/AsyncGenerator.js b/node_modules/@babel/runtime/helpers/esm/AsyncGenerator.js
new file mode 100644
index 0000000000..919aab8758
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/AsyncGenerator.js
@@ -0,0 +1,95 @@
+import AwaitValue from "./AwaitValue.js";
+export default function AsyncGenerator(gen) {
+ var front, back;
+
+ function send(key, arg) {
+ return new Promise(function (resolve, reject) {
+ var request = {
+ key: key,
+ arg: arg,
+ resolve: resolve,
+ reject: reject,
+ next: null
+ };
+
+ if (back) {
+ back = back.next = request;
+ } else {
+ front = back = request;
+ resume(key, arg);
+ }
+ });
+ }
+
+ function resume(key, arg) {
+ try {
+ var result = gen[key](arg);
+ var value = result.value;
+ var wrappedAwait = value instanceof AwaitValue;
+ Promise.resolve(wrappedAwait ? value.wrapped : value).then(function (arg) {
+ if (wrappedAwait) {
+ resume(key === "return" ? "return" : "next", arg);
+ return;
+ }
+
+ settle(result.done ? "return" : "normal", arg);
+ }, function (err) {
+ resume("throw", err);
+ });
+ } catch (err) {
+ settle("throw", err);
+ }
+ }
+
+ function settle(type, value) {
+ switch (type) {
+ case "return":
+ front.resolve({
+ value: value,
+ done: true
+ });
+ break;
+
+ case "throw":
+ front.reject(value);
+ break;
+
+ default:
+ front.resolve({
+ value: value,
+ done: false
+ });
+ break;
+ }
+
+ front = front.next;
+
+ if (front) {
+ resume(front.key, front.arg);
+ } else {
+ back = null;
+ }
+ }
+
+ this._invoke = send;
+
+ if (typeof gen["return"] !== "function") {
+ this["return"] = undefined;
+ }
+}
+
+AsyncGenerator.prototype[typeof Symbol === "function" && Symbol.asyncIterator || "@@asyncIterator"] = function () {
+ return this;
+};
+
+AsyncGenerator.prototype.next = function (arg) {
+ return this._invoke("next", arg);
+};
+
+AsyncGenerator.prototype["throw"] = function (arg) {
+ return this._invoke("throw", arg);
+};
+
+AsyncGenerator.prototype["return"] = function (arg) {
+ return this._invoke("return", arg);
+};
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/AwaitValue.js b/node_modules/@babel/runtime/helpers/esm/AwaitValue.js
new file mode 100644
index 0000000000..5237e18fdc
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/AwaitValue.js
@@ -0,0 +1,3 @@
+export default function _AwaitValue(value) {
+ this.wrapped = value;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/applyDecoratedDescriptor.js b/node_modules/@babel/runtime/helpers/esm/applyDecoratedDescriptor.js
new file mode 100644
index 0000000000..84b59617c0
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/applyDecoratedDescriptor.js
@@ -0,0 +1,28 @@
+export default function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) {
+ var desc = {};
+ Object.keys(descriptor).forEach(function (key) {
+ desc[key] = descriptor[key];
+ });
+ desc.enumerable = !!desc.enumerable;
+ desc.configurable = !!desc.configurable;
+
+ if ('value' in desc || desc.initializer) {
+ desc.writable = true;
+ }
+
+ desc = decorators.slice().reverse().reduce(function (desc, decorator) {
+ return decorator(target, property, desc) || desc;
+ }, desc);
+
+ if (context && desc.initializer !== void 0) {
+ desc.value = desc.initializer ? desc.initializer.call(context) : void 0;
+ desc.initializer = undefined;
+ }
+
+ if (desc.initializer === void 0) {
+ Object.defineProperty(target, property, desc);
+ desc = null;
+ }
+
+ return desc;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js b/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js
new file mode 100644
index 0000000000..edbeb8ee38
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js
@@ -0,0 +1,9 @@
+export default 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;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js b/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js
new file mode 100644
index 0000000000..be734fc386
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js
@@ -0,0 +1,3 @@
+export default function _arrayWithHoles(arr) {
+ if (Array.isArray(arr)) return arr;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js b/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js
new file mode 100644
index 0000000000..f7d8dc7814
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js
@@ -0,0 +1,4 @@
+import arrayLikeToArray from "./arrayLikeToArray.js";
+export default function _arrayWithoutHoles(arr) {
+ if (Array.isArray(arr)) return arrayLikeToArray(arr);
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js b/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js
new file mode 100644
index 0000000000..bbf849ca50
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js
@@ -0,0 +1,7 @@
+export default function _assertThisInitialized(self) {
+ if (self === void 0) {
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
+ }
+
+ return self;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/asyncGeneratorDelegate.js b/node_modules/@babel/runtime/helpers/esm/asyncGeneratorDelegate.js
new file mode 100644
index 0000000000..a7ccd67547
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/asyncGeneratorDelegate.js
@@ -0,0 +1,54 @@
+export default function _asyncGeneratorDelegate(inner, awaitWrap) {
+ var iter = {},
+ waiting = false;
+
+ function pump(key, value) {
+ waiting = true;
+ value = new Promise(function (resolve) {
+ resolve(inner[key](value));
+ });
+ return {
+ done: false,
+ value: awaitWrap(value)
+ };
+ }
+
+ ;
+
+ iter[typeof Symbol !== "undefined" && Symbol.iterator || "@@iterator"] = function () {
+ return this;
+ };
+
+ iter.next = function (value) {
+ if (waiting) {
+ waiting = false;
+ return value;
+ }
+
+ return pump("next", value);
+ };
+
+ if (typeof inner["throw"] === "function") {
+ iter["throw"] = function (value) {
+ if (waiting) {
+ waiting = false;
+ throw value;
+ }
+
+ return pump("throw", value);
+ };
+ }
+
+ if (typeof inner["return"] === "function") {
+ iter["return"] = function (value) {
+ if (waiting) {
+ waiting = false;
+ return value;
+ }
+
+ return pump("return", value);
+ };
+ }
+
+ return iter;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/asyncIterator.js b/node_modules/@babel/runtime/helpers/esm/asyncIterator.js
new file mode 100644
index 0000000000..91ddb42dc1
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/asyncIterator.js
@@ -0,0 +1,13 @@
+export default function _asyncIterator(iterable) {
+ var method;
+
+ if (typeof Symbol !== "undefined") {
+ if (Symbol.asyncIterator) method = iterable[Symbol.asyncIterator];
+ if (method == null && Symbol.iterator) method = iterable[Symbol.iterator];
+ }
+
+ if (method == null) method = iterable["@@asyncIterator"];
+ if (method == null) method = iterable["@@iterator"];
+ if (method == null) throw new TypeError("Object is not async iterable");
+ return method.call(iterable);
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js b/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js
new file mode 100644
index 0000000000..2a25f543bf
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js
@@ -0,0 +1,35 @@
+function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
+ try {
+ var info = gen[key](arg);
+ var value = info.value;
+ } catch (error) {
+ reject(error);
+ return;
+ }
+
+ if (info.done) {
+ resolve(value);
+ } else {
+ Promise.resolve(value).then(_next, _throw);
+ }
+}
+
+export default function _asyncToGenerator(fn) {
+ return function () {
+ var self = this,
+ args = arguments;
+ return new Promise(function (resolve, reject) {
+ var gen = fn.apply(self, args);
+
+ function _next(value) {
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
+ }
+
+ function _throw(err) {
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
+ }
+
+ _next(undefined);
+ });
+ };
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/awaitAsyncGenerator.js b/node_modules/@babel/runtime/helpers/esm/awaitAsyncGenerator.js
new file mode 100644
index 0000000000..ccca65e53c
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/awaitAsyncGenerator.js
@@ -0,0 +1,4 @@
+import AwaitValue from "./AwaitValue.js";
+export default function _awaitAsyncGenerator(value) {
+ return new AwaitValue(value);
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/classCallCheck.js b/node_modules/@babel/runtime/helpers/esm/classCallCheck.js
new file mode 100644
index 0000000000..2f1738a3d6
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/classCallCheck.js
@@ -0,0 +1,5 @@
+export default function _classCallCheck(instance, Constructor) {
+ if (!(instance instanceof Constructor)) {
+ throw new TypeError("Cannot call a class as a function");
+ }
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/classNameTDZError.js b/node_modules/@babel/runtime/helpers/esm/classNameTDZError.js
new file mode 100644
index 0000000000..f7b6dd5787
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/classNameTDZError.js
@@ -0,0 +1,3 @@
+export default function _classNameTDZError(name) {
+ throw new Error("Class \"" + name + "\" cannot be referenced in computed property keys.");
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/classPrivateFieldDestructureSet.js b/node_modules/@babel/runtime/helpers/esm/classPrivateFieldDestructureSet.js
new file mode 100644
index 0000000000..fb5883369b
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/classPrivateFieldDestructureSet.js
@@ -0,0 +1,6 @@
+import classApplyDescriptorDestructureSet from "./classApplyDescriptorDestructureSet.js";
+import classExtractFieldDescriptor from "./classExtractFieldDescriptor.js";
+export default function _classPrivateFieldDestructureSet(receiver, privateMap) {
+ var descriptor = classExtractFieldDescriptor(receiver, privateMap, "set");
+ return classApplyDescriptorDestructureSet(receiver, descriptor);
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet.js b/node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet.js
new file mode 100644
index 0000000000..53cd1379cb
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet.js
@@ -0,0 +1,6 @@
+import classApplyDescriptorGet from "./classApplyDescriptorGet.js";
+import classExtractFieldDescriptor from "./classExtractFieldDescriptor.js";
+export default function _classPrivateFieldGet(receiver, privateMap) {
+ var descriptor = classExtractFieldDescriptor(receiver, privateMap, "get");
+ return classApplyDescriptorGet(receiver, descriptor);
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseBase.js b/node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseBase.js
new file mode 100644
index 0000000000..5b10916f47
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseBase.js
@@ -0,0 +1,7 @@
+export default function _classPrivateFieldBase(receiver, privateKey) {
+ if (!Object.prototype.hasOwnProperty.call(receiver, privateKey)) {
+ throw new TypeError("attempted to use private field on non-instance");
+ }
+
+ return receiver;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseKey.js b/node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseKey.js
new file mode 100644
index 0000000000..5b7e5ac020
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseKey.js
@@ -0,0 +1,4 @@
+var id = 0;
+export default function _classPrivateFieldKey(name) {
+ return "__private_" + id++ + "_" + name;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet.js b/node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet.js
new file mode 100644
index 0000000000..ad91be4408
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet.js
@@ -0,0 +1,7 @@
+import classApplyDescriptorSet from "./classApplyDescriptorSet.js";
+import classExtractFieldDescriptor from "./classExtractFieldDescriptor.js";
+export default function _classPrivateFieldSet(receiver, privateMap, value) {
+ var descriptor = classExtractFieldDescriptor(receiver, privateMap, "set");
+ classApplyDescriptorSet(receiver, descriptor, value);
+ return value;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/classPrivateMethodGet.js b/node_modules/@babel/runtime/helpers/esm/classPrivateMethodGet.js
new file mode 100644
index 0000000000..38b9d584de
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/classPrivateMethodGet.js
@@ -0,0 +1,7 @@
+export default function _classPrivateMethodGet(receiver, privateSet, fn) {
+ if (!privateSet.has(receiver)) {
+ throw new TypeError("attempted to get private field on non-instance");
+ }
+
+ return fn;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/classPrivateMethodSet.js b/node_modules/@babel/runtime/helpers/esm/classPrivateMethodSet.js
new file mode 100644
index 0000000000..2bbaf3a7a4
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/classPrivateMethodSet.js
@@ -0,0 +1,3 @@
+export default function _classPrivateMethodSet() {
+ throw new TypeError("attempted to reassign private method");
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldSpecGet.js b/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldSpecGet.js
new file mode 100644
index 0000000000..d253d31198
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldSpecGet.js
@@ -0,0 +1,8 @@
+import classApplyDescriptorGet from "./classApplyDescriptorGet.js";
+import classCheckPrivateStaticAccess from "./classCheckPrivateStaticAccess.js";
+import classCheckPrivateStaticFieldDescriptor from "./classCheckPrivateStaticFieldDescriptor.js";
+export default function _classStaticPrivateFieldSpecGet(receiver, classConstructor, descriptor) {
+ classCheckPrivateStaticAccess(receiver, classConstructor);
+ classCheckPrivateStaticFieldDescriptor(descriptor, "get");
+ return classApplyDescriptorGet(receiver, descriptor);
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldSpecSet.js b/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldSpecSet.js
new file mode 100644
index 0000000000..b0b0cc6444
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldSpecSet.js
@@ -0,0 +1,9 @@
+import classApplyDescriptorSet from "./classApplyDescriptorSet.js";
+import classCheckPrivateStaticAccess from "./classCheckPrivateStaticAccess.js";
+import classCheckPrivateStaticFieldDescriptor from "./classCheckPrivateStaticFieldDescriptor.js";
+export default function _classStaticPrivateFieldSpecSet(receiver, classConstructor, descriptor, value) {
+ classCheckPrivateStaticAccess(receiver, classConstructor);
+ classCheckPrivateStaticFieldDescriptor(descriptor, "set");
+ classApplyDescriptorSet(receiver, descriptor, value);
+ return value;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/classStaticPrivateMethodGet.js b/node_modules/@babel/runtime/helpers/esm/classStaticPrivateMethodGet.js
new file mode 100644
index 0000000000..fddc7b2d8c
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/classStaticPrivateMethodGet.js
@@ -0,0 +1,5 @@
+import classCheckPrivateStaticAccess from "./classCheckPrivateStaticAccess.js";
+export default function _classStaticPrivateMethodGet(receiver, classConstructor, method) {
+ classCheckPrivateStaticAccess(receiver, classConstructor);
+ return method;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/classStaticPrivateMethodSet.js b/node_modules/@babel/runtime/helpers/esm/classStaticPrivateMethodSet.js
new file mode 100644
index 0000000000..d5ab60a970
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/classStaticPrivateMethodSet.js
@@ -0,0 +1,3 @@
+export default function _classStaticPrivateMethodSet() {
+ throw new TypeError("attempted to set read only static private field");
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/construct.js b/node_modules/@babel/runtime/helpers/esm/construct.js
new file mode 100644
index 0000000000..0c39835d2d
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/construct.js
@@ -0,0 +1,18 @@
+import setPrototypeOf from "./setPrototypeOf.js";
+import isNativeReflectConstruct from "./isNativeReflectConstruct.js";
+export default function _construct(Parent, args, Class) {
+ if (isNativeReflectConstruct()) {
+ _construct = Reflect.construct;
+ } else {
+ _construct = function _construct(Parent, args, Class) {
+ var a = [null];
+ a.push.apply(a, args);
+ var Constructor = Function.bind.apply(Parent, a);
+ var instance = new Constructor();
+ if (Class) setPrototypeOf(instance, Class.prototype);
+ return instance;
+ };
+ }
+
+ return _construct.apply(null, arguments);
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/createClass.js b/node_modules/@babel/runtime/helpers/esm/createClass.js
new file mode 100644
index 0000000000..d6cf412203
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/createClass.js
@@ -0,0 +1,15 @@
+function _defineProperties(target, props) {
+ for (var i = 0; i < props.length; i++) {
+ var descriptor = props[i];
+ descriptor.enumerable = descriptor.enumerable || false;
+ descriptor.configurable = true;
+ if ("value" in descriptor) descriptor.writable = true;
+ Object.defineProperty(target, descriptor.key, descriptor);
+ }
+}
+
+export default function _createClass(Constructor, protoProps, staticProps) {
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
+ if (staticProps) _defineProperties(Constructor, staticProps);
+ return Constructor;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js b/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js
new file mode 100644
index 0000000000..a7a2a50adc
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js
@@ -0,0 +1,57 @@
+import unsupportedIterableToArray from "./unsupportedIterableToArray.js";
+export default function _createForOfIteratorHelper(o, allowArrayLike) {
+ var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"];
+
+ if (!it) {
+ if (Array.isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
+ if (it) o = it;
+ var i = 0;
+
+ var F = function F() {};
+
+ return {
+ s: F,
+ n: function n() {
+ if (i >= o.length) return {
+ done: true
+ };
+ return {
+ done: false,
+ value: o[i++]
+ };
+ },
+ e: function e(_e) {
+ throw _e;
+ },
+ f: F
+ };
+ }
+
+ throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
+ }
+
+ var normalCompletion = true,
+ didErr = false,
+ err;
+ return {
+ s: function s() {
+ it = it.call(o);
+ },
+ n: function n() {
+ var step = it.next();
+ normalCompletion = step.done;
+ return step;
+ },
+ e: function e(_e2) {
+ didErr = true;
+ err = _e2;
+ },
+ f: function f() {
+ try {
+ if (!normalCompletion && it["return"] != null) it["return"]();
+ } finally {
+ if (didErr) throw err;
+ }
+ }
+ };
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelperLoose.js b/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelperLoose.js
new file mode 100644
index 0000000000..640ec68310
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelperLoose.js
@@ -0,0 +1,21 @@
+import unsupportedIterableToArray from "./unsupportedIterableToArray.js";
+export default function _createForOfIteratorHelperLoose(o, allowArrayLike) {
+ var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"];
+ if (it) return (it = it.call(o)).next.bind(it);
+
+ if (Array.isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
+ if (it) o = it;
+ var i = 0;
+ return function () {
+ if (i >= o.length) return {
+ done: true
+ };
+ return {
+ done: false,
+ value: o[i++]
+ };
+ };
+ }
+
+ throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/createSuper.js b/node_modules/@babel/runtime/helpers/esm/createSuper.js
new file mode 100644
index 0000000000..ea5ea99552
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/createSuper.js
@@ -0,0 +1,19 @@
+import getPrototypeOf from "./getPrototypeOf.js";
+import isNativeReflectConstruct from "./isNativeReflectConstruct.js";
+import possibleConstructorReturn from "./possibleConstructorReturn.js";
+export default function _createSuper(Derived) {
+ var hasNativeReflectConstruct = isNativeReflectConstruct();
+ return function _createSuperInternal() {
+ var Super = getPrototypeOf(Derived),
+ result;
+
+ if (hasNativeReflectConstruct) {
+ var NewTarget = getPrototypeOf(this).constructor;
+ result = Reflect.construct(Super, arguments, NewTarget);
+ } else {
+ result = Super.apply(this, arguments);
+ }
+
+ return possibleConstructorReturn(this, result);
+ };
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/decorate.js b/node_modules/@babel/runtime/helpers/esm/decorate.js
new file mode 100644
index 0000000000..daf56da209
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/decorate.js
@@ -0,0 +1,396 @@
+import toArray from "./toArray.js";
+import toPropertyKey from "./toPropertyKey.js";
+export default function _decorate(decorators, factory, superClass, mixins) {
+ var api = _getDecoratorsApi();
+
+ if (mixins) {
+ for (var i = 0; i < mixins.length; i++) {
+ api = mixins[i](api);
+ }
+ }
+
+ var r = factory(function initialize(O) {
+ api.initializeInstanceElements(O, decorated.elements);
+ }, superClass);
+ var decorated = api.decorateClass(_coalesceClassElements(r.d.map(_createElementDescriptor)), decorators);
+ api.initializeClassElements(r.F, decorated.elements);
+ return api.runClassFinishers(r.F, decorated.finishers);
+}
+
+function _getDecoratorsApi() {
+ _getDecoratorsApi = function _getDecoratorsApi() {
+ return api;
+ };
+
+ var api = {
+ elementsDefinitionOrder: [["method"], ["field"]],
+ initializeInstanceElements: function initializeInstanceElements(O, elements) {
+ ["method", "field"].forEach(function (kind) {
+ elements.forEach(function (element) {
+ if (element.kind === kind && element.placement === "own") {
+ this.defineClassElement(O, element);
+ }
+ }, this);
+ }, this);
+ },
+ initializeClassElements: function initializeClassElements(F, elements) {
+ var proto = F.prototype;
+ ["method", "field"].forEach(function (kind) {
+ elements.forEach(function (element) {
+ var placement = element.placement;
+
+ if (element.kind === kind && (placement === "static" || placement === "prototype")) {
+ var receiver = placement === "static" ? F : proto;
+ this.defineClassElement(receiver, element);
+ }
+ }, this);
+ }, this);
+ },
+ defineClassElement: function defineClassElement(receiver, element) {
+ var descriptor = element.descriptor;
+
+ if (element.kind === "field") {
+ var initializer = element.initializer;
+ descriptor = {
+ enumerable: descriptor.enumerable,
+ writable: descriptor.writable,
+ configurable: descriptor.configurable,
+ value: initializer === void 0 ? void 0 : initializer.call(receiver)
+ };
+ }
+
+ Object.defineProperty(receiver, element.key, descriptor);
+ },
+ decorateClass: function decorateClass(elements, decorators) {
+ var newElements = [];
+ var finishers = [];
+ var placements = {
+ "static": [],
+ prototype: [],
+ own: []
+ };
+ elements.forEach(function (element) {
+ this.addElementPlacement(element, placements);
+ }, this);
+ elements.forEach(function (element) {
+ if (!_hasDecorators(element)) return newElements.push(element);
+ var elementFinishersExtras = this.decorateElement(element, placements);
+ newElements.push(elementFinishersExtras.element);
+ newElements.push.apply(newElements, elementFinishersExtras.extras);
+ finishers.push.apply(finishers, elementFinishersExtras.finishers);
+ }, this);
+
+ if (!decorators) {
+ return {
+ elements: newElements,
+ finishers: finishers
+ };
+ }
+
+ var result = this.decorateConstructor(newElements, decorators);
+ finishers.push.apply(finishers, result.finishers);
+ result.finishers = finishers;
+ return result;
+ },
+ addElementPlacement: function addElementPlacement(element, placements, silent) {
+ var keys = placements[element.placement];
+
+ if (!silent && keys.indexOf(element.key) !== -1) {
+ throw new TypeError("Duplicated element (" + element.key + ")");
+ }
+
+ keys.push(element.key);
+ },
+ decorateElement: function decorateElement(element, placements) {
+ var extras = [];
+ var finishers = [];
+
+ for (var decorators = element.decorators, i = decorators.length - 1; i >= 0; i--) {
+ var keys = placements[element.placement];
+ keys.splice(keys.indexOf(element.key), 1);
+ var elementObject = this.fromElementDescriptor(element);
+ var elementFinisherExtras = this.toElementFinisherExtras((0, decorators[i])(elementObject) || elementObject);
+ element = elementFinisherExtras.element;
+ this.addElementPlacement(element, placements);
+
+ if (elementFinisherExtras.finisher) {
+ finishers.push(elementFinisherExtras.finisher);
+ }
+
+ var newExtras = elementFinisherExtras.extras;
+
+ if (newExtras) {
+ for (var j = 0; j < newExtras.length; j++) {
+ this.addElementPlacement(newExtras[j], placements);
+ }
+
+ extras.push.apply(extras, newExtras);
+ }
+ }
+
+ return {
+ element: element,
+ finishers: finishers,
+ extras: extras
+ };
+ },
+ decorateConstructor: function decorateConstructor(elements, decorators) {
+ var finishers = [];
+
+ for (var i = decorators.length - 1; i >= 0; i--) {
+ var obj = this.fromClassDescriptor(elements);
+ var elementsAndFinisher = this.toClassDescriptor((0, decorators[i])(obj) || obj);
+
+ if (elementsAndFinisher.finisher !== undefined) {
+ finishers.push(elementsAndFinisher.finisher);
+ }
+
+ if (elementsAndFinisher.elements !== undefined) {
+ elements = elementsAndFinisher.elements;
+
+ for (var j = 0; j < elements.length - 1; j++) {
+ for (var k = j + 1; k < elements.length; k++) {
+ if (elements[j].key === elements[k].key && elements[j].placement === elements[k].placement) {
+ throw new TypeError("Duplicated element (" + elements[j].key + ")");
+ }
+ }
+ }
+ }
+ }
+
+ return {
+ elements: elements,
+ finishers: finishers
+ };
+ },
+ fromElementDescriptor: function fromElementDescriptor(element) {
+ var obj = {
+ kind: element.kind,
+ key: element.key,
+ placement: element.placement,
+ descriptor: element.descriptor
+ };
+ var desc = {
+ value: "Descriptor",
+ configurable: true
+ };
+ Object.defineProperty(obj, Symbol.toStringTag, desc);
+ if (element.kind === "field") obj.initializer = element.initializer;
+ return obj;
+ },
+ toElementDescriptors: function toElementDescriptors(elementObjects) {
+ if (elementObjects === undefined) return;
+ return toArray(elementObjects).map(function (elementObject) {
+ var element = this.toElementDescriptor(elementObject);
+ this.disallowProperty(elementObject, "finisher", "An element descriptor");
+ this.disallowProperty(elementObject, "extras", "An element descriptor");
+ return element;
+ }, this);
+ },
+ toElementDescriptor: function toElementDescriptor(elementObject) {
+ var kind = String(elementObject.kind);
+
+ if (kind !== "method" && kind !== "field") {
+ throw new TypeError('An element descriptor\'s .kind property must be either "method" or' + ' "field", but a decorator created an element descriptor with' + ' .kind "' + kind + '"');
+ }
+
+ var key = toPropertyKey(elementObject.key);
+ var placement = String(elementObject.placement);
+
+ if (placement !== "static" && placement !== "prototype" && placement !== "own") {
+ throw new TypeError('An element descriptor\'s .placement property must be one of "static",' + ' "prototype" or "own", but a decorator created an element descriptor' + ' with .placement "' + placement + '"');
+ }
+
+ var descriptor = elementObject.descriptor;
+ this.disallowProperty(elementObject, "elements", "An element descriptor");
+ var element = {
+ kind: kind,
+ key: key,
+ placement: placement,
+ descriptor: Object.assign({}, descriptor)
+ };
+
+ if (kind !== "field") {
+ this.disallowProperty(elementObject, "initializer", "A method descriptor");
+ } else {
+ this.disallowProperty(descriptor, "get", "The property descriptor of a field descriptor");
+ this.disallowProperty(descriptor, "set", "The property descriptor of a field descriptor");
+ this.disallowProperty(descriptor, "value", "The property descriptor of a field descriptor");
+ element.initializer = elementObject.initializer;
+ }
+
+ return element;
+ },
+ toElementFinisherExtras: function toElementFinisherExtras(elementObject) {
+ var element = this.toElementDescriptor(elementObject);
+
+ var finisher = _optionalCallableProperty(elementObject, "finisher");
+
+ var extras = this.toElementDescriptors(elementObject.extras);
+ return {
+ element: element,
+ finisher: finisher,
+ extras: extras
+ };
+ },
+ fromClassDescriptor: function fromClassDescriptor(elements) {
+ var obj = {
+ kind: "class",
+ elements: elements.map(this.fromElementDescriptor, this)
+ };
+ var desc = {
+ value: "Descriptor",
+ configurable: true
+ };
+ Object.defineProperty(obj, Symbol.toStringTag, desc);
+ return obj;
+ },
+ toClassDescriptor: function toClassDescriptor(obj) {
+ var kind = String(obj.kind);
+
+ if (kind !== "class") {
+ throw new TypeError('A class descriptor\'s .kind property must be "class", but a decorator' + ' created a class descriptor with .kind "' + kind + '"');
+ }
+
+ this.disallowProperty(obj, "key", "A class descriptor");
+ this.disallowProperty(obj, "placement", "A class descriptor");
+ this.disallowProperty(obj, "descriptor", "A class descriptor");
+ this.disallowProperty(obj, "initializer", "A class descriptor");
+ this.disallowProperty(obj, "extras", "A class descriptor");
+
+ var finisher = _optionalCallableProperty(obj, "finisher");
+
+ var elements = this.toElementDescriptors(obj.elements);
+ return {
+ elements: elements,
+ finisher: finisher
+ };
+ },
+ runClassFinishers: function runClassFinishers(constructor, finishers) {
+ for (var i = 0; i < finishers.length; i++) {
+ var newConstructor = (0, finishers[i])(constructor);
+
+ if (newConstructor !== undefined) {
+ if (typeof newConstructor !== "function") {
+ throw new TypeError("Finishers must return a constructor.");
+ }
+
+ constructor = newConstructor;
+ }
+ }
+
+ return constructor;
+ },
+ disallowProperty: function disallowProperty(obj, name, objectType) {
+ if (obj[name] !== undefined) {
+ throw new TypeError(objectType + " can't have a ." + name + " property.");
+ }
+ }
+ };
+ return api;
+}
+
+function _createElementDescriptor(def) {
+ var key = toPropertyKey(def.key);
+ var descriptor;
+
+ if (def.kind === "method") {
+ descriptor = {
+ value: def.value,
+ writable: true,
+ configurable: true,
+ enumerable: false
+ };
+ } else if (def.kind === "get") {
+ descriptor = {
+ get: def.value,
+ configurable: true,
+ enumerable: false
+ };
+ } else if (def.kind === "set") {
+ descriptor = {
+ set: def.value,
+ configurable: true,
+ enumerable: false
+ };
+ } else if (def.kind === "field") {
+ descriptor = {
+ configurable: true,
+ writable: true,
+ enumerable: true
+ };
+ }
+
+ var element = {
+ kind: def.kind === "field" ? "field" : "method",
+ key: key,
+ placement: def["static"] ? "static" : def.kind === "field" ? "own" : "prototype",
+ descriptor: descriptor
+ };
+ if (def.decorators) element.decorators = def.decorators;
+ if (def.kind === "field") element.initializer = def.value;
+ return element;
+}
+
+function _coalesceGetterSetter(element, other) {
+ if (element.descriptor.get !== undefined) {
+ other.descriptor.get = element.descriptor.get;
+ } else {
+ other.descriptor.set = element.descriptor.set;
+ }
+}
+
+function _coalesceClassElements(elements) {
+ var newElements = [];
+
+ var isSameElement = function isSameElement(other) {
+ return other.kind === "method" && other.key === element.key && other.placement === element.placement;
+ };
+
+ for (var i = 0; i < elements.length; i++) {
+ var element = elements[i];
+ var other;
+
+ if (element.kind === "method" && (other = newElements.find(isSameElement))) {
+ if (_isDataDescriptor(element.descriptor) || _isDataDescriptor(other.descriptor)) {
+ if (_hasDecorators(element) || _hasDecorators(other)) {
+ throw new ReferenceError("Duplicated methods (" + element.key + ") can't be decorated.");
+ }
+
+ other.descriptor = element.descriptor;
+ } else {
+ if (_hasDecorators(element)) {
+ if (_hasDecorators(other)) {
+ throw new ReferenceError("Decorators can't be placed on different accessors with for " + "the same property (" + element.key + ").");
+ }
+
+ other.decorators = element.decorators;
+ }
+
+ _coalesceGetterSetter(element, other);
+ }
+ } else {
+ newElements.push(element);
+ }
+ }
+
+ return newElements;
+}
+
+function _hasDecorators(element) {
+ return element.decorators && element.decorators.length;
+}
+
+function _isDataDescriptor(desc) {
+ return desc !== undefined && !(desc.value === undefined && desc.writable === undefined);
+}
+
+function _optionalCallableProperty(obj, name) {
+ var value = obj[name];
+
+ if (value !== undefined && typeof value !== "function") {
+ throw new TypeError("Expected '" + name + "' to be a function");
+ }
+
+ return value;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/defaults.js b/node_modules/@babel/runtime/helpers/esm/defaults.js
new file mode 100644
index 0000000000..3de1d8ecfe
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/defaults.js
@@ -0,0 +1,14 @@
+export default function _defaults(obj, defaults) {
+ var keys = Object.getOwnPropertyNames(defaults);
+
+ for (var i = 0; i < keys.length; i++) {
+ var key = keys[i];
+ var value = Object.getOwnPropertyDescriptor(defaults, key);
+
+ if (value && value.configurable && obj[key] === undefined) {
+ Object.defineProperty(obj, key, value);
+ }
+ }
+
+ return obj;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/defineEnumerableProperties.js b/node_modules/@babel/runtime/helpers/esm/defineEnumerableProperties.js
new file mode 100644
index 0000000000..7981acd48f
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/defineEnumerableProperties.js
@@ -0,0 +1,22 @@
+export default function _defineEnumerableProperties(obj, descs) {
+ for (var key in descs) {
+ var desc = descs[key];
+ desc.configurable = desc.enumerable = true;
+ if ("value" in desc) desc.writable = true;
+ Object.defineProperty(obj, key, desc);
+ }
+
+ if (Object.getOwnPropertySymbols) {
+ var objectSymbols = Object.getOwnPropertySymbols(descs);
+
+ for (var i = 0; i < objectSymbols.length; i++) {
+ var sym = objectSymbols[i];
+ var desc = descs[sym];
+ desc.configurable = desc.enumerable = true;
+ if ("value" in desc) desc.writable = true;
+ Object.defineProperty(obj, sym, desc);
+ }
+ }
+
+ return obj;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/defineProperty.js b/node_modules/@babel/runtime/helpers/esm/defineProperty.js
new file mode 100644
index 0000000000..7cf6e59fdf
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/defineProperty.js
@@ -0,0 +1,14 @@
+export default 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;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/extends.js b/node_modules/@babel/runtime/helpers/esm/extends.js
new file mode 100644
index 0000000000..b9b138d829
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/extends.js
@@ -0,0 +1,17 @@
+export default 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);
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/get.js b/node_modules/@babel/runtime/helpers/esm/get.js
new file mode 100644
index 0000000000..1bce02077c
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/get.js
@@ -0,0 +1,20 @@
+import superPropBase from "./superPropBase.js";
+export default function _get(target, property, receiver) {
+ if (typeof Reflect !== "undefined" && Reflect.get) {
+ _get = Reflect.get;
+ } else {
+ _get = function _get(target, property, receiver) {
+ var base = superPropBase(target, property);
+ if (!base) return;
+ var desc = Object.getOwnPropertyDescriptor(base, property);
+
+ if (desc.get) {
+ return desc.get.call(receiver);
+ }
+
+ return desc.value;
+ };
+ }
+
+ return _get(target, property, receiver || target);
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js b/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
new file mode 100644
index 0000000000..5abafe381f
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
@@ -0,0 +1,6 @@
+export default function _getPrototypeOf(o) {
+ _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
+ return o.__proto__ || Object.getPrototypeOf(o);
+ };
+ return _getPrototypeOf(o);
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/inherits.js b/node_modules/@babel/runtime/helpers/esm/inherits.js
new file mode 100644
index 0000000000..aee0f102c7
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/inherits.js
@@ -0,0 +1,15 @@
+import setPrototypeOf from "./setPrototypeOf.js";
+export default function _inherits(subClass, superClass) {
+ if (typeof superClass !== "function" && superClass !== null) {
+ throw new TypeError("Super expression must either be null or a function");
+ }
+
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
+ constructor: {
+ value: subClass,
+ writable: true,
+ configurable: true
+ }
+ });
+ if (superClass) setPrototypeOf(subClass, superClass);
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js b/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js
new file mode 100644
index 0000000000..90bb796576
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js
@@ -0,0 +1,6 @@
+import setPrototypeOf from "./setPrototypeOf.js";
+export default function _inheritsLoose(subClass, superClass) {
+ subClass.prototype = Object.create(superClass.prototype);
+ subClass.prototype.constructor = subClass;
+ setPrototypeOf(subClass, superClass);
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/initializerDefineProperty.js b/node_modules/@babel/runtime/helpers/esm/initializerDefineProperty.js
new file mode 100644
index 0000000000..26fdea084d
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/initializerDefineProperty.js
@@ -0,0 +1,9 @@
+export default function _initializerDefineProperty(target, property, descriptor, context) {
+ if (!descriptor) return;
+ Object.defineProperty(target, property, {
+ enumerable: descriptor.enumerable,
+ configurable: descriptor.configurable,
+ writable: descriptor.writable,
+ value: descriptor.initializer ? descriptor.initializer.call(context) : void 0
+ });
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/initializerWarningHelper.js b/node_modules/@babel/runtime/helpers/esm/initializerWarningHelper.js
new file mode 100644
index 0000000000..30d518cfd6
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/initializerWarningHelper.js
@@ -0,0 +1,3 @@
+export default function _initializerWarningHelper(descriptor, context) {
+ throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.');
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/instanceof.js b/node_modules/@babel/runtime/helpers/esm/instanceof.js
new file mode 100644
index 0000000000..8c43b71787
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/instanceof.js
@@ -0,0 +1,7 @@
+export default function _instanceof(left, right) {
+ if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
+ return !!right[Symbol.hasInstance](left);
+ } else {
+ return left instanceof right;
+ }
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/interopRequireDefault.js b/node_modules/@babel/runtime/helpers/esm/interopRequireDefault.js
new file mode 100644
index 0000000000..c2df7b6414
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/interopRequireDefault.js
@@ -0,0 +1,5 @@
+export default function _interopRequireDefault(obj) {
+ return obj && obj.__esModule ? obj : {
+ "default": obj
+ };
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/interopRequireWildcard.js b/node_modules/@babel/runtime/helpers/esm/interopRequireWildcard.js
new file mode 100644
index 0000000000..662ff7e6b7
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/interopRequireWildcard.js
@@ -0,0 +1,51 @@
+import _typeof from "@babel/runtime/helpers/typeof";
+
+function _getRequireWildcardCache(nodeInterop) {
+ if (typeof WeakMap !== "function") return null;
+ var cacheBabelInterop = new WeakMap();
+ var cacheNodeInterop = new WeakMap();
+ return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) {
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
+ })(nodeInterop);
+}
+
+export default function _interopRequireWildcard(obj, nodeInterop) {
+ if (!nodeInterop && obj && obj.__esModule) {
+ return obj;
+ }
+
+ if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") {
+ return {
+ "default": obj
+ };
+ }
+
+ var cache = _getRequireWildcardCache(nodeInterop);
+
+ if (cache && cache.has(obj)) {
+ return cache.get(obj);
+ }
+
+ var newObj = {};
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
+
+ for (var key in obj) {
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
+
+ if (desc && (desc.get || desc.set)) {
+ Object.defineProperty(newObj, key, desc);
+ } else {
+ newObj[key] = obj[key];
+ }
+ }
+ }
+
+ newObj["default"] = obj;
+
+ if (cache) {
+ cache.set(obj, newObj);
+ }
+
+ return newObj;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/isNativeFunction.js b/node_modules/@babel/runtime/helpers/esm/isNativeFunction.js
new file mode 100644
index 0000000000..7b1bc821f7
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/isNativeFunction.js
@@ -0,0 +1,3 @@
+export default function _isNativeFunction(fn) {
+ return Function.toString.call(fn).indexOf("[native code]") !== -1;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js b/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js
new file mode 100644
index 0000000000..0da1624ecf
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js
@@ -0,0 +1,12 @@
+export default function _isNativeReflectConstruct() {
+ if (typeof Reflect === "undefined" || !Reflect.construct) return false;
+ if (Reflect.construct.sham) return false;
+ if (typeof Proxy === "function") return true;
+
+ try {
+ Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));
+ return true;
+ } catch (e) {
+ return false;
+ }
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/iterableToArray.js b/node_modules/@babel/runtime/helpers/esm/iterableToArray.js
new file mode 100644
index 0000000000..cfe9fbd3bf
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/iterableToArray.js
@@ -0,0 +1,3 @@
+export default function _iterableToArray(iter) {
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js b/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js
new file mode 100644
index 0000000000..a753de01ae
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js
@@ -0,0 +1,29 @@
+export default function _iterableToArrayLimit(arr, i) {
+ var _i = arr && (typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]);
+
+ if (_i == null) return;
+ var _arr = [];
+ var _n = true;
+ var _d = false;
+
+ var _s, _e;
+
+ try {
+ for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
+ _arr.push(_s.value);
+
+ if (i && _arr.length === i) break;
+ }
+ } catch (err) {
+ _d = true;
+ _e = err;
+ } finally {
+ try {
+ if (!_n && _i["return"] != null) _i["return"]();
+ } finally {
+ if (_d) throw _e;
+ }
+ }
+
+ return _arr;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimitLoose.js b/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimitLoose.js
new file mode 100644
index 0000000000..27c15e0986
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimitLoose.js
@@ -0,0 +1,14 @@
+export default function _iterableToArrayLimitLoose(arr, i) {
+ var _i = arr && (typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]);
+
+ if (_i == null) return;
+ var _arr = [];
+
+ for (_i = _i.call(arr), _step; !(_step = _i.next()).done;) {
+ _arr.push(_step.value);
+
+ if (i && _arr.length === i) break;
+ }
+
+ return _arr;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/jsx.js b/node_modules/@babel/runtime/helpers/esm/jsx.js
new file mode 100644
index 0000000000..328fadf056
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/jsx.js
@@ -0,0 +1,46 @@
+var REACT_ELEMENT_TYPE;
+export default function _createRawReactElement(type, props, key, children) {
+ if (!REACT_ELEMENT_TYPE) {
+ REACT_ELEMENT_TYPE = typeof Symbol === "function" && Symbol["for"] && Symbol["for"]("react.element") || 0xeac7;
+ }
+
+ var defaultProps = type && type.defaultProps;
+ var childrenLength = arguments.length - 3;
+
+ if (!props && childrenLength !== 0) {
+ props = {
+ children: void 0
+ };
+ }
+
+ if (childrenLength === 1) {
+ props.children = children;
+ } else if (childrenLength > 1) {
+ var childArray = new Array(childrenLength);
+
+ for (var i = 0; i < childrenLength; i++) {
+ childArray[i] = arguments[i + 3];
+ }
+
+ props.children = childArray;
+ }
+
+ if (props && defaultProps) {
+ for (var propName in defaultProps) {
+ if (props[propName] === void 0) {
+ props[propName] = defaultProps[propName];
+ }
+ }
+ } else if (!props) {
+ props = defaultProps || {};
+ }
+
+ return {
+ $$typeof: REACT_ELEMENT_TYPE,
+ type: type,
+ key: key === undefined ? null : "" + key,
+ ref: null,
+ props: props,
+ _owner: null
+ };
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/maybeArrayLike.js b/node_modules/@babel/runtime/helpers/esm/maybeArrayLike.js
new file mode 100644
index 0000000000..f687959267
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/maybeArrayLike.js
@@ -0,0 +1,9 @@
+import arrayLikeToArray from "./arrayLikeToArray.js";
+export default function _maybeArrayLike(next, arr, i) {
+ if (arr && !Array.isArray(arr) && typeof arr.length === "number") {
+ var len = arr.length;
+ return arrayLikeToArray(arr, i !== void 0 && i < len ? i : len);
+ }
+
+ return next(arr, i);
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/newArrowCheck.js b/node_modules/@babel/runtime/helpers/esm/newArrowCheck.js
new file mode 100644
index 0000000000..d6cd864377
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/newArrowCheck.js
@@ -0,0 +1,5 @@
+export default function _newArrowCheck(innerThis, boundThis) {
+ if (innerThis !== boundThis) {
+ throw new TypeError("Cannot instantiate an arrow function");
+ }
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js b/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js
new file mode 100644
index 0000000000..b349d006cd
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js
@@ -0,0 +1,3 @@
+export default function _nonIterableRest() {
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js b/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js
new file mode 100644
index 0000000000..82d8296142
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js
@@ -0,0 +1,3 @@
+export default 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.");
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/objectDestructuringEmpty.js b/node_modules/@babel/runtime/helpers/esm/objectDestructuringEmpty.js
new file mode 100644
index 0000000000..82b67d2cba
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/objectDestructuringEmpty.js
@@ -0,0 +1,3 @@
+export default function _objectDestructuringEmpty(obj) {
+ if (obj == null) throw new TypeError("Cannot destructure undefined");
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/objectSpread.js b/node_modules/@babel/runtime/helpers/esm/objectSpread.js
new file mode 100644
index 0000000000..8c38ca7893
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/objectSpread.js
@@ -0,0 +1,19 @@
+import defineProperty from "./defineProperty.js";
+export default function _objectSpread(target) {
+ for (var i = 1; i < arguments.length; i++) {
+ var source = arguments[i] != null ? Object(arguments[i]) : {};
+ var ownKeys = Object.keys(source);
+
+ if (typeof Object.getOwnPropertySymbols === 'function') {
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
+ }));
+ }
+
+ ownKeys.forEach(function (key) {
+ defineProperty(target, key, source[key]);
+ });
+ }
+
+ return target;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/objectSpread2.js b/node_modules/@babel/runtime/helpers/esm/objectSpread2.js
new file mode 100644
index 0000000000..be42b4d7b8
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/objectSpread2.js
@@ -0,0 +1,39 @@
+import defineProperty from "./defineProperty.js";
+
+function ownKeys(object, enumerableOnly) {
+ var keys = Object.keys(object);
+
+ if (Object.getOwnPropertySymbols) {
+ var symbols = Object.getOwnPropertySymbols(object);
+
+ if (enumerableOnly) {
+ symbols = symbols.filter(function (sym) {
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
+ });
+ }
+
+ keys.push.apply(keys, symbols);
+ }
+
+ return keys;
+}
+
+export default function _objectSpread2(target) {
+ for (var i = 1; i < arguments.length; i++) {
+ var source = arguments[i] != null ? arguments[i] : {};
+
+ if (i % 2) {
+ ownKeys(Object(source), true).forEach(function (key) {
+ defineProperty(target, key, source[key]);
+ });
+ } else if (Object.getOwnPropertyDescriptors) {
+ Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
+ } else {
+ ownKeys(Object(source)).forEach(function (key) {
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
+ });
+ }
+ }
+
+ return target;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js b/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js
new file mode 100644
index 0000000000..0fef321925
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js
@@ -0,0 +1,19 @@
+import objectWithoutPropertiesLoose from "./objectWithoutPropertiesLoose.js";
+export default 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;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js b/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js
new file mode 100644
index 0000000000..c36815cebe
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js
@@ -0,0 +1,14 @@
+export default 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;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/package.json b/node_modules/@babel/runtime/helpers/esm/package.json
new file mode 100644
index 0000000000..aead43de36
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/package.json
@@ -0,0 +1,3 @@
+{
+ "type": "module"
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js b/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
new file mode 100644
index 0000000000..0ae22f4246
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
@@ -0,0 +1,9 @@
+import _typeof from "@babel/runtime/helpers/typeof";
+import assertThisInitialized from "./assertThisInitialized.js";
+export default function _possibleConstructorReturn(self, call) {
+ if (call && (_typeof(call) === "object" || typeof call === "function")) {
+ return call;
+ }
+
+ return assertThisInitialized(self);
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/readOnlyError.js b/node_modules/@babel/runtime/helpers/esm/readOnlyError.js
new file mode 100644
index 0000000000..166e40e5e7
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/readOnlyError.js
@@ -0,0 +1,3 @@
+export default function _readOnlyError(name) {
+ throw new TypeError("\"" + name + "\" is read-only");
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/set.js b/node_modules/@babel/runtime/helpers/esm/set.js
new file mode 100644
index 0000000000..9c54773906
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/set.js
@@ -0,0 +1,51 @@
+import superPropBase from "./superPropBase.js";
+import defineProperty from "./defineProperty.js";
+
+function set(target, property, value, receiver) {
+ if (typeof Reflect !== "undefined" && Reflect.set) {
+ set = Reflect.set;
+ } else {
+ set = function set(target, property, value, receiver) {
+ var base = superPropBase(target, property);
+ var desc;
+
+ if (base) {
+ desc = Object.getOwnPropertyDescriptor(base, property);
+
+ if (desc.set) {
+ desc.set.call(receiver, value);
+ return true;
+ } else if (!desc.writable) {
+ return false;
+ }
+ }
+
+ desc = Object.getOwnPropertyDescriptor(receiver, property);
+
+ if (desc) {
+ if (!desc.writable) {
+ return false;
+ }
+
+ desc.value = value;
+ Object.defineProperty(receiver, property, desc);
+ } else {
+ defineProperty(receiver, property, value);
+ }
+
+ return true;
+ };
+ }
+
+ return set(target, property, value, receiver);
+}
+
+export default function _set(target, property, value, receiver, isStrict) {
+ var s = set(target, property, value, receiver || target);
+
+ if (!s && isStrict) {
+ throw new Error('failed to set property');
+ }
+
+ return value;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js b/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js
new file mode 100644
index 0000000000..e6ef03e598
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js
@@ -0,0 +1,8 @@
+export default function _setPrototypeOf(o, p) {
+ _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
+ o.__proto__ = p;
+ return o;
+ };
+
+ return _setPrototypeOf(o, p);
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/skipFirstGeneratorNext.js b/node_modules/@babel/runtime/helpers/esm/skipFirstGeneratorNext.js
new file mode 100644
index 0000000000..cadd9bb5bf
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/skipFirstGeneratorNext.js
@@ -0,0 +1,7 @@
+export default function _skipFirstGeneratorNext(fn) {
+ return function () {
+ var it = fn.apply(this, arguments);
+ it.next();
+ return it;
+ };
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/slicedToArray.js b/node_modules/@babel/runtime/helpers/esm/slicedToArray.js
new file mode 100644
index 0000000000..618200b92b
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/slicedToArray.js
@@ -0,0 +1,7 @@
+import arrayWithHoles from "./arrayWithHoles.js";
+import iterableToArrayLimit from "./iterableToArrayLimit.js";
+import unsupportedIterableToArray from "./unsupportedIterableToArray.js";
+import nonIterableRest from "./nonIterableRest.js";
+export default function _slicedToArray(arr, i) {
+ return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/slicedToArrayLoose.js b/node_modules/@babel/runtime/helpers/esm/slicedToArrayLoose.js
new file mode 100644
index 0000000000..efc7429ef6
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/slicedToArrayLoose.js
@@ -0,0 +1,7 @@
+import arrayWithHoles from "./arrayWithHoles.js";
+import iterableToArrayLimitLoose from "./iterableToArrayLimitLoose.js";
+import unsupportedIterableToArray from "./unsupportedIterableToArray.js";
+import nonIterableRest from "./nonIterableRest.js";
+export default function _slicedToArrayLoose(arr, i) {
+ return arrayWithHoles(arr) || iterableToArrayLimitLoose(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/superPropBase.js b/node_modules/@babel/runtime/helpers/esm/superPropBase.js
new file mode 100644
index 0000000000..feffe6f7e9
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/superPropBase.js
@@ -0,0 +1,9 @@
+import getPrototypeOf from "./getPrototypeOf.js";
+export default function _superPropBase(object, property) {
+ while (!Object.prototype.hasOwnProperty.call(object, property)) {
+ object = getPrototypeOf(object);
+ if (object === null) break;
+ }
+
+ return object;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js b/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js
new file mode 100644
index 0000000000..421f18abde
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js
@@ -0,0 +1,11 @@
+export default function _taggedTemplateLiteral(strings, raw) {
+ if (!raw) {
+ raw = strings.slice(0);
+ }
+
+ return Object.freeze(Object.defineProperties(strings, {
+ raw: {
+ value: Object.freeze(raw)
+ }
+ }));
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteralLoose.js b/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteralLoose.js
new file mode 100644
index 0000000000..c8f081e9ee
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteralLoose.js
@@ -0,0 +1,8 @@
+export default function _taggedTemplateLiteralLoose(strings, raw) {
+ if (!raw) {
+ raw = strings.slice(0);
+ }
+
+ strings.raw = raw;
+ return strings;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/tdz.js b/node_modules/@babel/runtime/helpers/esm/tdz.js
new file mode 100644
index 0000000000..d5d0adc8a6
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/tdz.js
@@ -0,0 +1,3 @@
+export default function _tdzError(name) {
+ throw new ReferenceError(name + " is not defined - temporal dead zone");
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/temporalRef.js b/node_modules/@babel/runtime/helpers/esm/temporalRef.js
new file mode 100644
index 0000000000..b25f7c44f4
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/temporalRef.js
@@ -0,0 +1,5 @@
+import undef from "./temporalUndefined.js";
+import err from "./tdz.js";
+export default function _temporalRef(val, name) {
+ return val === undef ? err(name) : val;
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/temporalUndefined.js b/node_modules/@babel/runtime/helpers/esm/temporalUndefined.js
new file mode 100644
index 0000000000..1a35717342
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/temporalUndefined.js
@@ -0,0 +1 @@
+export default function _temporalUndefined() {}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/toArray.js b/node_modules/@babel/runtime/helpers/esm/toArray.js
new file mode 100644
index 0000000000..ad7c871a54
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/toArray.js
@@ -0,0 +1,7 @@
+import arrayWithHoles from "./arrayWithHoles.js";
+import iterableToArray from "./iterableToArray.js";
+import unsupportedIterableToArray from "./unsupportedIterableToArray.js";
+import nonIterableRest from "./nonIterableRest.js";
+export default function _toArray(arr) {
+ return arrayWithHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableRest();
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js b/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js
new file mode 100644
index 0000000000..bd91285592
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js
@@ -0,0 +1,7 @@
+import arrayWithoutHoles from "./arrayWithoutHoles.js";
+import iterableToArray from "./iterableToArray.js";
+import unsupportedIterableToArray from "./unsupportedIterableToArray.js";
+import nonIterableSpread from "./nonIterableSpread.js";
+export default function _toConsumableArray(arr) {
+ return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/toPrimitive.js b/node_modules/@babel/runtime/helpers/esm/toPrimitive.js
new file mode 100644
index 0000000000..4cb70a546d
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/toPrimitive.js
@@ -0,0 +1,13 @@
+import _typeof from "@babel/runtime/helpers/typeof";
+export default function _toPrimitive(input, hint) {
+ if (_typeof(input) !== "object" || input === null) return input;
+ var prim = input[Symbol.toPrimitive];
+
+ if (prim !== undefined) {
+ var res = prim.call(input, hint || "default");
+ if (_typeof(res) !== "object") return res;
+ throw new TypeError("@@toPrimitive must return a primitive value.");
+ }
+
+ return (hint === "string" ? String : Number)(input);
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js b/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js
new file mode 100644
index 0000000000..f1ba8a258a
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js
@@ -0,0 +1,6 @@
+import _typeof from "@babel/runtime/helpers/typeof";
+import toPrimitive from "./toPrimitive.js";
+export default function _toPropertyKey(arg) {
+ var key = toPrimitive(arg, "string");
+ return _typeof(key) === "symbol" ? key : String(key);
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/typeof.js b/node_modules/@babel/runtime/helpers/esm/typeof.js
new file mode 100644
index 0000000000..eb444f73d8
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/typeof.js
@@ -0,0 +1,15 @@
+export default function _typeof(obj) {
+ "@babel/helpers - typeof";
+
+ if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
+ _typeof = function _typeof(obj) {
+ return typeof obj;
+ };
+ } else {
+ _typeof = function _typeof(obj) {
+ return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
+ };
+ }
+
+ return _typeof(obj);
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js b/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js
new file mode 100644
index 0000000000..c0f63bd5a8
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js
@@ -0,0 +1,9 @@
+import arrayLikeToArray from "./arrayLikeToArray.js";
+export default 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);
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/wrapAsyncGenerator.js b/node_modules/@babel/runtime/helpers/esm/wrapAsyncGenerator.js
new file mode 100644
index 0000000000..723b2ddacd
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/wrapAsyncGenerator.js
@@ -0,0 +1,6 @@
+import AsyncGenerator from "./AsyncGenerator.js";
+export default function _wrapAsyncGenerator(fn) {
+ return function () {
+ return new AsyncGenerator(fn.apply(this, arguments));
+ };
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js b/node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js
new file mode 100644
index 0000000000..512630d0ea
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js
@@ -0,0 +1,37 @@
+import getPrototypeOf from "./getPrototypeOf.js";
+import setPrototypeOf from "./setPrototypeOf.js";
+import isNativeFunction from "./isNativeFunction.js";
+import construct from "./construct.js";
+export default function _wrapNativeSuper(Class) {
+ var _cache = typeof Map === "function" ? new Map() : undefined;
+
+ _wrapNativeSuper = function _wrapNativeSuper(Class) {
+ if (Class === null || !isNativeFunction(Class)) return Class;
+
+ if (typeof Class !== "function") {
+ throw new TypeError("Super expression must either be null or a function");
+ }
+
+ if (typeof _cache !== "undefined") {
+ if (_cache.has(Class)) return _cache.get(Class);
+
+ _cache.set(Class, Wrapper);
+ }
+
+ function Wrapper() {
+ return construct(Class, arguments, getPrototypeOf(this).constructor);
+ }
+
+ Wrapper.prototype = Object.create(Class.prototype, {
+ constructor: {
+ value: Wrapper,
+ enumerable: false,
+ writable: true,
+ configurable: true
+ }
+ });
+ return setPrototypeOf(Wrapper, Class);
+ };
+
+ return _wrapNativeSuper(Class);
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/wrapRegExp.js b/node_modules/@babel/runtime/helpers/esm/wrapRegExp.js
new file mode 100644
index 0000000000..4d65336149
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/wrapRegExp.js
@@ -0,0 +1,65 @@
+import _typeof from "@babel/runtime/helpers/typeof";
+import setPrototypeOf from "./setPrototypeOf.js";
+import inherits from "./inherits.js";
+export default function _wrapRegExp() {
+ _wrapRegExp = function _wrapRegExp(re, groups) {
+ return new BabelRegExp(re, undefined, groups);
+ };
+
+ var _super = RegExp.prototype;
+
+ var _groups = new WeakMap();
+
+ function BabelRegExp(re, flags, groups) {
+ var _this = new RegExp(re, flags);
+
+ _groups.set(_this, groups || _groups.get(re));
+
+ return setPrototypeOf(_this, BabelRegExp.prototype);
+ }
+
+ inherits(BabelRegExp, RegExp);
+
+ BabelRegExp.prototype.exec = function (str) {
+ var result = _super.exec.call(this, str);
+
+ if (result) result.groups = buildGroups(result, this);
+ return result;
+ };
+
+ BabelRegExp.prototype[Symbol.replace] = function (str, substitution) {
+ if (typeof substitution === "string") {
+ var groups = _groups.get(this);
+
+ return _super[Symbol.replace].call(this, str, substitution.replace(/\$<([^>]+)>/g, function (_, name) {
+ return "$" + groups[name];
+ }));
+ } else if (typeof substitution === "function") {
+ var _this = this;
+
+ return _super[Symbol.replace].call(this, str, function () {
+ var args = arguments;
+
+ if (_typeof(args[args.length - 1]) !== "object") {
+ args = [].slice.call(args);
+ args.push(buildGroups(args, _this));
+ }
+
+ return substitution.apply(this, args);
+ });
+ } else {
+ return _super[Symbol.replace].call(this, str, substitution);
+ }
+ };
+
+ function buildGroups(result, re) {
+ var g = _groups.get(re);
+
+ return Object.keys(g).reduce(function (groups, name) {
+ groups[name] = result[g[name]];
+ return groups;
+ }, Object.create(null));
+ }
+
+ return _wrapRegExp.apply(this, arguments);
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/esm/writeOnlyError.js b/node_modules/@babel/runtime/helpers/esm/writeOnlyError.js
new file mode 100644
index 0000000000..9170bd45d8
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/esm/writeOnlyError.js
@@ -0,0 +1,3 @@
+export default function _writeOnlyError(name) {
+ throw new TypeError("\"" + name + "\" is write-only");
+}
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/extends.js b/node_modules/@babel/runtime/helpers/extends.js
new file mode 100644
index 0000000000..eaf954719d
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/extends.js
@@ -0,0 +1,21 @@
+function _extends() {
+ module.exports = _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;
+ };
+
+ module.exports["default"] = module.exports, module.exports.__esModule = true;
+ return _extends.apply(this, arguments);
+}
+
+module.exports = _extends;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/get.js b/node_modules/@babel/runtime/helpers/get.js
new file mode 100644
index 0000000000..3ed600f20c
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/get.js
@@ -0,0 +1,27 @@
+var superPropBase = require("./superPropBase.js");
+
+function _get(target, property, receiver) {
+ if (typeof Reflect !== "undefined" && Reflect.get) {
+ module.exports = _get = Reflect.get;
+ module.exports["default"] = module.exports, module.exports.__esModule = true;
+ } else {
+ module.exports = _get = function _get(target, property, receiver) {
+ var base = superPropBase(target, property);
+ if (!base) return;
+ var desc = Object.getOwnPropertyDescriptor(base, property);
+
+ if (desc.get) {
+ return desc.get.call(receiver);
+ }
+
+ return desc.value;
+ };
+
+ module.exports["default"] = module.exports, module.exports.__esModule = true;
+ }
+
+ return _get(target, property, receiver || target);
+}
+
+module.exports = _get;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/getPrototypeOf.js b/node_modules/@babel/runtime/helpers/getPrototypeOf.js
new file mode 100644
index 0000000000..a6916ebc1f
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/getPrototypeOf.js
@@ -0,0 +1,10 @@
+function _getPrototypeOf(o) {
+ module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
+ return o.__proto__ || Object.getPrototypeOf(o);
+ };
+ module.exports["default"] = module.exports, module.exports.__esModule = true;
+ return _getPrototypeOf(o);
+}
+
+module.exports = _getPrototypeOf;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/inherits.js b/node_modules/@babel/runtime/helpers/inherits.js
new file mode 100644
index 0000000000..3003e015d0
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/inherits.js
@@ -0,0 +1,19 @@
+var setPrototypeOf = require("./setPrototypeOf.js");
+
+function _inherits(subClass, superClass) {
+ if (typeof superClass !== "function" && superClass !== null) {
+ throw new TypeError("Super expression must either be null or a function");
+ }
+
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
+ constructor: {
+ value: subClass,
+ writable: true,
+ configurable: true
+ }
+ });
+ if (superClass) setPrototypeOf(subClass, superClass);
+}
+
+module.exports = _inherits;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/inheritsLoose.js b/node_modules/@babel/runtime/helpers/inheritsLoose.js
new file mode 100644
index 0000000000..93e4305967
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/inheritsLoose.js
@@ -0,0 +1,10 @@
+var setPrototypeOf = require("./setPrototypeOf.js");
+
+function _inheritsLoose(subClass, superClass) {
+ subClass.prototype = Object.create(superClass.prototype);
+ subClass.prototype.constructor = subClass;
+ setPrototypeOf(subClass, superClass);
+}
+
+module.exports = _inheritsLoose;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/initializerDefineProperty.js b/node_modules/@babel/runtime/helpers/initializerDefineProperty.js
new file mode 100644
index 0000000000..6b1069e6d5
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/initializerDefineProperty.js
@@ -0,0 +1,12 @@
+function _initializerDefineProperty(target, property, descriptor, context) {
+ if (!descriptor) return;
+ Object.defineProperty(target, property, {
+ enumerable: descriptor.enumerable,
+ configurable: descriptor.configurable,
+ writable: descriptor.writable,
+ value: descriptor.initializer ? descriptor.initializer.call(context) : void 0
+ });
+}
+
+module.exports = _initializerDefineProperty;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/initializerWarningHelper.js b/node_modules/@babel/runtime/helpers/initializerWarningHelper.js
new file mode 100644
index 0000000000..9d02886547
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/initializerWarningHelper.js
@@ -0,0 +1,6 @@
+function _initializerWarningHelper(descriptor, context) {
+ throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.');
+}
+
+module.exports = _initializerWarningHelper;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/instanceof.js b/node_modules/@babel/runtime/helpers/instanceof.js
new file mode 100644
index 0000000000..654ebc8a17
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/instanceof.js
@@ -0,0 +1,10 @@
+function _instanceof(left, right) {
+ if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
+ return !!right[Symbol.hasInstance](left);
+ } else {
+ return left instanceof right;
+ }
+}
+
+module.exports = _instanceof;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/interopRequireDefault.js b/node_modules/@babel/runtime/helpers/interopRequireDefault.js
new file mode 100644
index 0000000000..6a2136859b
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/interopRequireDefault.js
@@ -0,0 +1,8 @@
+function _interopRequireDefault(obj) {
+ return obj && obj.__esModule ? obj : {
+ "default": obj
+ };
+}
+
+module.exports = _interopRequireDefault;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/interopRequireWildcard.js b/node_modules/@babel/runtime/helpers/interopRequireWildcard.js
new file mode 100644
index 0000000000..635f8bb60b
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/interopRequireWildcard.js
@@ -0,0 +1,54 @@
+var _typeof = require("@babel/runtime/helpers/typeof")["default"];
+
+function _getRequireWildcardCache(nodeInterop) {
+ if (typeof WeakMap !== "function") return null;
+ var cacheBabelInterop = new WeakMap();
+ var cacheNodeInterop = new WeakMap();
+ return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) {
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
+ })(nodeInterop);
+}
+
+function _interopRequireWildcard(obj, nodeInterop) {
+ if (!nodeInterop && obj && obj.__esModule) {
+ return obj;
+ }
+
+ if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") {
+ return {
+ "default": obj
+ };
+ }
+
+ var cache = _getRequireWildcardCache(nodeInterop);
+
+ if (cache && cache.has(obj)) {
+ return cache.get(obj);
+ }
+
+ var newObj = {};
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
+
+ for (var key in obj) {
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
+
+ if (desc && (desc.get || desc.set)) {
+ Object.defineProperty(newObj, key, desc);
+ } else {
+ newObj[key] = obj[key];
+ }
+ }
+ }
+
+ newObj["default"] = obj;
+
+ if (cache) {
+ cache.set(obj, newObj);
+ }
+
+ return newObj;
+}
+
+module.exports = _interopRequireWildcard;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/isNativeFunction.js b/node_modules/@babel/runtime/helpers/isNativeFunction.js
new file mode 100644
index 0000000000..50eb8f5b02
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/isNativeFunction.js
@@ -0,0 +1,6 @@
+function _isNativeFunction(fn) {
+ return Function.toString.call(fn).indexOf("[native code]") !== -1;
+}
+
+module.exports = _isNativeFunction;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js b/node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js
new file mode 100644
index 0000000000..3a201a6d99
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js
@@ -0,0 +1,15 @@
+function _isNativeReflectConstruct() {
+ if (typeof Reflect === "undefined" || !Reflect.construct) return false;
+ if (Reflect.construct.sham) return false;
+ if (typeof Proxy === "function") return true;
+
+ try {
+ Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));
+ return true;
+ } catch (e) {
+ return false;
+ }
+}
+
+module.exports = _isNativeReflectConstruct;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/iterableToArray.js b/node_modules/@babel/runtime/helpers/iterableToArray.js
new file mode 100644
index 0000000000..03f955d68e
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/iterableToArray.js
@@ -0,0 +1,6 @@
+function _iterableToArray(iter) {
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
+}
+
+module.exports = _iterableToArray;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/iterableToArrayLimit.js b/node_modules/@babel/runtime/helpers/iterableToArrayLimit.js
new file mode 100644
index 0000000000..d236ee16ff
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/iterableToArrayLimit.js
@@ -0,0 +1,32 @@
+function _iterableToArrayLimit(arr, i) {
+ var _i = arr && (typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]);
+
+ if (_i == null) return;
+ var _arr = [];
+ var _n = true;
+ var _d = false;
+
+ var _s, _e;
+
+ try {
+ for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
+ _arr.push(_s.value);
+
+ if (i && _arr.length === i) break;
+ }
+ } catch (err) {
+ _d = true;
+ _e = err;
+ } finally {
+ try {
+ if (!_n && _i["return"] != null) _i["return"]();
+ } finally {
+ if (_d) throw _e;
+ }
+ }
+
+ return _arr;
+}
+
+module.exports = _iterableToArrayLimit;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/iterableToArrayLimitLoose.js b/node_modules/@babel/runtime/helpers/iterableToArrayLimitLoose.js
new file mode 100644
index 0000000000..fb05b126e6
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/iterableToArrayLimitLoose.js
@@ -0,0 +1,17 @@
+function _iterableToArrayLimitLoose(arr, i) {
+ var _i = arr && (typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]);
+
+ if (_i == null) return;
+ var _arr = [];
+
+ for (_i = _i.call(arr), _step; !(_step = _i.next()).done;) {
+ _arr.push(_step.value);
+
+ if (i && _arr.length === i) break;
+ }
+
+ return _arr;
+}
+
+module.exports = _iterableToArrayLimitLoose;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/jsx.js b/node_modules/@babel/runtime/helpers/jsx.js
new file mode 100644
index 0000000000..21ac8470f0
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/jsx.js
@@ -0,0 +1,50 @@
+var REACT_ELEMENT_TYPE;
+
+function _createRawReactElement(type, props, key, children) {
+ if (!REACT_ELEMENT_TYPE) {
+ REACT_ELEMENT_TYPE = typeof Symbol === "function" && Symbol["for"] && Symbol["for"]("react.element") || 0xeac7;
+ }
+
+ var defaultProps = type && type.defaultProps;
+ var childrenLength = arguments.length - 3;
+
+ if (!props && childrenLength !== 0) {
+ props = {
+ children: void 0
+ };
+ }
+
+ if (childrenLength === 1) {
+ props.children = children;
+ } else if (childrenLength > 1) {
+ var childArray = new Array(childrenLength);
+
+ for (var i = 0; i < childrenLength; i++) {
+ childArray[i] = arguments[i + 3];
+ }
+
+ props.children = childArray;
+ }
+
+ if (props && defaultProps) {
+ for (var propName in defaultProps) {
+ if (props[propName] === void 0) {
+ props[propName] = defaultProps[propName];
+ }
+ }
+ } else if (!props) {
+ props = defaultProps || {};
+ }
+
+ return {
+ $$typeof: REACT_ELEMENT_TYPE,
+ type: type,
+ key: key === undefined ? null : "" + key,
+ ref: null,
+ props: props,
+ _owner: null
+ };
+}
+
+module.exports = _createRawReactElement;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/maybeArrayLike.js b/node_modules/@babel/runtime/helpers/maybeArrayLike.js
new file mode 100644
index 0000000000..3ab618be0a
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/maybeArrayLike.js
@@ -0,0 +1,13 @@
+var arrayLikeToArray = require("./arrayLikeToArray.js");
+
+function _maybeArrayLike(next, arr, i) {
+ if (arr && !Array.isArray(arr) && typeof arr.length === "number") {
+ var len = arr.length;
+ return arrayLikeToArray(arr, i !== void 0 && i < len ? i : len);
+ }
+
+ return next(arr, i);
+}
+
+module.exports = _maybeArrayLike;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/newArrowCheck.js b/node_modules/@babel/runtime/helpers/newArrowCheck.js
new file mode 100644
index 0000000000..8d7570b6a6
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/newArrowCheck.js
@@ -0,0 +1,8 @@
+function _newArrowCheck(innerThis, boundThis) {
+ if (innerThis !== boundThis) {
+ throw new TypeError("Cannot instantiate an arrow function");
+ }
+}
+
+module.exports = _newArrowCheck;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/nonIterableRest.js b/node_modules/@babel/runtime/helpers/nonIterableRest.js
new file mode 100644
index 0000000000..22be4f5376
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/nonIterableRest.js
@@ -0,0 +1,6 @@
+function _nonIterableRest() {
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
+}
+
+module.exports = _nonIterableRest;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/nonIterableSpread.js b/node_modules/@babel/runtime/helpers/nonIterableSpread.js
new file mode 100644
index 0000000000..4ba722d09a
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/nonIterableSpread.js
@@ -0,0 +1,6 @@
+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.");
+}
+
+module.exports = _nonIterableSpread;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js b/node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js
new file mode 100644
index 0000000000..1bb88acd73
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js
@@ -0,0 +1,6 @@
+function _objectDestructuringEmpty(obj) {
+ if (obj == null) throw new TypeError("Cannot destructure undefined");
+}
+
+module.exports = _objectDestructuringEmpty;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/objectSpread.js b/node_modules/@babel/runtime/helpers/objectSpread.js
new file mode 100644
index 0000000000..00af2096ff
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/objectSpread.js
@@ -0,0 +1,23 @@
+var defineProperty = require("./defineProperty.js");
+
+function _objectSpread(target) {
+ for (var i = 1; i < arguments.length; i++) {
+ var source = arguments[i] != null ? Object(arguments[i]) : {};
+ var ownKeys = Object.keys(source);
+
+ if (typeof Object.getOwnPropertySymbols === 'function') {
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
+ }));
+ }
+
+ ownKeys.forEach(function (key) {
+ defineProperty(target, key, source[key]);
+ });
+ }
+
+ return target;
+}
+
+module.exports = _objectSpread;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/objectSpread2.js b/node_modules/@babel/runtime/helpers/objectSpread2.js
new file mode 100644
index 0000000000..337d30e510
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/objectSpread2.js
@@ -0,0 +1,42 @@
+var defineProperty = require("./defineProperty.js");
+
+function ownKeys(object, enumerableOnly) {
+ var keys = Object.keys(object);
+
+ if (Object.getOwnPropertySymbols) {
+ var symbols = Object.getOwnPropertySymbols(object);
+
+ if (enumerableOnly) {
+ symbols = symbols.filter(function (sym) {
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
+ });
+ }
+
+ keys.push.apply(keys, symbols);
+ }
+
+ return keys;
+}
+
+function _objectSpread2(target) {
+ for (var i = 1; i < arguments.length; i++) {
+ var source = arguments[i] != null ? arguments[i] : {};
+
+ if (i % 2) {
+ ownKeys(Object(source), true).forEach(function (key) {
+ defineProperty(target, key, source[key]);
+ });
+ } else if (Object.getOwnPropertyDescriptors) {
+ Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
+ } else {
+ ownKeys(Object(source)).forEach(function (key) {
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
+ });
+ }
+ }
+
+ return target;
+}
+
+module.exports = _objectSpread2;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/objectWithoutProperties.js b/node_modules/@babel/runtime/helpers/objectWithoutProperties.js
new file mode 100644
index 0000000000..c000db73cf
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/objectWithoutProperties.js
@@ -0,0 +1,23 @@
+var objectWithoutPropertiesLoose = require("./objectWithoutPropertiesLoose.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;
+}
+
+module.exports = _objectWithoutProperties;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js b/node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js
new file mode 100644
index 0000000000..d9a73de0a3
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js
@@ -0,0 +1,17 @@
+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;
+}
+
+module.exports = _objectWithoutPropertiesLoose;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/possibleConstructorReturn.js b/node_modules/@babel/runtime/helpers/possibleConstructorReturn.js
new file mode 100644
index 0000000000..259ea2b47a
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/possibleConstructorReturn.js
@@ -0,0 +1,14 @@
+var _typeof = require("@babel/runtime/helpers/typeof")["default"];
+
+var assertThisInitialized = require("./assertThisInitialized.js");
+
+function _possibleConstructorReturn(self, call) {
+ if (call && (_typeof(call) === "object" || typeof call === "function")) {
+ return call;
+ }
+
+ return assertThisInitialized(self);
+}
+
+module.exports = _possibleConstructorReturn;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/readOnlyError.js b/node_modules/@babel/runtime/helpers/readOnlyError.js
new file mode 100644
index 0000000000..e805f89c08
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/readOnlyError.js
@@ -0,0 +1,6 @@
+function _readOnlyError(name) {
+ throw new TypeError("\"" + name + "\" is read-only");
+}
+
+module.exports = _readOnlyError;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/set.js b/node_modules/@babel/runtime/helpers/set.js
new file mode 100644
index 0000000000..b7d184dc54
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/set.js
@@ -0,0 +1,55 @@
+var superPropBase = require("./superPropBase.js");
+
+var defineProperty = require("./defineProperty.js");
+
+function set(target, property, value, receiver) {
+ if (typeof Reflect !== "undefined" && Reflect.set) {
+ set = Reflect.set;
+ } else {
+ set = function set(target, property, value, receiver) {
+ var base = superPropBase(target, property);
+ var desc;
+
+ if (base) {
+ desc = Object.getOwnPropertyDescriptor(base, property);
+
+ if (desc.set) {
+ desc.set.call(receiver, value);
+ return true;
+ } else if (!desc.writable) {
+ return false;
+ }
+ }
+
+ desc = Object.getOwnPropertyDescriptor(receiver, property);
+
+ if (desc) {
+ if (!desc.writable) {
+ return false;
+ }
+
+ desc.value = value;
+ Object.defineProperty(receiver, property, desc);
+ } else {
+ defineProperty(receiver, property, value);
+ }
+
+ return true;
+ };
+ }
+
+ return set(target, property, value, receiver);
+}
+
+function _set(target, property, value, receiver, isStrict) {
+ var s = set(target, property, value, receiver || target);
+
+ if (!s && isStrict) {
+ throw new Error('failed to set property');
+ }
+
+ return value;
+}
+
+module.exports = _set;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/setPrototypeOf.js b/node_modules/@babel/runtime/helpers/setPrototypeOf.js
new file mode 100644
index 0000000000..415797b3a0
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/setPrototypeOf.js
@@ -0,0 +1,12 @@
+function _setPrototypeOf(o, p) {
+ module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
+ o.__proto__ = p;
+ return o;
+ };
+
+ module.exports["default"] = module.exports, module.exports.__esModule = true;
+ return _setPrototypeOf(o, p);
+}
+
+module.exports = _setPrototypeOf;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/skipFirstGeneratorNext.js b/node_modules/@babel/runtime/helpers/skipFirstGeneratorNext.js
new file mode 100644
index 0000000000..ed605859d3
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/skipFirstGeneratorNext.js
@@ -0,0 +1,10 @@
+function _skipFirstGeneratorNext(fn) {
+ return function () {
+ var it = fn.apply(this, arguments);
+ it.next();
+ return it;
+ };
+}
+
+module.exports = _skipFirstGeneratorNext;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/slicedToArray.js b/node_modules/@babel/runtime/helpers/slicedToArray.js
new file mode 100644
index 0000000000..101f404b17
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/slicedToArray.js
@@ -0,0 +1,14 @@
+var arrayWithHoles = require("./arrayWithHoles.js");
+
+var iterableToArrayLimit = require("./iterableToArrayLimit.js");
+
+var unsupportedIterableToArray = require("./unsupportedIterableToArray.js");
+
+var nonIterableRest = require("./nonIterableRest.js");
+
+function _slicedToArray(arr, i) {
+ return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
+}
+
+module.exports = _slicedToArray;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/slicedToArrayLoose.js b/node_modules/@babel/runtime/helpers/slicedToArrayLoose.js
new file mode 100644
index 0000000000..188db631de
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/slicedToArrayLoose.js
@@ -0,0 +1,14 @@
+var arrayWithHoles = require("./arrayWithHoles.js");
+
+var iterableToArrayLimitLoose = require("./iterableToArrayLimitLoose.js");
+
+var unsupportedIterableToArray = require("./unsupportedIterableToArray.js");
+
+var nonIterableRest = require("./nonIterableRest.js");
+
+function _slicedToArrayLoose(arr, i) {
+ return arrayWithHoles(arr) || iterableToArrayLimitLoose(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
+}
+
+module.exports = _slicedToArrayLoose;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/superPropBase.js b/node_modules/@babel/runtime/helpers/superPropBase.js
new file mode 100644
index 0000000000..ce12a88617
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/superPropBase.js
@@ -0,0 +1,13 @@
+var getPrototypeOf = require("./getPrototypeOf.js");
+
+function _superPropBase(object, property) {
+ while (!Object.prototype.hasOwnProperty.call(object, property)) {
+ object = getPrototypeOf(object);
+ if (object === null) break;
+ }
+
+ return object;
+}
+
+module.exports = _superPropBase;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js b/node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js
new file mode 100644
index 0000000000..1a524b387f
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js
@@ -0,0 +1,14 @@
+function _taggedTemplateLiteral(strings, raw) {
+ if (!raw) {
+ raw = strings.slice(0);
+ }
+
+ return Object.freeze(Object.defineProperties(strings, {
+ raw: {
+ value: Object.freeze(raw)
+ }
+ }));
+}
+
+module.exports = _taggedTemplateLiteral;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js b/node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js
new file mode 100644
index 0000000000..ab78e62fd2
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js
@@ -0,0 +1,11 @@
+function _taggedTemplateLiteralLoose(strings, raw) {
+ if (!raw) {
+ raw = strings.slice(0);
+ }
+
+ strings.raw = raw;
+ return strings;
+}
+
+module.exports = _taggedTemplateLiteralLoose;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/tdz.js b/node_modules/@babel/runtime/helpers/tdz.js
new file mode 100644
index 0000000000..a5b35a6b6b
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/tdz.js
@@ -0,0 +1,6 @@
+function _tdzError(name) {
+ throw new ReferenceError(name + " is not defined - temporal dead zone");
+}
+
+module.exports = _tdzError;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/temporalRef.js b/node_modules/@babel/runtime/helpers/temporalRef.js
new file mode 100644
index 0000000000..d4e9460656
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/temporalRef.js
@@ -0,0 +1,10 @@
+var temporalUndefined = require("./temporalUndefined.js");
+
+var tdz = require("./tdz.js");
+
+function _temporalRef(val, name) {
+ return val === temporalUndefined ? tdz(name) : val;
+}
+
+module.exports = _temporalRef;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/temporalUndefined.js b/node_modules/@babel/runtime/helpers/temporalUndefined.js
new file mode 100644
index 0000000000..aeae645a0f
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/temporalUndefined.js
@@ -0,0 +1,4 @@
+function _temporalUndefined() {}
+
+module.exports = _temporalUndefined;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/toArray.js b/node_modules/@babel/runtime/helpers/toArray.js
new file mode 100644
index 0000000000..3b911bda31
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/toArray.js
@@ -0,0 +1,14 @@
+var arrayWithHoles = require("./arrayWithHoles.js");
+
+var iterableToArray = require("./iterableToArray.js");
+
+var unsupportedIterableToArray = require("./unsupportedIterableToArray.js");
+
+var nonIterableRest = require("./nonIterableRest.js");
+
+function _toArray(arr) {
+ return arrayWithHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableRest();
+}
+
+module.exports = _toArray;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/toConsumableArray.js b/node_modules/@babel/runtime/helpers/toConsumableArray.js
new file mode 100644
index 0000000000..f084cd1bcd
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/toConsumableArray.js
@@ -0,0 +1,14 @@
+var arrayWithoutHoles = require("./arrayWithoutHoles.js");
+
+var iterableToArray = require("./iterableToArray.js");
+
+var unsupportedIterableToArray = require("./unsupportedIterableToArray.js");
+
+var nonIterableSpread = require("./nonIterableSpread.js");
+
+function _toConsumableArray(arr) {
+ return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();
+}
+
+module.exports = _toConsumableArray;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/toPrimitive.js b/node_modules/@babel/runtime/helpers/toPrimitive.js
new file mode 100644
index 0000000000..ac40338459
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/toPrimitive.js
@@ -0,0 +1,17 @@
+var _typeof = require("@babel/runtime/helpers/typeof")["default"];
+
+function _toPrimitive(input, hint) {
+ if (_typeof(input) !== "object" || input === null) return input;
+ var prim = input[Symbol.toPrimitive];
+
+ if (prim !== undefined) {
+ var res = prim.call(input, hint || "default");
+ if (_typeof(res) !== "object") return res;
+ throw new TypeError("@@toPrimitive must return a primitive value.");
+ }
+
+ return (hint === "string" ? String : Number)(input);
+}
+
+module.exports = _toPrimitive;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/toPropertyKey.js b/node_modules/@babel/runtime/helpers/toPropertyKey.js
new file mode 100644
index 0000000000..066b3f279d
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/toPropertyKey.js
@@ -0,0 +1,11 @@
+var _typeof = require("@babel/runtime/helpers/typeof")["default"];
+
+var toPrimitive = require("./toPrimitive.js");
+
+function _toPropertyKey(arg) {
+ var key = toPrimitive(arg, "string");
+ return _typeof(key) === "symbol" ? key : String(key);
+}
+
+module.exports = _toPropertyKey;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/typeof.js b/node_modules/@babel/runtime/helpers/typeof.js
new file mode 100644
index 0000000000..02a5d8a8c5
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/typeof.js
@@ -0,0 +1,22 @@
+function _typeof(obj) {
+ "@babel/helpers - typeof";
+
+ if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
+ module.exports = _typeof = function _typeof(obj) {
+ return typeof obj;
+ };
+
+ module.exports["default"] = module.exports, module.exports.__esModule = true;
+ } else {
+ module.exports = _typeof = function _typeof(obj) {
+ return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
+ };
+
+ module.exports["default"] = module.exports, module.exports.__esModule = true;
+ }
+
+ return _typeof(obj);
+}
+
+module.exports = _typeof;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js b/node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js
new file mode 100644
index 0000000000..11bca7b566
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js
@@ -0,0 +1,13 @@
+var arrayLikeToArray = require("./arrayLikeToArray.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);
+}
+
+module.exports = _unsupportedIterableToArray;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/wrapAsyncGenerator.js b/node_modules/@babel/runtime/helpers/wrapAsyncGenerator.js
new file mode 100644
index 0000000000..057cd196b8
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/wrapAsyncGenerator.js
@@ -0,0 +1,10 @@
+var AsyncGenerator = require("./AsyncGenerator.js");
+
+function _wrapAsyncGenerator(fn) {
+ return function () {
+ return new AsyncGenerator(fn.apply(this, arguments));
+ };
+}
+
+module.exports = _wrapAsyncGenerator;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/wrapNativeSuper.js b/node_modules/@babel/runtime/helpers/wrapNativeSuper.js
new file mode 100644
index 0000000000..981c8dd4e0
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/wrapNativeSuper.js
@@ -0,0 +1,45 @@
+var getPrototypeOf = require("./getPrototypeOf.js");
+
+var setPrototypeOf = require("./setPrototypeOf.js");
+
+var isNativeFunction = require("./isNativeFunction.js");
+
+var construct = require("./construct.js");
+
+function _wrapNativeSuper(Class) {
+ var _cache = typeof Map === "function" ? new Map() : undefined;
+
+ module.exports = _wrapNativeSuper = function _wrapNativeSuper(Class) {
+ if (Class === null || !isNativeFunction(Class)) return Class;
+
+ if (typeof Class !== "function") {
+ throw new TypeError("Super expression must either be null or a function");
+ }
+
+ if (typeof _cache !== "undefined") {
+ if (_cache.has(Class)) return _cache.get(Class);
+
+ _cache.set(Class, Wrapper);
+ }
+
+ function Wrapper() {
+ return construct(Class, arguments, getPrototypeOf(this).constructor);
+ }
+
+ Wrapper.prototype = Object.create(Class.prototype, {
+ constructor: {
+ value: Wrapper,
+ enumerable: false,
+ writable: true,
+ configurable: true
+ }
+ });
+ return setPrototypeOf(Wrapper, Class);
+ };
+
+ module.exports["default"] = module.exports, module.exports.__esModule = true;
+ return _wrapNativeSuper(Class);
+}
+
+module.exports = _wrapNativeSuper;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/wrapRegExp.js b/node_modules/@babel/runtime/helpers/wrapRegExp.js
new file mode 100644
index 0000000000..e80a8b6ab2
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/wrapRegExp.js
@@ -0,0 +1,72 @@
+var _typeof = require("@babel/runtime/helpers/typeof")["default"];
+
+var setPrototypeOf = require("./setPrototypeOf.js");
+
+var inherits = require("./inherits.js");
+
+function _wrapRegExp() {
+ module.exports = _wrapRegExp = function _wrapRegExp(re, groups) {
+ return new BabelRegExp(re, undefined, groups);
+ };
+
+ module.exports["default"] = module.exports, module.exports.__esModule = true;
+ var _super = RegExp.prototype;
+
+ var _groups = new WeakMap();
+
+ function BabelRegExp(re, flags, groups) {
+ var _this = new RegExp(re, flags);
+
+ _groups.set(_this, groups || _groups.get(re));
+
+ return setPrototypeOf(_this, BabelRegExp.prototype);
+ }
+
+ inherits(BabelRegExp, RegExp);
+
+ BabelRegExp.prototype.exec = function (str) {
+ var result = _super.exec.call(this, str);
+
+ if (result) result.groups = buildGroups(result, this);
+ return result;
+ };
+
+ BabelRegExp.prototype[Symbol.replace] = function (str, substitution) {
+ if (typeof substitution === "string") {
+ var groups = _groups.get(this);
+
+ return _super[Symbol.replace].call(this, str, substitution.replace(/\$<([^>]+)>/g, function (_, name) {
+ return "$" + groups[name];
+ }));
+ } else if (typeof substitution === "function") {
+ var _this = this;
+
+ return _super[Symbol.replace].call(this, str, function () {
+ var args = arguments;
+
+ if (_typeof(args[args.length - 1]) !== "object") {
+ args = [].slice.call(args);
+ args.push(buildGroups(args, _this));
+ }
+
+ return substitution.apply(this, args);
+ });
+ } else {
+ return _super[Symbol.replace].call(this, str, substitution);
+ }
+ };
+
+ function buildGroups(result, re) {
+ var g = _groups.get(re);
+
+ return Object.keys(g).reduce(function (groups, name) {
+ groups[name] = result[g[name]];
+ return groups;
+ }, Object.create(null));
+ }
+
+ return _wrapRegExp.apply(this, arguments);
+}
+
+module.exports = _wrapRegExp;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/helpers/writeOnlyError.js b/node_modules/@babel/runtime/helpers/writeOnlyError.js
new file mode 100644
index 0000000000..6751a74d58
--- /dev/null
+++ b/node_modules/@babel/runtime/helpers/writeOnlyError.js
@@ -0,0 +1,6 @@
+function _writeOnlyError(name) {
+ throw new TypeError("\"" + name + "\" is write-only");
+}
+
+module.exports = _writeOnlyError;
+module.exports["default"] = module.exports, module.exports.__esModule = true;
\ No newline at end of file
diff --git a/node_modules/@babel/runtime/package.json b/node_modules/@babel/runtime/package.json
new file mode 100644
index 0000000000..848f3737d1
--- /dev/null
+++ b/node_modules/@babel/runtime/package.json
@@ -0,0 +1,864 @@
+{
+ "_from": "@babel/runtime@^7.4.4",
+ "_id": "@babel/runtime@7.14.0",
+ "_inBundle": false,
+ "_integrity": "sha512-JELkvo/DlpNdJ7dlyw/eY7E0suy5i5GQH+Vlxaq1nsNJ+H7f4Vtv3jMeCEgRhZZQFXTjldYfQgv2qmM6M1v5wA==",
+ "_location": "/@babel/runtime",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "range",
+ "registry": true,
+ "raw": "@babel/runtime@^7.4.4",
+ "name": "@babel/runtime",
+ "escapedName": "@babel%2fruntime",
+ "scope": "@babel",
+ "rawSpec": "^7.4.4",
+ "saveSpec": null,
+ "fetchSpec": "^7.4.4"
+ },
+ "_requiredBy": [
+ "/@material-ui/core",
+ "/@material-ui/styles",
+ "/@material-ui/system",
+ "/@material-ui/utils",
+ "/css-vendor",
+ "/dom-helpers",
+ "/jss",
+ "/jss-plugin-camel-case",
+ "/jss-plugin-default-unit",
+ "/jss-plugin-global",
+ "/jss-plugin-nested",
+ "/jss-plugin-props-sort",
+ "/jss-plugin-rule-value-function",
+ "/jss-plugin-vendor-prefixer",
+ "/react-transition-group"
+ ],
+ "_resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.0.tgz",
+ "_shasum": "46794bc20b612c5f75e62dd071e24dfd95f1cbe6",
+ "_spec": "@babel/runtime@^7.4.4",
+ "_where": "/Users/kelseynielsen/Coding/Unit-3/3.1 Advanced React/Module 2- The React Lifecycle/React-Github-User-Card/node_modules/@material-ui/core",
+ "author": {
+ "name": "Sebastian McKenzie",
+ "email": "sebmck@gmail.com"
+ },
+ "bugs": {
+ "url": "https://github.com/babel/babel/issues"
+ },
+ "bundleDependencies": false,
+ "dependencies": {
+ "regenerator-runtime": "^0.13.4"
+ },
+ "deprecated": false,
+ "description": "babel's modular runtime helpers",
+ "exports": {
+ "./helpers/jsx": [
+ {
+ "node": "./helpers/jsx.js",
+ "import": "./helpers/esm/jsx.js",
+ "default": "./helpers/jsx.js"
+ },
+ "./helpers/jsx.js"
+ ],
+ "./helpers/esm/jsx": "./helpers/esm/jsx.js",
+ "./helpers/objectSpread2": [
+ {
+ "node": "./helpers/objectSpread2.js",
+ "import": "./helpers/esm/objectSpread2.js",
+ "default": "./helpers/objectSpread2.js"
+ },
+ "./helpers/objectSpread2.js"
+ ],
+ "./helpers/esm/objectSpread2": "./helpers/esm/objectSpread2.js",
+ "./helpers/typeof": [
+ {
+ "node": "./helpers/typeof.js",
+ "import": "./helpers/esm/typeof.js",
+ "default": "./helpers/typeof.js"
+ },
+ "./helpers/typeof.js"
+ ],
+ "./helpers/esm/typeof": "./helpers/esm/typeof.js",
+ "./helpers/wrapRegExp": [
+ {
+ "node": "./helpers/wrapRegExp.js",
+ "import": "./helpers/esm/wrapRegExp.js",
+ "default": "./helpers/wrapRegExp.js"
+ },
+ "./helpers/wrapRegExp.js"
+ ],
+ "./helpers/esm/wrapRegExp": "./helpers/esm/wrapRegExp.js",
+ "./helpers/asyncIterator": [
+ {
+ "node": "./helpers/asyncIterator.js",
+ "import": "./helpers/esm/asyncIterator.js",
+ "default": "./helpers/asyncIterator.js"
+ },
+ "./helpers/asyncIterator.js"
+ ],
+ "./helpers/esm/asyncIterator": "./helpers/esm/asyncIterator.js",
+ "./helpers/AwaitValue": [
+ {
+ "node": "./helpers/AwaitValue.js",
+ "import": "./helpers/esm/AwaitValue.js",
+ "default": "./helpers/AwaitValue.js"
+ },
+ "./helpers/AwaitValue.js"
+ ],
+ "./helpers/esm/AwaitValue": "./helpers/esm/AwaitValue.js",
+ "./helpers/AsyncGenerator": [
+ {
+ "node": "./helpers/AsyncGenerator.js",
+ "import": "./helpers/esm/AsyncGenerator.js",
+ "default": "./helpers/AsyncGenerator.js"
+ },
+ "./helpers/AsyncGenerator.js"
+ ],
+ "./helpers/esm/AsyncGenerator": "./helpers/esm/AsyncGenerator.js",
+ "./helpers/wrapAsyncGenerator": [
+ {
+ "node": "./helpers/wrapAsyncGenerator.js",
+ "import": "./helpers/esm/wrapAsyncGenerator.js",
+ "default": "./helpers/wrapAsyncGenerator.js"
+ },
+ "./helpers/wrapAsyncGenerator.js"
+ ],
+ "./helpers/esm/wrapAsyncGenerator": "./helpers/esm/wrapAsyncGenerator.js",
+ "./helpers/awaitAsyncGenerator": [
+ {
+ "node": "./helpers/awaitAsyncGenerator.js",
+ "import": "./helpers/esm/awaitAsyncGenerator.js",
+ "default": "./helpers/awaitAsyncGenerator.js"
+ },
+ "./helpers/awaitAsyncGenerator.js"
+ ],
+ "./helpers/esm/awaitAsyncGenerator": "./helpers/esm/awaitAsyncGenerator.js",
+ "./helpers/asyncGeneratorDelegate": [
+ {
+ "node": "./helpers/asyncGeneratorDelegate.js",
+ "import": "./helpers/esm/asyncGeneratorDelegate.js",
+ "default": "./helpers/asyncGeneratorDelegate.js"
+ },
+ "./helpers/asyncGeneratorDelegate.js"
+ ],
+ "./helpers/esm/asyncGeneratorDelegate": "./helpers/esm/asyncGeneratorDelegate.js",
+ "./helpers/asyncToGenerator": [
+ {
+ "node": "./helpers/asyncToGenerator.js",
+ "import": "./helpers/esm/asyncToGenerator.js",
+ "default": "./helpers/asyncToGenerator.js"
+ },
+ "./helpers/asyncToGenerator.js"
+ ],
+ "./helpers/esm/asyncToGenerator": "./helpers/esm/asyncToGenerator.js",
+ "./helpers/classCallCheck": [
+ {
+ "node": "./helpers/classCallCheck.js",
+ "import": "./helpers/esm/classCallCheck.js",
+ "default": "./helpers/classCallCheck.js"
+ },
+ "./helpers/classCallCheck.js"
+ ],
+ "./helpers/esm/classCallCheck": "./helpers/esm/classCallCheck.js",
+ "./helpers/createClass": [
+ {
+ "node": "./helpers/createClass.js",
+ "import": "./helpers/esm/createClass.js",
+ "default": "./helpers/createClass.js"
+ },
+ "./helpers/createClass.js"
+ ],
+ "./helpers/esm/createClass": "./helpers/esm/createClass.js",
+ "./helpers/defineEnumerableProperties": [
+ {
+ "node": "./helpers/defineEnumerableProperties.js",
+ "import": "./helpers/esm/defineEnumerableProperties.js",
+ "default": "./helpers/defineEnumerableProperties.js"
+ },
+ "./helpers/defineEnumerableProperties.js"
+ ],
+ "./helpers/esm/defineEnumerableProperties": "./helpers/esm/defineEnumerableProperties.js",
+ "./helpers/defaults": [
+ {
+ "node": "./helpers/defaults.js",
+ "import": "./helpers/esm/defaults.js",
+ "default": "./helpers/defaults.js"
+ },
+ "./helpers/defaults.js"
+ ],
+ "./helpers/esm/defaults": "./helpers/esm/defaults.js",
+ "./helpers/defineProperty": [
+ {
+ "node": "./helpers/defineProperty.js",
+ "import": "./helpers/esm/defineProperty.js",
+ "default": "./helpers/defineProperty.js"
+ },
+ "./helpers/defineProperty.js"
+ ],
+ "./helpers/esm/defineProperty": "./helpers/esm/defineProperty.js",
+ "./helpers/extends": [
+ {
+ "node": "./helpers/extends.js",
+ "import": "./helpers/esm/extends.js",
+ "default": "./helpers/extends.js"
+ },
+ "./helpers/extends.js"
+ ],
+ "./helpers/esm/extends": "./helpers/esm/extends.js",
+ "./helpers/objectSpread": [
+ {
+ "node": "./helpers/objectSpread.js",
+ "import": "./helpers/esm/objectSpread.js",
+ "default": "./helpers/objectSpread.js"
+ },
+ "./helpers/objectSpread.js"
+ ],
+ "./helpers/esm/objectSpread": "./helpers/esm/objectSpread.js",
+ "./helpers/inherits": [
+ {
+ "node": "./helpers/inherits.js",
+ "import": "./helpers/esm/inherits.js",
+ "default": "./helpers/inherits.js"
+ },
+ "./helpers/inherits.js"
+ ],
+ "./helpers/esm/inherits": "./helpers/esm/inherits.js",
+ "./helpers/inheritsLoose": [
+ {
+ "node": "./helpers/inheritsLoose.js",
+ "import": "./helpers/esm/inheritsLoose.js",
+ "default": "./helpers/inheritsLoose.js"
+ },
+ "./helpers/inheritsLoose.js"
+ ],
+ "./helpers/esm/inheritsLoose": "./helpers/esm/inheritsLoose.js",
+ "./helpers/getPrototypeOf": [
+ {
+ "node": "./helpers/getPrototypeOf.js",
+ "import": "./helpers/esm/getPrototypeOf.js",
+ "default": "./helpers/getPrototypeOf.js"
+ },
+ "./helpers/getPrototypeOf.js"
+ ],
+ "./helpers/esm/getPrototypeOf": "./helpers/esm/getPrototypeOf.js",
+ "./helpers/setPrototypeOf": [
+ {
+ "node": "./helpers/setPrototypeOf.js",
+ "import": "./helpers/esm/setPrototypeOf.js",
+ "default": "./helpers/setPrototypeOf.js"
+ },
+ "./helpers/setPrototypeOf.js"
+ ],
+ "./helpers/esm/setPrototypeOf": "./helpers/esm/setPrototypeOf.js",
+ "./helpers/isNativeReflectConstruct": [
+ {
+ "node": "./helpers/isNativeReflectConstruct.js",
+ "import": "./helpers/esm/isNativeReflectConstruct.js",
+ "default": "./helpers/isNativeReflectConstruct.js"
+ },
+ "./helpers/isNativeReflectConstruct.js"
+ ],
+ "./helpers/esm/isNativeReflectConstruct": "./helpers/esm/isNativeReflectConstruct.js",
+ "./helpers/construct": [
+ {
+ "node": "./helpers/construct.js",
+ "import": "./helpers/esm/construct.js",
+ "default": "./helpers/construct.js"
+ },
+ "./helpers/construct.js"
+ ],
+ "./helpers/esm/construct": "./helpers/esm/construct.js",
+ "./helpers/isNativeFunction": [
+ {
+ "node": "./helpers/isNativeFunction.js",
+ "import": "./helpers/esm/isNativeFunction.js",
+ "default": "./helpers/isNativeFunction.js"
+ },
+ "./helpers/isNativeFunction.js"
+ ],
+ "./helpers/esm/isNativeFunction": "./helpers/esm/isNativeFunction.js",
+ "./helpers/wrapNativeSuper": [
+ {
+ "node": "./helpers/wrapNativeSuper.js",
+ "import": "./helpers/esm/wrapNativeSuper.js",
+ "default": "./helpers/wrapNativeSuper.js"
+ },
+ "./helpers/wrapNativeSuper.js"
+ ],
+ "./helpers/esm/wrapNativeSuper": "./helpers/esm/wrapNativeSuper.js",
+ "./helpers/instanceof": [
+ {
+ "node": "./helpers/instanceof.js",
+ "import": "./helpers/esm/instanceof.js",
+ "default": "./helpers/instanceof.js"
+ },
+ "./helpers/instanceof.js"
+ ],
+ "./helpers/esm/instanceof": "./helpers/esm/instanceof.js",
+ "./helpers/interopRequireDefault": [
+ {
+ "node": "./helpers/interopRequireDefault.js",
+ "import": "./helpers/esm/interopRequireDefault.js",
+ "default": "./helpers/interopRequireDefault.js"
+ },
+ "./helpers/interopRequireDefault.js"
+ ],
+ "./helpers/esm/interopRequireDefault": "./helpers/esm/interopRequireDefault.js",
+ "./helpers/interopRequireWildcard": [
+ {
+ "node": "./helpers/interopRequireWildcard.js",
+ "import": "./helpers/esm/interopRequireWildcard.js",
+ "default": "./helpers/interopRequireWildcard.js"
+ },
+ "./helpers/interopRequireWildcard.js"
+ ],
+ "./helpers/esm/interopRequireWildcard": "./helpers/esm/interopRequireWildcard.js",
+ "./helpers/newArrowCheck": [
+ {
+ "node": "./helpers/newArrowCheck.js",
+ "import": "./helpers/esm/newArrowCheck.js",
+ "default": "./helpers/newArrowCheck.js"
+ },
+ "./helpers/newArrowCheck.js"
+ ],
+ "./helpers/esm/newArrowCheck": "./helpers/esm/newArrowCheck.js",
+ "./helpers/objectDestructuringEmpty": [
+ {
+ "node": "./helpers/objectDestructuringEmpty.js",
+ "import": "./helpers/esm/objectDestructuringEmpty.js",
+ "default": "./helpers/objectDestructuringEmpty.js"
+ },
+ "./helpers/objectDestructuringEmpty.js"
+ ],
+ "./helpers/esm/objectDestructuringEmpty": "./helpers/esm/objectDestructuringEmpty.js",
+ "./helpers/objectWithoutPropertiesLoose": [
+ {
+ "node": "./helpers/objectWithoutPropertiesLoose.js",
+ "import": "./helpers/esm/objectWithoutPropertiesLoose.js",
+ "default": "./helpers/objectWithoutPropertiesLoose.js"
+ },
+ "./helpers/objectWithoutPropertiesLoose.js"
+ ],
+ "./helpers/esm/objectWithoutPropertiesLoose": "./helpers/esm/objectWithoutPropertiesLoose.js",
+ "./helpers/objectWithoutProperties": [
+ {
+ "node": "./helpers/objectWithoutProperties.js",
+ "import": "./helpers/esm/objectWithoutProperties.js",
+ "default": "./helpers/objectWithoutProperties.js"
+ },
+ "./helpers/objectWithoutProperties.js"
+ ],
+ "./helpers/esm/objectWithoutProperties": "./helpers/esm/objectWithoutProperties.js",
+ "./helpers/assertThisInitialized": [
+ {
+ "node": "./helpers/assertThisInitialized.js",
+ "import": "./helpers/esm/assertThisInitialized.js",
+ "default": "./helpers/assertThisInitialized.js"
+ },
+ "./helpers/assertThisInitialized.js"
+ ],
+ "./helpers/esm/assertThisInitialized": "./helpers/esm/assertThisInitialized.js",
+ "./helpers/possibleConstructorReturn": [
+ {
+ "node": "./helpers/possibleConstructorReturn.js",
+ "import": "./helpers/esm/possibleConstructorReturn.js",
+ "default": "./helpers/possibleConstructorReturn.js"
+ },
+ "./helpers/possibleConstructorReturn.js"
+ ],
+ "./helpers/esm/possibleConstructorReturn": "./helpers/esm/possibleConstructorReturn.js",
+ "./helpers/createSuper": [
+ {
+ "node": "./helpers/createSuper.js",
+ "import": "./helpers/esm/createSuper.js",
+ "default": "./helpers/createSuper.js"
+ },
+ "./helpers/createSuper.js"
+ ],
+ "./helpers/esm/createSuper": "./helpers/esm/createSuper.js",
+ "./helpers/superPropBase": [
+ {
+ "node": "./helpers/superPropBase.js",
+ "import": "./helpers/esm/superPropBase.js",
+ "default": "./helpers/superPropBase.js"
+ },
+ "./helpers/superPropBase.js"
+ ],
+ "./helpers/esm/superPropBase": "./helpers/esm/superPropBase.js",
+ "./helpers/get": [
+ {
+ "node": "./helpers/get.js",
+ "import": "./helpers/esm/get.js",
+ "default": "./helpers/get.js"
+ },
+ "./helpers/get.js"
+ ],
+ "./helpers/esm/get": "./helpers/esm/get.js",
+ "./helpers/set": [
+ {
+ "node": "./helpers/set.js",
+ "import": "./helpers/esm/set.js",
+ "default": "./helpers/set.js"
+ },
+ "./helpers/set.js"
+ ],
+ "./helpers/esm/set": "./helpers/esm/set.js",
+ "./helpers/taggedTemplateLiteral": [
+ {
+ "node": "./helpers/taggedTemplateLiteral.js",
+ "import": "./helpers/esm/taggedTemplateLiteral.js",
+ "default": "./helpers/taggedTemplateLiteral.js"
+ },
+ "./helpers/taggedTemplateLiteral.js"
+ ],
+ "./helpers/esm/taggedTemplateLiteral": "./helpers/esm/taggedTemplateLiteral.js",
+ "./helpers/taggedTemplateLiteralLoose": [
+ {
+ "node": "./helpers/taggedTemplateLiteralLoose.js",
+ "import": "./helpers/esm/taggedTemplateLiteralLoose.js",
+ "default": "./helpers/taggedTemplateLiteralLoose.js"
+ },
+ "./helpers/taggedTemplateLiteralLoose.js"
+ ],
+ "./helpers/esm/taggedTemplateLiteralLoose": "./helpers/esm/taggedTemplateLiteralLoose.js",
+ "./helpers/readOnlyError": [
+ {
+ "node": "./helpers/readOnlyError.js",
+ "import": "./helpers/esm/readOnlyError.js",
+ "default": "./helpers/readOnlyError.js"
+ },
+ "./helpers/readOnlyError.js"
+ ],
+ "./helpers/esm/readOnlyError": "./helpers/esm/readOnlyError.js",
+ "./helpers/writeOnlyError": [
+ {
+ "node": "./helpers/writeOnlyError.js",
+ "import": "./helpers/esm/writeOnlyError.js",
+ "default": "./helpers/writeOnlyError.js"
+ },
+ "./helpers/writeOnlyError.js"
+ ],
+ "./helpers/esm/writeOnlyError": "./helpers/esm/writeOnlyError.js",
+ "./helpers/classNameTDZError": [
+ {
+ "node": "./helpers/classNameTDZError.js",
+ "import": "./helpers/esm/classNameTDZError.js",
+ "default": "./helpers/classNameTDZError.js"
+ },
+ "./helpers/classNameTDZError.js"
+ ],
+ "./helpers/esm/classNameTDZError": "./helpers/esm/classNameTDZError.js",
+ "./helpers/temporalUndefined": [
+ {
+ "node": "./helpers/temporalUndefined.js",
+ "import": "./helpers/esm/temporalUndefined.js",
+ "default": "./helpers/temporalUndefined.js"
+ },
+ "./helpers/temporalUndefined.js"
+ ],
+ "./helpers/esm/temporalUndefined": "./helpers/esm/temporalUndefined.js",
+ "./helpers/tdz": [
+ {
+ "node": "./helpers/tdz.js",
+ "import": "./helpers/esm/tdz.js",
+ "default": "./helpers/tdz.js"
+ },
+ "./helpers/tdz.js"
+ ],
+ "./helpers/esm/tdz": "./helpers/esm/tdz.js",
+ "./helpers/temporalRef": [
+ {
+ "node": "./helpers/temporalRef.js",
+ "import": "./helpers/esm/temporalRef.js",
+ "default": "./helpers/temporalRef.js"
+ },
+ "./helpers/temporalRef.js"
+ ],
+ "./helpers/esm/temporalRef": "./helpers/esm/temporalRef.js",
+ "./helpers/slicedToArray": [
+ {
+ "node": "./helpers/slicedToArray.js",
+ "import": "./helpers/esm/slicedToArray.js",
+ "default": "./helpers/slicedToArray.js"
+ },
+ "./helpers/slicedToArray.js"
+ ],
+ "./helpers/esm/slicedToArray": "./helpers/esm/slicedToArray.js",
+ "./helpers/slicedToArrayLoose": [
+ {
+ "node": "./helpers/slicedToArrayLoose.js",
+ "import": "./helpers/esm/slicedToArrayLoose.js",
+ "default": "./helpers/slicedToArrayLoose.js"
+ },
+ "./helpers/slicedToArrayLoose.js"
+ ],
+ "./helpers/esm/slicedToArrayLoose": "./helpers/esm/slicedToArrayLoose.js",
+ "./helpers/toArray": [
+ {
+ "node": "./helpers/toArray.js",
+ "import": "./helpers/esm/toArray.js",
+ "default": "./helpers/toArray.js"
+ },
+ "./helpers/toArray.js"
+ ],
+ "./helpers/esm/toArray": "./helpers/esm/toArray.js",
+ "./helpers/toConsumableArray": [
+ {
+ "node": "./helpers/toConsumableArray.js",
+ "import": "./helpers/esm/toConsumableArray.js",
+ "default": "./helpers/toConsumableArray.js"
+ },
+ "./helpers/toConsumableArray.js"
+ ],
+ "./helpers/esm/toConsumableArray": "./helpers/esm/toConsumableArray.js",
+ "./helpers/arrayWithoutHoles": [
+ {
+ "node": "./helpers/arrayWithoutHoles.js",
+ "import": "./helpers/esm/arrayWithoutHoles.js",
+ "default": "./helpers/arrayWithoutHoles.js"
+ },
+ "./helpers/arrayWithoutHoles.js"
+ ],
+ "./helpers/esm/arrayWithoutHoles": "./helpers/esm/arrayWithoutHoles.js",
+ "./helpers/arrayWithHoles": [
+ {
+ "node": "./helpers/arrayWithHoles.js",
+ "import": "./helpers/esm/arrayWithHoles.js",
+ "default": "./helpers/arrayWithHoles.js"
+ },
+ "./helpers/arrayWithHoles.js"
+ ],
+ "./helpers/esm/arrayWithHoles": "./helpers/esm/arrayWithHoles.js",
+ "./helpers/maybeArrayLike": [
+ {
+ "node": "./helpers/maybeArrayLike.js",
+ "import": "./helpers/esm/maybeArrayLike.js",
+ "default": "./helpers/maybeArrayLike.js"
+ },
+ "./helpers/maybeArrayLike.js"
+ ],
+ "./helpers/esm/maybeArrayLike": "./helpers/esm/maybeArrayLike.js",
+ "./helpers/iterableToArray": [
+ {
+ "node": "./helpers/iterableToArray.js",
+ "import": "./helpers/esm/iterableToArray.js",
+ "default": "./helpers/iterableToArray.js"
+ },
+ "./helpers/iterableToArray.js"
+ ],
+ "./helpers/esm/iterableToArray": "./helpers/esm/iterableToArray.js",
+ "./helpers/iterableToArrayLimit": [
+ {
+ "node": "./helpers/iterableToArrayLimit.js",
+ "import": "./helpers/esm/iterableToArrayLimit.js",
+ "default": "./helpers/iterableToArrayLimit.js"
+ },
+ "./helpers/iterableToArrayLimit.js"
+ ],
+ "./helpers/esm/iterableToArrayLimit": "./helpers/esm/iterableToArrayLimit.js",
+ "./helpers/iterableToArrayLimitLoose": [
+ {
+ "node": "./helpers/iterableToArrayLimitLoose.js",
+ "import": "./helpers/esm/iterableToArrayLimitLoose.js",
+ "default": "./helpers/iterableToArrayLimitLoose.js"
+ },
+ "./helpers/iterableToArrayLimitLoose.js"
+ ],
+ "./helpers/esm/iterableToArrayLimitLoose": "./helpers/esm/iterableToArrayLimitLoose.js",
+ "./helpers/unsupportedIterableToArray": [
+ {
+ "node": "./helpers/unsupportedIterableToArray.js",
+ "import": "./helpers/esm/unsupportedIterableToArray.js",
+ "default": "./helpers/unsupportedIterableToArray.js"
+ },
+ "./helpers/unsupportedIterableToArray.js"
+ ],
+ "./helpers/esm/unsupportedIterableToArray": "./helpers/esm/unsupportedIterableToArray.js",
+ "./helpers/arrayLikeToArray": [
+ {
+ "node": "./helpers/arrayLikeToArray.js",
+ "import": "./helpers/esm/arrayLikeToArray.js",
+ "default": "./helpers/arrayLikeToArray.js"
+ },
+ "./helpers/arrayLikeToArray.js"
+ ],
+ "./helpers/esm/arrayLikeToArray": "./helpers/esm/arrayLikeToArray.js",
+ "./helpers/nonIterableSpread": [
+ {
+ "node": "./helpers/nonIterableSpread.js",
+ "import": "./helpers/esm/nonIterableSpread.js",
+ "default": "./helpers/nonIterableSpread.js"
+ },
+ "./helpers/nonIterableSpread.js"
+ ],
+ "./helpers/esm/nonIterableSpread": "./helpers/esm/nonIterableSpread.js",
+ "./helpers/nonIterableRest": [
+ {
+ "node": "./helpers/nonIterableRest.js",
+ "import": "./helpers/esm/nonIterableRest.js",
+ "default": "./helpers/nonIterableRest.js"
+ },
+ "./helpers/nonIterableRest.js"
+ ],
+ "./helpers/esm/nonIterableRest": "./helpers/esm/nonIterableRest.js",
+ "./helpers/createForOfIteratorHelper": [
+ {
+ "node": "./helpers/createForOfIteratorHelper.js",
+ "import": "./helpers/esm/createForOfIteratorHelper.js",
+ "default": "./helpers/createForOfIteratorHelper.js"
+ },
+ "./helpers/createForOfIteratorHelper.js"
+ ],
+ "./helpers/esm/createForOfIteratorHelper": "./helpers/esm/createForOfIteratorHelper.js",
+ "./helpers/createForOfIteratorHelperLoose": [
+ {
+ "node": "./helpers/createForOfIteratorHelperLoose.js",
+ "import": "./helpers/esm/createForOfIteratorHelperLoose.js",
+ "default": "./helpers/createForOfIteratorHelperLoose.js"
+ },
+ "./helpers/createForOfIteratorHelperLoose.js"
+ ],
+ "./helpers/esm/createForOfIteratorHelperLoose": "./helpers/esm/createForOfIteratorHelperLoose.js",
+ "./helpers/skipFirstGeneratorNext": [
+ {
+ "node": "./helpers/skipFirstGeneratorNext.js",
+ "import": "./helpers/esm/skipFirstGeneratorNext.js",
+ "default": "./helpers/skipFirstGeneratorNext.js"
+ },
+ "./helpers/skipFirstGeneratorNext.js"
+ ],
+ "./helpers/esm/skipFirstGeneratorNext": "./helpers/esm/skipFirstGeneratorNext.js",
+ "./helpers/toPrimitive": [
+ {
+ "node": "./helpers/toPrimitive.js",
+ "import": "./helpers/esm/toPrimitive.js",
+ "default": "./helpers/toPrimitive.js"
+ },
+ "./helpers/toPrimitive.js"
+ ],
+ "./helpers/esm/toPrimitive": "./helpers/esm/toPrimitive.js",
+ "./helpers/toPropertyKey": [
+ {
+ "node": "./helpers/toPropertyKey.js",
+ "import": "./helpers/esm/toPropertyKey.js",
+ "default": "./helpers/toPropertyKey.js"
+ },
+ "./helpers/toPropertyKey.js"
+ ],
+ "./helpers/esm/toPropertyKey": "./helpers/esm/toPropertyKey.js",
+ "./helpers/initializerWarningHelper": [
+ {
+ "node": "./helpers/initializerWarningHelper.js",
+ "import": "./helpers/esm/initializerWarningHelper.js",
+ "default": "./helpers/initializerWarningHelper.js"
+ },
+ "./helpers/initializerWarningHelper.js"
+ ],
+ "./helpers/esm/initializerWarningHelper": "./helpers/esm/initializerWarningHelper.js",
+ "./helpers/initializerDefineProperty": [
+ {
+ "node": "./helpers/initializerDefineProperty.js",
+ "import": "./helpers/esm/initializerDefineProperty.js",
+ "default": "./helpers/initializerDefineProperty.js"
+ },
+ "./helpers/initializerDefineProperty.js"
+ ],
+ "./helpers/esm/initializerDefineProperty": "./helpers/esm/initializerDefineProperty.js",
+ "./helpers/applyDecoratedDescriptor": [
+ {
+ "node": "./helpers/applyDecoratedDescriptor.js",
+ "import": "./helpers/esm/applyDecoratedDescriptor.js",
+ "default": "./helpers/applyDecoratedDescriptor.js"
+ },
+ "./helpers/applyDecoratedDescriptor.js"
+ ],
+ "./helpers/esm/applyDecoratedDescriptor": "./helpers/esm/applyDecoratedDescriptor.js",
+ "./helpers/classPrivateFieldLooseKey": [
+ {
+ "node": "./helpers/classPrivateFieldLooseKey.js",
+ "import": "./helpers/esm/classPrivateFieldLooseKey.js",
+ "default": "./helpers/classPrivateFieldLooseKey.js"
+ },
+ "./helpers/classPrivateFieldLooseKey.js"
+ ],
+ "./helpers/esm/classPrivateFieldLooseKey": "./helpers/esm/classPrivateFieldLooseKey.js",
+ "./helpers/classPrivateFieldLooseBase": [
+ {
+ "node": "./helpers/classPrivateFieldLooseBase.js",
+ "import": "./helpers/esm/classPrivateFieldLooseBase.js",
+ "default": "./helpers/classPrivateFieldLooseBase.js"
+ },
+ "./helpers/classPrivateFieldLooseBase.js"
+ ],
+ "./helpers/esm/classPrivateFieldLooseBase": "./helpers/esm/classPrivateFieldLooseBase.js",
+ "./helpers/classPrivateFieldGet": [
+ {
+ "node": "./helpers/classPrivateFieldGet.js",
+ "import": "./helpers/esm/classPrivateFieldGet.js",
+ "default": "./helpers/classPrivateFieldGet.js"
+ },
+ "./helpers/classPrivateFieldGet.js"
+ ],
+ "./helpers/esm/classPrivateFieldGet": "./helpers/esm/classPrivateFieldGet.js",
+ "./helpers/classPrivateFieldSet": [
+ {
+ "node": "./helpers/classPrivateFieldSet.js",
+ "import": "./helpers/esm/classPrivateFieldSet.js",
+ "default": "./helpers/classPrivateFieldSet.js"
+ },
+ "./helpers/classPrivateFieldSet.js"
+ ],
+ "./helpers/esm/classPrivateFieldSet": "./helpers/esm/classPrivateFieldSet.js",
+ "./helpers/classPrivateFieldDestructureSet": [
+ {
+ "node": "./helpers/classPrivateFieldDestructureSet.js",
+ "import": "./helpers/esm/classPrivateFieldDestructureSet.js",
+ "default": "./helpers/classPrivateFieldDestructureSet.js"
+ },
+ "./helpers/classPrivateFieldDestructureSet.js"
+ ],
+ "./helpers/esm/classPrivateFieldDestructureSet": "./helpers/esm/classPrivateFieldDestructureSet.js",
+ "./helpers/classExtractFieldDescriptor": [
+ {
+ "node": "./helpers/classExtractFieldDescriptor.js",
+ "import": "./helpers/esm/classExtractFieldDescriptor.js",
+ "default": "./helpers/classExtractFieldDescriptor.js"
+ },
+ "./helpers/classExtractFieldDescriptor.js"
+ ],
+ "./helpers/esm/classExtractFieldDescriptor": "./helpers/esm/classExtractFieldDescriptor.js",
+ "./helpers/classStaticPrivateFieldSpecGet": [
+ {
+ "node": "./helpers/classStaticPrivateFieldSpecGet.js",
+ "import": "./helpers/esm/classStaticPrivateFieldSpecGet.js",
+ "default": "./helpers/classStaticPrivateFieldSpecGet.js"
+ },
+ "./helpers/classStaticPrivateFieldSpecGet.js"
+ ],
+ "./helpers/esm/classStaticPrivateFieldSpecGet": "./helpers/esm/classStaticPrivateFieldSpecGet.js",
+ "./helpers/classStaticPrivateFieldSpecSet": [
+ {
+ "node": "./helpers/classStaticPrivateFieldSpecSet.js",
+ "import": "./helpers/esm/classStaticPrivateFieldSpecSet.js",
+ "default": "./helpers/classStaticPrivateFieldSpecSet.js"
+ },
+ "./helpers/classStaticPrivateFieldSpecSet.js"
+ ],
+ "./helpers/esm/classStaticPrivateFieldSpecSet": "./helpers/esm/classStaticPrivateFieldSpecSet.js",
+ "./helpers/classStaticPrivateMethodGet": [
+ {
+ "node": "./helpers/classStaticPrivateMethodGet.js",
+ "import": "./helpers/esm/classStaticPrivateMethodGet.js",
+ "default": "./helpers/classStaticPrivateMethodGet.js"
+ },
+ "./helpers/classStaticPrivateMethodGet.js"
+ ],
+ "./helpers/esm/classStaticPrivateMethodGet": "./helpers/esm/classStaticPrivateMethodGet.js",
+ "./helpers/classStaticPrivateMethodSet": [
+ {
+ "node": "./helpers/classStaticPrivateMethodSet.js",
+ "import": "./helpers/esm/classStaticPrivateMethodSet.js",
+ "default": "./helpers/classStaticPrivateMethodSet.js"
+ },
+ "./helpers/classStaticPrivateMethodSet.js"
+ ],
+ "./helpers/esm/classStaticPrivateMethodSet": "./helpers/esm/classStaticPrivateMethodSet.js",
+ "./helpers/classApplyDescriptorGet": [
+ {
+ "node": "./helpers/classApplyDescriptorGet.js",
+ "import": "./helpers/esm/classApplyDescriptorGet.js",
+ "default": "./helpers/classApplyDescriptorGet.js"
+ },
+ "./helpers/classApplyDescriptorGet.js"
+ ],
+ "./helpers/esm/classApplyDescriptorGet": "./helpers/esm/classApplyDescriptorGet.js",
+ "./helpers/classApplyDescriptorSet": [
+ {
+ "node": "./helpers/classApplyDescriptorSet.js",
+ "import": "./helpers/esm/classApplyDescriptorSet.js",
+ "default": "./helpers/classApplyDescriptorSet.js"
+ },
+ "./helpers/classApplyDescriptorSet.js"
+ ],
+ "./helpers/esm/classApplyDescriptorSet": "./helpers/esm/classApplyDescriptorSet.js",
+ "./helpers/classApplyDescriptorDestructureSet": [
+ {
+ "node": "./helpers/classApplyDescriptorDestructureSet.js",
+ "import": "./helpers/esm/classApplyDescriptorDestructureSet.js",
+ "default": "./helpers/classApplyDescriptorDestructureSet.js"
+ },
+ "./helpers/classApplyDescriptorDestructureSet.js"
+ ],
+ "./helpers/esm/classApplyDescriptorDestructureSet": "./helpers/esm/classApplyDescriptorDestructureSet.js",
+ "./helpers/classStaticPrivateFieldDestructureSet": [
+ {
+ "node": "./helpers/classStaticPrivateFieldDestructureSet.js",
+ "import": "./helpers/esm/classStaticPrivateFieldDestructureSet.js",
+ "default": "./helpers/classStaticPrivateFieldDestructureSet.js"
+ },
+ "./helpers/classStaticPrivateFieldDestructureSet.js"
+ ],
+ "./helpers/esm/classStaticPrivateFieldDestructureSet": "./helpers/esm/classStaticPrivateFieldDestructureSet.js",
+ "./helpers/classCheckPrivateStaticAccess": [
+ {
+ "node": "./helpers/classCheckPrivateStaticAccess.js",
+ "import": "./helpers/esm/classCheckPrivateStaticAccess.js",
+ "default": "./helpers/classCheckPrivateStaticAccess.js"
+ },
+ "./helpers/classCheckPrivateStaticAccess.js"
+ ],
+ "./helpers/esm/classCheckPrivateStaticAccess": "./helpers/esm/classCheckPrivateStaticAccess.js",
+ "./helpers/classCheckPrivateStaticFieldDescriptor": [
+ {
+ "node": "./helpers/classCheckPrivateStaticFieldDescriptor.js",
+ "import": "./helpers/esm/classCheckPrivateStaticFieldDescriptor.js",
+ "default": "./helpers/classCheckPrivateStaticFieldDescriptor.js"
+ },
+ "./helpers/classCheckPrivateStaticFieldDescriptor.js"
+ ],
+ "./helpers/esm/classCheckPrivateStaticFieldDescriptor": "./helpers/esm/classCheckPrivateStaticFieldDescriptor.js",
+ "./helpers/decorate": [
+ {
+ "node": "./helpers/decorate.js",
+ "import": "./helpers/esm/decorate.js",
+ "default": "./helpers/decorate.js"
+ },
+ "./helpers/decorate.js"
+ ],
+ "./helpers/esm/decorate": "./helpers/esm/decorate.js",
+ "./helpers/classPrivateMethodGet": [
+ {
+ "node": "./helpers/classPrivateMethodGet.js",
+ "import": "./helpers/esm/classPrivateMethodGet.js",
+ "default": "./helpers/classPrivateMethodGet.js"
+ },
+ "./helpers/classPrivateMethodGet.js"
+ ],
+ "./helpers/esm/classPrivateMethodGet": "./helpers/esm/classPrivateMethodGet.js",
+ "./helpers/classPrivateMethodSet": [
+ {
+ "node": "./helpers/classPrivateMethodSet.js",
+ "import": "./helpers/esm/classPrivateMethodSet.js",
+ "default": "./helpers/classPrivateMethodSet.js"
+ },
+ "./helpers/classPrivateMethodSet.js"
+ ],
+ "./helpers/esm/classPrivateMethodSet": "./helpers/esm/classPrivateMethodSet.js",
+ "./package": "./package.json",
+ "./package.json": "./package.json",
+ "./regenerator": "./regenerator/index.js",
+ "./regenerator/*.js": "./regenerator/*.js",
+ "./regenerator/": "./regenerator/"
+ },
+ "homepage": "https://babel.dev/docs/en/next/babel-runtime",
+ "license": "MIT",
+ "name": "@babel/runtime",
+ "publishConfig": {
+ "access": "public"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/babel/babel.git",
+ "directory": "packages/babel-runtime"
+ },
+ "version": "7.14.0"
+}
diff --git a/node_modules/@babel/runtime/regenerator/index.js b/node_modules/@babel/runtime/regenerator/index.js
new file mode 100644
index 0000000000..9fd4158a6d
--- /dev/null
+++ b/node_modules/@babel/runtime/regenerator/index.js
@@ -0,0 +1 @@
+module.exports = require("regenerator-runtime");
diff --git a/node_modules/@emotion/hash/CHANGELOG.md b/node_modules/@emotion/hash/CHANGELOG.md
new file mode 100644
index 0000000000..562e812f04
--- /dev/null
+++ b/node_modules/@emotion/hash/CHANGELOG.md
@@ -0,0 +1,25 @@
+# @emotion/hash
+
+## 0.8.0
+
+### Minor Changes
+
+- [`446e756`](https://github.com/emotion-js/emotion/commit/446e75661c4aa01e51d1466472a212940c19cd82) [#1775](https://github.com/emotion-js/emotion/pull/1775) Thanks [@kripod](https://github.com/kripod)! - Optimized hashing for performance while also reducing the size of the function.
+
+## 0.7.4
+
+### Patch Changes
+
+- [`4c62ae9`](https://github.com/emotion-js/emotion/commit/4c62ae9447959d438928e1a26f76f1487983c968) [#1698](https://github.com/emotion-js/emotion/pull/1698) Thanks [@Andarist](https://github.com/Andarist)! - Add LICENSE file
+
+## 0.7.3
+
+### Patch Changes
+
+- [c81c0033](https://github.com/emotion-js/emotion/commit/c81c0033c490210077da0e9c3f9fa1a22fcd9c96) [#1503](https://github.com/emotion-js/emotion/pull/1503) Thanks [@Andarist](https://github.com/Andarist)! - Add TS types to util packages - hash, memoize & weak-memoize
+
+## 0.7.2
+
+### Patch Changes
+
+- [c0eb604d](https://github.com/emotion-js/emotion/commit/c0eb604d) [#1419](https://github.com/emotion-js/emotion/pull/1419) Thanks [@mitchellhamilton](https://github.com/mitchellhamilton)! - Update build tool
diff --git a/node_modules/@emotion/hash/LICENSE b/node_modules/@emotion/hash/LICENSE
new file mode 100644
index 0000000000..56e808dea1
--- /dev/null
+++ b/node_modules/@emotion/hash/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) Emotion team and other contributors
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/node_modules/@emotion/hash/README.md b/node_modules/@emotion/hash/README.md
new file mode 100644
index 0000000000..1a0693affa
--- /dev/null
+++ b/node_modules/@emotion/hash/README.md
@@ -0,0 +1,11 @@
+# @emotion/hash
+
+> A MurmurHash2 implementation
+
+```jsx
+import hash from '@emotion/hash'
+
+hash('some-string') // 12fj1d
+```
+
+The source of this is from https://github.com/garycourt/murmurhash-js/blob/master/murmurhash2_gc.js.
diff --git a/node_modules/@emotion/hash/dist/hash.browser.cjs.js b/node_modules/@emotion/hash/dist/hash.browser.cjs.js
new file mode 100644
index 0000000000..5389645071
--- /dev/null
+++ b/node_modules/@emotion/hash/dist/hash.browser.cjs.js
@@ -0,0 +1,59 @@
+'use strict';
+
+Object.defineProperty(exports, '__esModule', { value: true });
+
+/* eslint-disable */
+// Inspired by https://github.com/garycourt/murmurhash-js
+// Ported from https://github.com/aappleby/smhasher/blob/61a0530f28277f2e850bfc39600ce61d02b518de/src/MurmurHash2.cpp#L37-L86
+function murmur2(str) {
+ // 'm' and 'r' are mixing constants generated offline.
+ // They're not really 'magic', they just happen to work well.
+ // const m = 0x5bd1e995;
+ // const r = 24;
+ // Initialize the hash
+ var h = 0; // Mix 4 bytes at a time into the hash
+
+ var k,
+ i = 0,
+ len = str.length;
+
+ for (; len >= 4; ++i, len -= 4) {
+ k = str.charCodeAt(i) & 0xff | (str.charCodeAt(++i) & 0xff) << 8 | (str.charCodeAt(++i) & 0xff) << 16 | (str.charCodeAt(++i) & 0xff) << 24;
+ k =
+ /* Math.imul(k, m): */
+ (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16);
+ k ^=
+ /* k >>> r: */
+ k >>> 24;
+ h =
+ /* Math.imul(k, m): */
+ (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16) ^
+ /* Math.imul(h, m): */
+ (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);
+ } // Handle the last few bytes of the input array
+
+
+ switch (len) {
+ case 3:
+ h ^= (str.charCodeAt(i + 2) & 0xff) << 16;
+
+ case 2:
+ h ^= (str.charCodeAt(i + 1) & 0xff) << 8;
+
+ case 1:
+ h ^= str.charCodeAt(i) & 0xff;
+ h =
+ /* Math.imul(h, m): */
+ (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);
+ } // Do a few final mixes of the hash to ensure the last few
+ // bytes are well-incorporated.
+
+
+ h ^= h >>> 13;
+ h =
+ /* Math.imul(h, m): */
+ (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);
+ return ((h ^ h >>> 15) >>> 0).toString(36);
+}
+
+exports.default = murmur2;
diff --git a/node_modules/@emotion/hash/dist/hash.browser.esm.js b/node_modules/@emotion/hash/dist/hash.browser.esm.js
new file mode 100644
index 0000000000..c1c6eb324b
--- /dev/null
+++ b/node_modules/@emotion/hash/dist/hash.browser.esm.js
@@ -0,0 +1,55 @@
+/* eslint-disable */
+// Inspired by https://github.com/garycourt/murmurhash-js
+// Ported from https://github.com/aappleby/smhasher/blob/61a0530f28277f2e850bfc39600ce61d02b518de/src/MurmurHash2.cpp#L37-L86
+function murmur2(str) {
+ // 'm' and 'r' are mixing constants generated offline.
+ // They're not really 'magic', they just happen to work well.
+ // const m = 0x5bd1e995;
+ // const r = 24;
+ // Initialize the hash
+ var h = 0; // Mix 4 bytes at a time into the hash
+
+ var k,
+ i = 0,
+ len = str.length;
+
+ for (; len >= 4; ++i, len -= 4) {
+ k = str.charCodeAt(i) & 0xff | (str.charCodeAt(++i) & 0xff) << 8 | (str.charCodeAt(++i) & 0xff) << 16 | (str.charCodeAt(++i) & 0xff) << 24;
+ k =
+ /* Math.imul(k, m): */
+ (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16);
+ k ^=
+ /* k >>> r: */
+ k >>> 24;
+ h =
+ /* Math.imul(k, m): */
+ (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16) ^
+ /* Math.imul(h, m): */
+ (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);
+ } // Handle the last few bytes of the input array
+
+
+ switch (len) {
+ case 3:
+ h ^= (str.charCodeAt(i + 2) & 0xff) << 16;
+
+ case 2:
+ h ^= (str.charCodeAt(i + 1) & 0xff) << 8;
+
+ case 1:
+ h ^= str.charCodeAt(i) & 0xff;
+ h =
+ /* Math.imul(h, m): */
+ (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);
+ } // Do a few final mixes of the hash to ensure the last few
+ // bytes are well-incorporated.
+
+
+ h ^= h >>> 13;
+ h =
+ /* Math.imul(h, m): */
+ (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);
+ return ((h ^ h >>> 15) >>> 0).toString(36);
+}
+
+export default murmur2;
diff --git a/node_modules/@emotion/hash/dist/hash.cjs.dev.js b/node_modules/@emotion/hash/dist/hash.cjs.dev.js
new file mode 100644
index 0000000000..5389645071
--- /dev/null
+++ b/node_modules/@emotion/hash/dist/hash.cjs.dev.js
@@ -0,0 +1,59 @@
+'use strict';
+
+Object.defineProperty(exports, '__esModule', { value: true });
+
+/* eslint-disable */
+// Inspired by https://github.com/garycourt/murmurhash-js
+// Ported from https://github.com/aappleby/smhasher/blob/61a0530f28277f2e850bfc39600ce61d02b518de/src/MurmurHash2.cpp#L37-L86
+function murmur2(str) {
+ // 'm' and 'r' are mixing constants generated offline.
+ // They're not really 'magic', they just happen to work well.
+ // const m = 0x5bd1e995;
+ // const r = 24;
+ // Initialize the hash
+ var h = 0; // Mix 4 bytes at a time into the hash
+
+ var k,
+ i = 0,
+ len = str.length;
+
+ for (; len >= 4; ++i, len -= 4) {
+ k = str.charCodeAt(i) & 0xff | (str.charCodeAt(++i) & 0xff) << 8 | (str.charCodeAt(++i) & 0xff) << 16 | (str.charCodeAt(++i) & 0xff) << 24;
+ k =
+ /* Math.imul(k, m): */
+ (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16);
+ k ^=
+ /* k >>> r: */
+ k >>> 24;
+ h =
+ /* Math.imul(k, m): */
+ (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16) ^
+ /* Math.imul(h, m): */
+ (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);
+ } // Handle the last few bytes of the input array
+
+
+ switch (len) {
+ case 3:
+ h ^= (str.charCodeAt(i + 2) & 0xff) << 16;
+
+ case 2:
+ h ^= (str.charCodeAt(i + 1) & 0xff) << 8;
+
+ case 1:
+ h ^= str.charCodeAt(i) & 0xff;
+ h =
+ /* Math.imul(h, m): */
+ (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);
+ } // Do a few final mixes of the hash to ensure the last few
+ // bytes are well-incorporated.
+
+
+ h ^= h >>> 13;
+ h =
+ /* Math.imul(h, m): */
+ (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);
+ return ((h ^ h >>> 15) >>> 0).toString(36);
+}
+
+exports.default = murmur2;
diff --git a/node_modules/@emotion/hash/dist/hash.cjs.js b/node_modules/@emotion/hash/dist/hash.cjs.js
new file mode 100644
index 0000000000..3b823b54dc
--- /dev/null
+++ b/node_modules/@emotion/hash/dist/hash.cjs.js
@@ -0,0 +1,7 @@
+'use strict';
+
+if (process.env.NODE_ENV === "production") {
+ module.exports = require("./hash.cjs.prod.js");
+} else {
+ module.exports = require("./hash.cjs.dev.js");
+}
diff --git a/node_modules/@emotion/hash/dist/hash.cjs.js.flow b/node_modules/@emotion/hash/dist/hash.cjs.js.flow
new file mode 100644
index 0000000000..7188963710
--- /dev/null
+++ b/node_modules/@emotion/hash/dist/hash.cjs.js.flow
@@ -0,0 +1,3 @@
+// @flow
+export * from "../src/index.js";
+export { default } from "../src/index.js";
diff --git a/node_modules/@emotion/hash/dist/hash.cjs.prod.js b/node_modules/@emotion/hash/dist/hash.cjs.prod.js
new file mode 100644
index 0000000000..8a685a30b6
--- /dev/null
+++ b/node_modules/@emotion/hash/dist/hash.cjs.prod.js
@@ -0,0 +1,21 @@
+"use strict";
+
+function murmur2(str) {
+ for (var k, h = 0, i = 0, len = str.length; len >= 4; ++i, len -= 4) k = 1540483477 * (65535 & (k = 255 & str.charCodeAt(i) | (255 & str.charCodeAt(++i)) << 8 | (255 & str.charCodeAt(++i)) << 16 | (255 & str.charCodeAt(++i)) << 24)) + (59797 * (k >>> 16) << 16),
+ h = 1540483477 * (65535 & (k ^= k >>> 24)) + (59797 * (k >>> 16) << 16) ^ 1540483477 * (65535 & h) + (59797 * (h >>> 16) << 16);
+ switch (len) {
+ case 3:
+ h ^= (255 & str.charCodeAt(i + 2)) << 16;
+
+ case 2:
+ h ^= (255 & str.charCodeAt(i + 1)) << 8;
+
+ case 1:
+ h = 1540483477 * (65535 & (h ^= 255 & str.charCodeAt(i))) + (59797 * (h >>> 16) << 16);
+ }
+ return (((h = 1540483477 * (65535 & (h ^= h >>> 13)) + (59797 * (h >>> 16) << 16)) ^ h >>> 15) >>> 0).toString(36);
+}
+
+Object.defineProperty(exports, "__esModule", {
+ value: !0
+}), exports.default = murmur2;
diff --git a/node_modules/@emotion/hash/dist/hash.esm.js b/node_modules/@emotion/hash/dist/hash.esm.js
new file mode 100644
index 0000000000..c1c6eb324b
--- /dev/null
+++ b/node_modules/@emotion/hash/dist/hash.esm.js
@@ -0,0 +1,55 @@
+/* eslint-disable */
+// Inspired by https://github.com/garycourt/murmurhash-js
+// Ported from https://github.com/aappleby/smhasher/blob/61a0530f28277f2e850bfc39600ce61d02b518de/src/MurmurHash2.cpp#L37-L86
+function murmur2(str) {
+ // 'm' and 'r' are mixing constants generated offline.
+ // They're not really 'magic', they just happen to work well.
+ // const m = 0x5bd1e995;
+ // const r = 24;
+ // Initialize the hash
+ var h = 0; // Mix 4 bytes at a time into the hash
+
+ var k,
+ i = 0,
+ len = str.length;
+
+ for (; len >= 4; ++i, len -= 4) {
+ k = str.charCodeAt(i) & 0xff | (str.charCodeAt(++i) & 0xff) << 8 | (str.charCodeAt(++i) & 0xff) << 16 | (str.charCodeAt(++i) & 0xff) << 24;
+ k =
+ /* Math.imul(k, m): */
+ (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16);
+ k ^=
+ /* k >>> r: */
+ k >>> 24;
+ h =
+ /* Math.imul(k, m): */
+ (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16) ^
+ /* Math.imul(h, m): */
+ (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);
+ } // Handle the last few bytes of the input array
+
+
+ switch (len) {
+ case 3:
+ h ^= (str.charCodeAt(i + 2) & 0xff) << 16;
+
+ case 2:
+ h ^= (str.charCodeAt(i + 1) & 0xff) << 8;
+
+ case 1:
+ h ^= str.charCodeAt(i) & 0xff;
+ h =
+ /* Math.imul(h, m): */
+ (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);
+ } // Do a few final mixes of the hash to ensure the last few
+ // bytes are well-incorporated.
+
+
+ h ^= h >>> 13;
+ h =
+ /* Math.imul(h, m): */
+ (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);
+ return ((h ^ h >>> 15) >>> 0).toString(36);
+}
+
+export default murmur2;
diff --git a/node_modules/@emotion/hash/package.json b/node_modules/@emotion/hash/package.json
new file mode 100644
index 0000000000..cca54171c2
--- /dev/null
+++ b/node_modules/@emotion/hash/package.json
@@ -0,0 +1,57 @@
+{
+ "_from": "@emotion/hash@^0.8.0",
+ "_id": "@emotion/hash@0.8.0",
+ "_inBundle": false,
+ "_integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==",
+ "_location": "/@emotion/hash",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "range",
+ "registry": true,
+ "raw": "@emotion/hash@^0.8.0",
+ "name": "@emotion/hash",
+ "escapedName": "@emotion%2fhash",
+ "scope": "@emotion",
+ "rawSpec": "^0.8.0",
+ "saveSpec": null,
+ "fetchSpec": "^0.8.0"
+ },
+ "_requiredBy": [
+ "/@material-ui/styles"
+ ],
+ "_resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz",
+ "_shasum": "bbbff68978fefdbe68ccb533bc8cbe1d1afb5413",
+ "_spec": "@emotion/hash@^0.8.0",
+ "_where": "/Users/kelseynielsen/Coding/Unit-3/3.1 Advanced React/Module 2- The React Lifecycle/React-Github-User-Card/node_modules/@material-ui/styles",
+ "browser": {
+ "./dist/hash.cjs.js": "./dist/hash.browser.cjs.js",
+ "./dist/hash.esm.js": "./dist/hash.browser.esm.js"
+ },
+ "bundleDependencies": false,
+ "deprecated": false,
+ "description": "A MurmurHash2 implementation",
+ "devDependencies": {
+ "dtslint": "^0.3.0"
+ },
+ "files": [
+ "src",
+ "dist",
+ "types"
+ ],
+ "license": "MIT",
+ "main": "dist/hash.cjs.js",
+ "module": "dist/hash.esm.js",
+ "name": "@emotion/hash",
+ "publishConfig": {
+ "access": "public"
+ },
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/emotion-js/emotion/tree/master/packages/hash"
+ },
+ "scripts": {
+ "test:typescript": "dtslint types"
+ },
+ "types": "types/index.d.ts",
+ "version": "0.8.0"
+}
diff --git a/node_modules/@emotion/hash/src/index.js b/node_modules/@emotion/hash/src/index.js
new file mode 100644
index 0000000000..23ca179456
--- /dev/null
+++ b/node_modules/@emotion/hash/src/index.js
@@ -0,0 +1,64 @@
+// @flow
+/* eslint-disable */
+// Inspired by https://github.com/garycourt/murmurhash-js
+// Ported from https://github.com/aappleby/smhasher/blob/61a0530f28277f2e850bfc39600ce61d02b518de/src/MurmurHash2.cpp#L37-L86
+
+export default function murmur2(str: string) {
+ // 'm' and 'r' are mixing constants generated offline.
+ // They're not really 'magic', they just happen to work well.
+
+ // const m = 0x5bd1e995;
+ // const r = 24;
+
+ // Initialize the hash
+
+ var h = 0;
+
+ // Mix 4 bytes at a time into the hash
+
+ var k,
+ i = 0,
+ len = str.length;
+ for (; len >= 4; ++i, len -= 4) {
+ k =
+ (str.charCodeAt(i) & 0xff) |
+ ((str.charCodeAt(++i) & 0xff) << 8) |
+ ((str.charCodeAt(++i) & 0xff) << 16) |
+ ((str.charCodeAt(++i) & 0xff) << 24);
+
+ k =
+ /* Math.imul(k, m): */
+ (k & 0xffff) * 0x5bd1e995 + (((k >>> 16) * 0xe995) << 16);
+ k ^= /* k >>> r: */ k >>> 24;
+
+ h =
+ /* Math.imul(k, m): */
+ ((k & 0xffff) * 0x5bd1e995 + (((k >>> 16) * 0xe995) << 16)) ^
+ /* Math.imul(h, m): */
+ ((h & 0xffff) * 0x5bd1e995 + (((h >>> 16) * 0xe995) << 16));
+ }
+
+ // Handle the last few bytes of the input array
+
+ switch (len) {
+ case 3:
+ h ^= (str.charCodeAt(i + 2) & 0xff) << 16;
+ case 2:
+ h ^= (str.charCodeAt(i + 1) & 0xff) << 8;
+ case 1:
+ h ^= str.charCodeAt(i) & 0xff;
+ h =
+ /* Math.imul(h, m): */
+ (h & 0xffff) * 0x5bd1e995 + (((h >>> 16) * 0xe995) << 16);
+ }
+
+ // Do a few final mixes of the hash to ensure the last few
+ // bytes are well-incorporated.
+
+ h ^= h >>> 13;
+ h =
+ /* Math.imul(h, m): */
+ (h & 0xffff) * 0x5bd1e995 + (((h >>> 16) * 0xe995) << 16);
+
+ return ((h ^ (h >>> 15)) >>> 0).toString(36);
+}
diff --git a/node_modules/@emotion/hash/types/index.d.ts b/node_modules/@emotion/hash/types/index.d.ts
new file mode 100644
index 0000000000..872aa0beff
--- /dev/null
+++ b/node_modules/@emotion/hash/types/index.d.ts
@@ -0,0 +1 @@
+export default function murmurhash2_32_gc(str: string): string
diff --git a/node_modules/@emotion/hash/types/tests.ts b/node_modules/@emotion/hash/types/tests.ts
new file mode 100644
index 0000000000..fe6444e8a5
--- /dev/null
+++ b/node_modules/@emotion/hash/types/tests.ts
@@ -0,0 +1,15 @@
+import hash from '@emotion/hash'
+
+// $ExpectType string
+hash('color: hotpink;')
+
+// $ExpectError
+hash()
+// $ExpectError
+const hashed2: number = hash('color: hotpink;')
+// $ExpectError
+hash(42)
+// $ExpectError
+hash({})
+// $ExpectError
+hash('color: hotpink;', 'background-color: #fff;')
diff --git a/node_modules/@emotion/hash/types/tsconfig.json b/node_modules/@emotion/hash/types/tsconfig.json
new file mode 100644
index 0000000000..9ff7ed2897
--- /dev/null
+++ b/node_modules/@emotion/hash/types/tsconfig.json
@@ -0,0 +1,26 @@
+{
+ "compilerOptions": {
+ "baseUrl": "../",
+ "forceConsistentCasingInFileNames": true,
+ "lib": [
+ "es6",
+ "dom"
+ ],
+ "module": "commonjs",
+ "noEmit": true,
+ "noImplicitAny": true,
+ "noImplicitThis": true,
+ "strict": true,
+ "strictNullChecks": true,
+ "strictFunctionTypes": true,
+ "target": "es5",
+ "typeRoots": [
+ "../"
+ ],
+ "types": []
+ },
+ "include": [
+ "./*.ts",
+ "./*.tsx"
+ ]
+}
diff --git a/node_modules/@emotion/hash/types/tslint.json b/node_modules/@emotion/hash/types/tslint.json
new file mode 100644
index 0000000000..b9706ef702
--- /dev/null
+++ b/node_modules/@emotion/hash/types/tslint.json
@@ -0,0 +1,25 @@
+{
+ "extends": "dtslint/dtslint.json",
+ "rules": {
+ "array-type": [
+ true,
+ "generic"
+ ],
+ "import-spacing": false,
+ "semicolon": false,
+ "whitespace": [
+ true,
+ "check-branch",
+ "check-decl",
+ "check-operator",
+ "check-module",
+ "check-rest-spread",
+ "check-type",
+ "check-typecast",
+ "check-type-operator",
+ "check-preblock"
+ ],
+
+ "no-unnecessary-generics": false
+ }
+}
diff --git a/node_modules/@material-ui/core/Accordion/Accordion.d.ts b/node_modules/@material-ui/core/Accordion/Accordion.d.ts
new file mode 100644
index 0000000000..d541d1b716
--- /dev/null
+++ b/node_modules/@material-ui/core/Accordion/Accordion.d.ts
@@ -0,0 +1,57 @@
+import * as React from 'react';
+import { StandardProps } from '..';
+import { TransitionProps } from '../transitions/transition';
+import { PaperProps } from '../Paper';
+
+export interface AccordionProps extends StandardProps {
+ /**
+ * The content of the accordion.
+ */
+ children: NonNullable;
+ /**
+ * If `true`, expands the accordion by default.
+ */
+ defaultExpanded?: boolean;
+ /**
+ * If `true`, the accordion will be displayed in a disabled state.
+ */
+ disabled?: boolean;
+ /**
+ * If `true`, expands the accordion, otherwise collapse it.
+ * Setting this prop enables control over the accordion.
+ */
+ expanded?: boolean;
+ /**
+ * Callback fired when the expand/collapse state is changed.
+ *
+ * @param {object} event The event source of the callback.
+ * @param {boolean} expanded The `expanded` state of the accordion.
+ */
+ onChange?: (event: React.ChangeEvent<{}>, expanded: boolean) => void;
+ /**
+ * The component used for the collapse effect.
+ * [Follow this guide](/components/transitions/#transitioncomponent-prop) to learn more about the requirements for this component.
+ */
+ TransitionComponent?: React.ComponentType<
+ TransitionProps & { children?: React.ReactElement }
+ >;
+ /**
+ * Props applied to the [`Transition`](http://reactcommunity.org/react-transition-group/transition#Transition-props) element.
+ */
+ TransitionProps?: TransitionProps;
+}
+
+export type AccordionClassKey = 'root' | 'rounded' | 'expanded' | 'disabled';
+
+/**
+ *
+ * Demos:
+ *
+ * - [Accordion](https://material-ui.com/components/accordion/)
+ *
+ * API:
+ *
+ * - [Accordion API](https://material-ui.com/api/accordion/)
+ * - inherits [Paper API](https://material-ui.com/api/paper/)
+ */
+export default function Accordion(props: AccordionProps): JSX.Element;
diff --git a/node_modules/@material-ui/core/Accordion/Accordion.js b/node_modules/@material-ui/core/Accordion/Accordion.js
new file mode 100644
index 0000000000..a169ab97fd
--- /dev/null
+++ b/node_modules/@material-ui/core/Accordion/Accordion.js
@@ -0,0 +1,255 @@
+"use strict";
+
+var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
+
+var _toArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toArray"));
+
+var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
+
+var React = _interopRequireWildcard(require("react"));
+
+var _reactIs = require("react-is");
+
+var _propTypes = _interopRequireDefault(require("prop-types"));
+
+var _clsx = _interopRequireDefault(require("clsx"));
+
+var _utils = require("@material-ui/utils");
+
+var _Collapse = _interopRequireDefault(require("../Collapse"));
+
+var _Paper = _interopRequireDefault(require("../Paper"));
+
+var _withStyles = _interopRequireDefault(require("../styles/withStyles"));
+
+var _AccordionContext = _interopRequireDefault(require("./AccordionContext"));
+
+var _useControlled3 = _interopRequireDefault(require("../utils/useControlled"));
+
+var styles = function styles(theme) {
+ var transition = {
+ duration: theme.transitions.duration.shortest
+ };
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ position: 'relative',
+ transition: theme.transitions.create(['margin'], transition),
+ '&:before': {
+ position: 'absolute',
+ left: 0,
+ top: -1,
+ right: 0,
+ height: 1,
+ content: '""',
+ opacity: 1,
+ backgroundColor: theme.palette.divider,
+ transition: theme.transitions.create(['opacity', 'background-color'], transition)
+ },
+ '&:first-child': {
+ '&:before': {
+ display: 'none'
+ }
+ },
+ '&$expanded': {
+ margin: '16px 0',
+ '&:first-child': {
+ marginTop: 0
+ },
+ '&:last-child': {
+ marginBottom: 0
+ },
+ '&:before': {
+ opacity: 0
+ }
+ },
+ '&$expanded + &': {
+ '&:before': {
+ display: 'none'
+ }
+ },
+ '&$disabled': {
+ backgroundColor: theme.palette.action.disabledBackground
+ }
+ },
+
+ /* Styles applied to the root element if `square={false}`. */
+ rounded: {
+ borderRadius: 0,
+ '&:first-child': {
+ borderTopLeftRadius: theme.shape.borderRadius,
+ borderTopRightRadius: theme.shape.borderRadius
+ },
+ '&:last-child': {
+ borderBottomLeftRadius: theme.shape.borderRadius,
+ borderBottomRightRadius: theme.shape.borderRadius,
+ // Fix a rendering issue on Edge
+ '@supports (-ms-ime-align: auto)': {
+ borderBottomLeftRadius: 0,
+ borderBottomRightRadius: 0
+ }
+ }
+ },
+
+ /* Styles applied to the root element if `expanded={true}`. */
+ expanded: {},
+
+ /* Styles applied to the root element if `disabled={true}`. */
+ disabled: {}
+ };
+};
+
+exports.styles = styles;
+var Accordion = /*#__PURE__*/React.forwardRef(function Accordion(props, ref) {
+ var childrenProp = props.children,
+ classes = props.classes,
+ className = props.className,
+ _props$defaultExpande = props.defaultExpanded,
+ defaultExpanded = _props$defaultExpande === void 0 ? false : _props$defaultExpande,
+ _props$disabled = props.disabled,
+ disabled = _props$disabled === void 0 ? false : _props$disabled,
+ expandedProp = props.expanded,
+ onChange = props.onChange,
+ _props$square = props.square,
+ square = _props$square === void 0 ? false : _props$square,
+ _props$TransitionComp = props.TransitionComponent,
+ TransitionComponent = _props$TransitionComp === void 0 ? _Collapse.default : _props$TransitionComp,
+ TransitionProps = props.TransitionProps,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "defaultExpanded", "disabled", "expanded", "onChange", "square", "TransitionComponent", "TransitionProps"]);
+
+ var _useControlled = (0, _useControlled3.default)({
+ controlled: expandedProp,
+ default: defaultExpanded,
+ name: 'Accordion',
+ state: 'expanded'
+ }),
+ _useControlled2 = (0, _slicedToArray2.default)(_useControlled, 2),
+ expanded = _useControlled2[0],
+ setExpandedState = _useControlled2[1];
+
+ var handleChange = React.useCallback(function (event) {
+ setExpandedState(!expanded);
+
+ if (onChange) {
+ onChange(event, !expanded);
+ }
+ }, [expanded, onChange, setExpandedState]);
+
+ var _React$Children$toArr = React.Children.toArray(childrenProp),
+ _React$Children$toArr2 = (0, _toArray2.default)(_React$Children$toArr),
+ summary = _React$Children$toArr2[0],
+ children = _React$Children$toArr2.slice(1);
+
+ var contextValue = React.useMemo(function () {
+ return {
+ expanded: expanded,
+ disabled: disabled,
+ toggle: handleChange
+ };
+ }, [expanded, disabled, handleChange]);
+ return /*#__PURE__*/React.createElement(_Paper.default, (0, _extends2.default)({
+ className: (0, _clsx.default)(classes.root, className, expanded && classes.expanded, disabled && classes.disabled, !square && classes.rounded),
+ ref: ref,
+ square: square
+ }, other), /*#__PURE__*/React.createElement(_AccordionContext.default.Provider, {
+ value: contextValue
+ }, summary), /*#__PURE__*/React.createElement(TransitionComponent, (0, _extends2.default)({
+ in: expanded,
+ timeout: "auto"
+ }, TransitionProps), /*#__PURE__*/React.createElement("div", {
+ "aria-labelledby": summary.props.id,
+ id: summary.props['aria-controls'],
+ role: "region"
+ }, children)));
+});
+process.env.NODE_ENV !== "production" ? Accordion.propTypes = {
+ // ----------------------------- Warning --------------------------------
+ // | These PropTypes are generated from the TypeScript type definitions |
+ // | To update them edit the d.ts file and run "yarn proptypes" |
+ // ----------------------------------------------------------------------
+
+ /**
+ * The content of the accordion.
+ */
+ children: (0, _utils.chainPropTypes)(_propTypes.default.node.isRequired, function (props) {
+ var summary = React.Children.toArray(props.children)[0];
+
+ if ((0, _reactIs.isFragment)(summary)) {
+ return new Error("Material-UI: The Accordion doesn't accept a Fragment as a child. " + 'Consider providing an array instead.');
+ }
+
+ if (! /*#__PURE__*/React.isValidElement(summary)) {
+ return new Error('Material-UI: Expected the first child of Accordion to be a valid element.');
+ }
+
+ return null;
+ }),
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css) below for more details.
+ */
+ classes: _propTypes.default.object,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * If `true`, expands the accordion by default.
+ */
+ defaultExpanded: _propTypes.default.bool,
+
+ /**
+ * If `true`, the accordion will be displayed in a disabled state.
+ */
+ disabled: _propTypes.default.bool,
+
+ /**
+ * If `true`, expands the accordion, otherwise collapse it.
+ * Setting this prop enables control over the accordion.
+ */
+ expanded: _propTypes.default.bool,
+
+ /**
+ * Callback fired when the expand/collapse state is changed.
+ *
+ * @param {object} event The event source of the callback.
+ * @param {boolean} expanded The `expanded` state of the accordion.
+ */
+ onChange: _propTypes.default.func,
+
+ /**
+ * If `true`, rounded corners are disabled.
+ */
+ square: _propTypes.default.bool,
+
+ /**
+ * The component used for the collapse effect.
+ * [Follow this guide](/components/transitions/#transitioncomponent-prop) to learn more about the requirements for this component.
+ */
+ TransitionComponent: _propTypes.default.elementType,
+
+ /**
+ * Props applied to the [`Transition`](http://reactcommunity.org/react-transition-group/transition#Transition-props) element.
+ */
+ TransitionProps: _propTypes.default.object
+} : void 0;
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiAccordion'
+})(Accordion);
+
+exports.default = _default;
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/Accordion/AccordionContext.js b/node_modules/@material-ui/core/Accordion/AccordionContext.js
new file mode 100644
index 0000000000..c6747aca24
--- /dev/null
+++ b/node_modules/@material-ui/core/Accordion/AccordionContext.js
@@ -0,0 +1,23 @@
+"use strict";
+
+var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = void 0;
+
+var React = _interopRequireWildcard(require("react"));
+
+/**
+ * @ignore - internal component.
+ * @type {React.Context<{} | {expanded: boolean, disabled: boolean, toggle: () => void}>}
+ */
+var AccordionContext = React.createContext({});
+
+if (process.env.NODE_ENV !== 'production') {
+ AccordionContext.displayName = 'AccordionContext';
+}
+
+var _default = AccordionContext;
+exports.default = _default;
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/Accordion/index.d.ts b/node_modules/@material-ui/core/Accordion/index.d.ts
new file mode 100644
index 0000000000..72fa885794
--- /dev/null
+++ b/node_modules/@material-ui/core/Accordion/index.d.ts
@@ -0,0 +1,2 @@
+export { default } from './Accordion';
+export * from './Accordion';
diff --git a/node_modules/@material-ui/core/Accordion/index.js b/node_modules/@material-ui/core/Accordion/index.js
new file mode 100644
index 0000000000..580088ee7d
--- /dev/null
+++ b/node_modules/@material-ui/core/Accordion/index.js
@@ -0,0 +1,15 @@
+"use strict";
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Accordion.default;
+ }
+});
+
+var _Accordion = _interopRequireDefault(require("./Accordion"));
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/Accordion/package.json b/node_modules/@material-ui/core/Accordion/package.json
new file mode 100644
index 0000000000..8c619471e0
--- /dev/null
+++ b/node_modules/@material-ui/core/Accordion/package.json
@@ -0,0 +1,5 @@
+{
+ "sideEffects": false,
+ "module": "../esm/Accordion/index.js",
+ "typings": "./index.d.ts"
+}
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/AccordionActions/AccordionActions.d.ts b/node_modules/@material-ui/core/AccordionActions/AccordionActions.d.ts
new file mode 100644
index 0000000000..f6f4c3cee7
--- /dev/null
+++ b/node_modules/@material-ui/core/AccordionActions/AccordionActions.d.ts
@@ -0,0 +1,28 @@
+import * as React from 'react';
+import { StandardProps } from '..';
+
+export interface AccordionActionsProps
+ extends StandardProps, AccordionActionsClassKey> {
+ /**
+ * The content of the component.
+ */
+ children?: React.ReactNode;
+ /**
+ * If `true`, the actions do not have additional margin.
+ */
+ disableSpacing?: boolean;
+}
+
+export type AccordionActionsClassKey = 'root' | 'spacing';
+
+/**
+ *
+ * Demos:
+ *
+ * - [Accordion](https://material-ui.com/components/accordion/)
+ *
+ * API:
+ *
+ * - [AccordionActions API](https://material-ui.com/api/accordion-actions/)
+ */
+export default function AccordionActions(props: AccordionActionsProps): JSX.Element;
diff --git a/node_modules/@material-ui/core/AccordionActions/AccordionActions.js b/node_modules/@material-ui/core/AccordionActions/AccordionActions.js
new file mode 100644
index 0000000000..4e9d07cfda
--- /dev/null
+++ b/node_modules/@material-ui/core/AccordionActions/AccordionActions.js
@@ -0,0 +1,84 @@
+"use strict";
+
+var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
+
+var React = _interopRequireWildcard(require("react"));
+
+var _propTypes = _interopRequireDefault(require("prop-types"));
+
+var _clsx = _interopRequireDefault(require("clsx"));
+
+var _withStyles = _interopRequireDefault(require("../styles/withStyles"));
+
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'flex',
+ alignItems: 'center',
+ padding: 8,
+ justifyContent: 'flex-end'
+ },
+
+ /* Styles applied to the root element if `disableSpacing={false}`. */
+ spacing: {
+ '& > :not(:first-child)': {
+ marginLeft: 8
+ }
+ }
+};
+exports.styles = styles;
+var AccordionActions = /*#__PURE__*/React.forwardRef(function AccordionActions(props, ref) {
+ var classes = props.classes,
+ className = props.className,
+ _props$disableSpacing = props.disableSpacing,
+ disableSpacing = _props$disableSpacing === void 0 ? false : _props$disableSpacing,
+ other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "disableSpacing"]);
+ return /*#__PURE__*/React.createElement("div", (0, _extends2.default)({
+ className: (0, _clsx.default)(classes.root, className, !disableSpacing && classes.spacing),
+ ref: ref
+ }, other));
+});
+process.env.NODE_ENV !== "production" ? AccordionActions.propTypes = {
+ // ----------------------------- Warning --------------------------------
+ // | These PropTypes are generated from the TypeScript type definitions |
+ // | To update them edit the d.ts file and run "yarn proptypes" |
+ // ----------------------------------------------------------------------
+
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css) below for more details.
+ */
+ classes: _propTypes.default.object,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * If `true`, the actions do not have additional margin.
+ */
+ disableSpacing: _propTypes.default.bool
+} : void 0;
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiAccordionActions'
+})(AccordionActions);
+
+exports.default = _default;
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/AccordionActions/index.d.ts b/node_modules/@material-ui/core/AccordionActions/index.d.ts
new file mode 100644
index 0000000000..f5b4b351fc
--- /dev/null
+++ b/node_modules/@material-ui/core/AccordionActions/index.d.ts
@@ -0,0 +1,2 @@
+export { default } from './AccordionActions';
+export * from './AccordionActions';
diff --git a/node_modules/@material-ui/core/AccordionActions/index.js b/node_modules/@material-ui/core/AccordionActions/index.js
new file mode 100644
index 0000000000..b66c0c33d1
--- /dev/null
+++ b/node_modules/@material-ui/core/AccordionActions/index.js
@@ -0,0 +1,15 @@
+"use strict";
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _AccordionActions.default;
+ }
+});
+
+var _AccordionActions = _interopRequireDefault(require("./AccordionActions"));
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/AccordionActions/package.json b/node_modules/@material-ui/core/AccordionActions/package.json
new file mode 100644
index 0000000000..01179a0a10
--- /dev/null
+++ b/node_modules/@material-ui/core/AccordionActions/package.json
@@ -0,0 +1,5 @@
+{
+ "sideEffects": false,
+ "module": "../esm/AccordionActions/index.js",
+ "typings": "./index.d.ts"
+}
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/AccordionDetails/AccordionDetails.d.ts b/node_modules/@material-ui/core/AccordionDetails/AccordionDetails.d.ts
new file mode 100644
index 0000000000..9ec9ddd204
--- /dev/null
+++ b/node_modules/@material-ui/core/AccordionDetails/AccordionDetails.d.ts
@@ -0,0 +1,24 @@
+import * as React from 'react';
+import { StandardProps } from '..';
+
+export interface AccordionDetailsProps
+ extends StandardProps, AccordionDetailsClassKey> {
+ /**
+ * The content of the accordion details.
+ */
+ children?: React.ReactNode;
+}
+
+export type AccordionDetailsClassKey = 'root';
+
+/**
+ *
+ * Demos:
+ *
+ * - [Accordion](https://material-ui.com/components/accordion/)
+ *
+ * API:
+ *
+ * - [AccordionDetails API](https://material-ui.com/api/accordion-details/)
+ */
+export default function AccordionDetails(props: AccordionDetailsProps): JSX.Element;
diff --git a/node_modules/@material-ui/core/AccordionDetails/AccordionDetails.js b/node_modules/@material-ui/core/AccordionDetails/AccordionDetails.js
new file mode 100644
index 0000000000..dfc454d97c
--- /dev/null
+++ b/node_modules/@material-ui/core/AccordionDetails/AccordionDetails.js
@@ -0,0 +1,71 @@
+"use strict";
+
+var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
+
+var React = _interopRequireWildcard(require("react"));
+
+var _propTypes = _interopRequireDefault(require("prop-types"));
+
+var _clsx = _interopRequireDefault(require("clsx"));
+
+var _withStyles = _interopRequireDefault(require("../styles/withStyles"));
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'flex',
+ padding: theme.spacing(1, 2, 2)
+ }
+ };
+};
+
+exports.styles = styles;
+var AccordionDetails = /*#__PURE__*/React.forwardRef(function AccordionDetails(props, ref) {
+ var classes = props.classes,
+ className = props.className,
+ other = (0, _objectWithoutProperties2.default)(props, ["classes", "className"]);
+ return /*#__PURE__*/React.createElement("div", (0, _extends2.default)({
+ className: (0, _clsx.default)(classes.root, className),
+ ref: ref
+ }, other));
+});
+process.env.NODE_ENV !== "production" ? AccordionDetails.propTypes = {
+ // ----------------------------- Warning --------------------------------
+ // | These PropTypes are generated from the TypeScript type definitions |
+ // | To update them edit the d.ts file and run "yarn proptypes" |
+ // ----------------------------------------------------------------------
+
+ /**
+ * The content of the accordion details.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css) below for more details.
+ */
+ classes: _propTypes.default.object,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string
+} : void 0;
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiAccordionDetails'
+})(AccordionDetails);
+
+exports.default = _default;
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/AccordionDetails/index.d.ts b/node_modules/@material-ui/core/AccordionDetails/index.d.ts
new file mode 100644
index 0000000000..cca795adb3
--- /dev/null
+++ b/node_modules/@material-ui/core/AccordionDetails/index.d.ts
@@ -0,0 +1,2 @@
+export { default } from './AccordionDetails';
+export * from './AccordionDetails';
diff --git a/node_modules/@material-ui/core/AccordionDetails/index.js b/node_modules/@material-ui/core/AccordionDetails/index.js
new file mode 100644
index 0000000000..12fbb724a8
--- /dev/null
+++ b/node_modules/@material-ui/core/AccordionDetails/index.js
@@ -0,0 +1,15 @@
+"use strict";
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _AccordionDetails.default;
+ }
+});
+
+var _AccordionDetails = _interopRequireDefault(require("./AccordionDetails"));
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/AccordionDetails/package.json b/node_modules/@material-ui/core/AccordionDetails/package.json
new file mode 100644
index 0000000000..1c2048c47b
--- /dev/null
+++ b/node_modules/@material-ui/core/AccordionDetails/package.json
@@ -0,0 +1,5 @@
+{
+ "sideEffects": false,
+ "module": "../esm/AccordionDetails/index.js",
+ "typings": "./index.d.ts"
+}
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/AccordionSummary/AccordionSummary.d.ts b/node_modules/@material-ui/core/AccordionSummary/AccordionSummary.d.ts
new file mode 100644
index 0000000000..adff3c43cc
--- /dev/null
+++ b/node_modules/@material-ui/core/AccordionSummary/AccordionSummary.d.ts
@@ -0,0 +1,54 @@
+import * as React from 'react';
+import { ExtendButtonBase, ExtendButtonBaseTypeMap } from '../ButtonBase';
+import { IconButtonProps } from '../IconButton';
+import { OverrideProps } from '../OverridableComponent';
+
+export type AccordionSummaryTypeMap<
+ P = {},
+ D extends React.ElementType = 'div'
+> = ExtendButtonBaseTypeMap<{
+ props: P & {
+ /**
+ * The content of the accordion summary.
+ */
+ children?: React.ReactNode;
+ /**
+ * The icon to display as the expand indicator.
+ */
+ expandIcon?: React.ReactNode;
+ /**
+ * Props applied to the `IconButton` element wrapping the expand icon.
+ */
+ IconButtonProps?: Partial;
+ };
+ defaultComponent: D;
+ classKey: AccordionSummaryClassKey;
+}>;
+
+/**
+ *
+ * Demos:
+ *
+ * - [Accordion](https://material-ui.com/components/accordion/)
+ *
+ * API:
+ *
+ * - [AccordionSummary API](https://material-ui.com/api/accordion-summary/)
+ * - inherits [ButtonBase API](https://material-ui.com/api/button-base/)
+ */
+declare const AccordionSummary: ExtendButtonBase;
+
+export type AccordionSummaryClassKey =
+ | 'root'
+ | 'expanded'
+ | 'focused'
+ | 'disabled'
+ | 'content'
+ | 'expandIcon';
+
+export type AccordionSummaryProps<
+ D extends React.ElementType = AccordionSummaryTypeMap['defaultComponent'],
+ P = {}
+> = OverrideProps, D>;
+
+export default AccordionSummary;
diff --git a/node_modules/@material-ui/core/AccordionSummary/AccordionSummary.js b/node_modules/@material-ui/core/AccordionSummary/AccordionSummary.js
new file mode 100644
index 0000000000..d6fb6dc18b
--- /dev/null
+++ b/node_modules/@material-ui/core/AccordionSummary/AccordionSummary.js
@@ -0,0 +1,215 @@
+"use strict";
+
+var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
+
+var React = _interopRequireWildcard(require("react"));
+
+var _propTypes = _interopRequireDefault(require("prop-types"));
+
+var _clsx = _interopRequireDefault(require("clsx"));
+
+var _ButtonBase = _interopRequireDefault(require("../ButtonBase"));
+
+var _IconButton = _interopRequireDefault(require("../IconButton"));
+
+var _withStyles = _interopRequireDefault(require("../styles/withStyles"));
+
+var _AccordionContext = _interopRequireDefault(require("../Accordion/AccordionContext"));
+
+/* eslint-disable jsx-a11y/aria-role */
+var styles = function styles(theme) {
+ var transition = {
+ duration: theme.transitions.duration.shortest
+ };
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'flex',
+ minHeight: 8 * 6,
+ transition: theme.transitions.create(['min-height', 'background-color'], transition),
+ padding: theme.spacing(0, 2),
+ '&:hover:not($disabled)': {
+ cursor: 'pointer'
+ },
+ '&$expanded': {
+ minHeight: 64
+ },
+ '&$focused': {
+ backgroundColor: theme.palette.action.focus
+ },
+ '&$disabled': {
+ opacity: theme.palette.action.disabledOpacity
+ }
+ },
+
+ /* Pseudo-class applied to the root element, children wrapper element and `IconButton` component if `expanded={true}`. */
+ expanded: {},
+
+ /* Pseudo-class applied to the root element if `focused={true}`. */
+ focused: {},
+
+ /* Pseudo-class applied to the root element if `disabled={true}`. */
+ disabled: {},
+
+ /* Styles applied to the children wrapper element. */
+ content: {
+ display: 'flex',
+ flexGrow: 1,
+ transition: theme.transitions.create(['margin'], transition),
+ margin: '12px 0',
+ '&$expanded': {
+ margin: '20px 0'
+ }
+ },
+
+ /* Styles applied to the `IconButton` component when `expandIcon` is supplied. */
+ expandIcon: {
+ transform: 'rotate(0deg)',
+ transition: theme.transitions.create('transform', transition),
+ '&:hover': {
+ // Disable the hover effect for the IconButton,
+ // because a hover effect should apply to the entire Expand button and
+ // not only to the IconButton.
+ backgroundColor: 'transparent'
+ },
+ '&$expanded': {
+ transform: 'rotate(180deg)'
+ }
+ }
+ };
+};
+
+exports.styles = styles;
+var AccordionSummary = /*#__PURE__*/React.forwardRef(function AccordionSummary(props, ref) {
+ var children = props.children,
+ classes = props.classes,
+ className = props.className,
+ expandIcon = props.expandIcon,
+ IconButtonProps = props.IconButtonProps,
+ onBlur = props.onBlur,
+ onClick = props.onClick,
+ onFocusVisible = props.onFocusVisible,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "expandIcon", "IconButtonProps", "onBlur", "onClick", "onFocusVisible"]);
+
+ var _React$useState = React.useState(false),
+ focusedState = _React$useState[0],
+ setFocusedState = _React$useState[1];
+
+ var handleFocusVisible = function handleFocusVisible(event) {
+ setFocusedState(true);
+
+ if (onFocusVisible) {
+ onFocusVisible(event);
+ }
+ };
+
+ var handleBlur = function handleBlur(event) {
+ setFocusedState(false);
+
+ if (onBlur) {
+ onBlur(event);
+ }
+ };
+
+ var _React$useContext = React.useContext(_AccordionContext.default),
+ _React$useContext$dis = _React$useContext.disabled,
+ disabled = _React$useContext$dis === void 0 ? false : _React$useContext$dis,
+ expanded = _React$useContext.expanded,
+ toggle = _React$useContext.toggle;
+
+ var handleChange = function handleChange(event) {
+ if (toggle) {
+ toggle(event);
+ }
+
+ if (onClick) {
+ onClick(event);
+ }
+ };
+
+ return /*#__PURE__*/React.createElement(_ButtonBase.default, (0, _extends2.default)({
+ focusRipple: false,
+ disableRipple: true,
+ disabled: disabled,
+ component: "div",
+ "aria-expanded": expanded,
+ className: (0, _clsx.default)(classes.root, className, disabled && classes.disabled, expanded && classes.expanded, focusedState && classes.focused),
+ onFocusVisible: handleFocusVisible,
+ onBlur: handleBlur,
+ onClick: handleChange,
+ ref: ref
+ }, other), /*#__PURE__*/React.createElement("div", {
+ className: (0, _clsx.default)(classes.content, expanded && classes.expanded)
+ }, children), expandIcon && /*#__PURE__*/React.createElement(_IconButton.default, (0, _extends2.default)({
+ className: (0, _clsx.default)(classes.expandIcon, expanded && classes.expanded),
+ edge: "end",
+ component: "div",
+ tabIndex: null,
+ role: null,
+ "aria-hidden": true
+ }, IconButtonProps), expandIcon));
+});
+process.env.NODE_ENV !== "production" ? AccordionSummary.propTypes = {
+ // ----------------------------- Warning --------------------------------
+ // | These PropTypes are generated from the TypeScript type definitions |
+ // | To update them edit the d.ts file and run "yarn proptypes" |
+ // ----------------------------------------------------------------------
+
+ /**
+ * The content of the accordion summary.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css) below for more details.
+ */
+ classes: _propTypes.default.object,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The icon to display as the expand indicator.
+ */
+ expandIcon: _propTypes.default.node,
+
+ /**
+ * Props applied to the `IconButton` element wrapping the expand icon.
+ */
+ IconButtonProps: _propTypes.default.object,
+
+ /**
+ * @ignore
+ */
+ onBlur: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onClick: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onFocusVisible: _propTypes.default.func
+} : void 0;
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiAccordionSummary'
+})(AccordionSummary);
+
+exports.default = _default;
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/AccordionSummary/index.d.ts b/node_modules/@material-ui/core/AccordionSummary/index.d.ts
new file mode 100644
index 0000000000..601ebf5487
--- /dev/null
+++ b/node_modules/@material-ui/core/AccordionSummary/index.d.ts
@@ -0,0 +1,2 @@
+export { default } from './AccordionSummary';
+export * from './AccordionSummary';
diff --git a/node_modules/@material-ui/core/AccordionSummary/index.js b/node_modules/@material-ui/core/AccordionSummary/index.js
new file mode 100644
index 0000000000..771ce0f38a
--- /dev/null
+++ b/node_modules/@material-ui/core/AccordionSummary/index.js
@@ -0,0 +1,15 @@
+"use strict";
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _AccordionSummary.default;
+ }
+});
+
+var _AccordionSummary = _interopRequireDefault(require("./AccordionSummary"));
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/AccordionSummary/package.json b/node_modules/@material-ui/core/AccordionSummary/package.json
new file mode 100644
index 0000000000..2017e8f976
--- /dev/null
+++ b/node_modules/@material-ui/core/AccordionSummary/package.json
@@ -0,0 +1,5 @@
+{
+ "sideEffects": false,
+ "module": "../esm/AccordionSummary/index.js",
+ "typings": "./index.d.ts"
+}
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/AppBar/AppBar.d.ts b/node_modules/@material-ui/core/AppBar/AppBar.d.ts
new file mode 100644
index 0000000000..70b73cd4c2
--- /dev/null
+++ b/node_modules/@material-ui/core/AppBar/AppBar.d.ts
@@ -0,0 +1,39 @@
+import { PropTypes, StandardProps } from '..';
+import { PaperProps } from '../Paper';
+
+export interface AppBarProps extends StandardProps {
+ /**
+ * The color of the component. It supports those theme colors that make sense for this component.
+ */
+ color?: PropTypes.Color | 'transparent';
+ /**
+ * The positioning type. The behavior of the different options is described
+ * [in the MDN web docs](https://developer.mozilla.org/en-US/docs/Learn/CSS/CSS_layout/Positioning).
+ * Note: `sticky` is not universally supported and will fall back to `static` when unavailable.
+ */
+ position?: 'fixed' | 'absolute' | 'sticky' | 'static' | 'relative';
+}
+
+export type AppBarClassKey =
+ | 'root'
+ | 'positionFixed'
+ | 'positionAbsolute'
+ | 'positionSticky'
+ | 'positionStatic'
+ | 'positionRelative'
+ | 'colorDefault'
+ | 'colorPrimary'
+ | 'colorSecondary';
+
+/**
+ *
+ * Demos:
+ *
+ * - [App Bar](https://material-ui.com/components/app-bar/)
+ *
+ * API:
+ *
+ * - [AppBar API](https://material-ui.com/api/app-bar/)
+ * - inherits [Paper API](https://material-ui.com/api/paper/)
+ */
+export default function AppBar(props: AppBarProps): JSX.Element;
diff --git a/node_modules/@material-ui/core/AppBar/AppBar.js b/node_modules/@material-ui/core/AppBar/AppBar.js
new file mode 100644
index 0000000000..ca942faedf
--- /dev/null
+++ b/node_modules/@material-ui/core/AppBar/AppBar.js
@@ -0,0 +1,168 @@
+"use strict";
+
+var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
+
+var React = _interopRequireWildcard(require("react"));
+
+var _propTypes = _interopRequireDefault(require("prop-types"));
+
+var _clsx = _interopRequireDefault(require("clsx"));
+
+var _withStyles = _interopRequireDefault(require("../styles/withStyles"));
+
+var _capitalize = _interopRequireDefault(require("../utils/capitalize"));
+
+var _Paper = _interopRequireDefault(require("../Paper"));
+
+var styles = function styles(theme) {
+ var backgroundColorDefault = theme.palette.type === 'light' ? theme.palette.grey[100] : theme.palette.grey[900];
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'flex',
+ flexDirection: 'column',
+ width: '100%',
+ boxSizing: 'border-box',
+ // Prevent padding issue with the Modal and fixed positioned AppBar.
+ zIndex: theme.zIndex.appBar,
+ flexShrink: 0
+ },
+
+ /* Styles applied to the root element if `position="fixed"`. */
+ positionFixed: {
+ position: 'fixed',
+ top: 0,
+ left: 'auto',
+ right: 0,
+ '@media print': {
+ // Prevent the app bar to be visible on each printed page.
+ position: 'absolute'
+ }
+ },
+
+ /* Styles applied to the root element if `position="absolute"`. */
+ positionAbsolute: {
+ position: 'absolute',
+ top: 0,
+ left: 'auto',
+ right: 0
+ },
+
+ /* Styles applied to the root element if `position="sticky"`. */
+ positionSticky: {
+ // ⚠️ sticky is not supported by IE 11.
+ position: 'sticky',
+ top: 0,
+ left: 'auto',
+ right: 0
+ },
+
+ /* Styles applied to the root element if `position="static"`. */
+ positionStatic: {
+ position: 'static'
+ },
+
+ /* Styles applied to the root element if `position="relative"`. */
+ positionRelative: {
+ position: 'relative'
+ },
+
+ /* Styles applied to the root element if `color="default"`. */
+ colorDefault: {
+ backgroundColor: backgroundColorDefault,
+ color: theme.palette.getContrastText(backgroundColorDefault)
+ },
+
+ /* Styles applied to the root element if `color="primary"`. */
+ colorPrimary: {
+ backgroundColor: theme.palette.primary.main,
+ color: theme.palette.primary.contrastText
+ },
+
+ /* Styles applied to the root element if `color="secondary"`. */
+ colorSecondary: {
+ backgroundColor: theme.palette.secondary.main,
+ color: theme.palette.secondary.contrastText
+ },
+
+ /* Styles applied to the root element if `color="inherit"`. */
+ colorInherit: {
+ color: 'inherit'
+ },
+
+ /* Styles applied to the root element if `color="transparent"`. */
+ colorTransparent: {
+ backgroundColor: 'transparent',
+ color: 'inherit'
+ }
+ };
+};
+
+exports.styles = styles;
+var AppBar = /*#__PURE__*/React.forwardRef(function AppBar(props, ref) {
+ var classes = props.classes,
+ className = props.className,
+ _props$color = props.color,
+ color = _props$color === void 0 ? 'primary' : _props$color,
+ _props$position = props.position,
+ position = _props$position === void 0 ? 'fixed' : _props$position,
+ other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "color", "position"]);
+ return /*#__PURE__*/React.createElement(_Paper.default, (0, _extends2.default)({
+ square: true,
+ component: "header",
+ elevation: 4,
+ className: (0, _clsx.default)(classes.root, classes["position".concat((0, _capitalize.default)(position))], classes["color".concat((0, _capitalize.default)(color))], className, position === 'fixed' && 'mui-fixed'),
+ ref: ref
+ }, other));
+});
+process.env.NODE_ENV !== "production" ? AppBar.propTypes = {
+ // ----------------------------- Warning --------------------------------
+ // | These PropTypes are generated from the TypeScript type definitions |
+ // | To update them edit the d.ts file and run "yarn proptypes" |
+ // ----------------------------------------------------------------------
+
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css) below for more details.
+ */
+ classes: _propTypes.default.object,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The color of the component. It supports those theme colors that make sense for this component.
+ */
+ color: _propTypes.default.oneOf(['default', 'inherit', 'primary', 'secondary', 'transparent']),
+
+ /**
+ * The positioning type. The behavior of the different options is described
+ * [in the MDN web docs](https://developer.mozilla.org/en-US/docs/Learn/CSS/CSS_layout/Positioning).
+ * Note: `sticky` is not universally supported and will fall back to `static` when unavailable.
+ */
+ position: _propTypes.default.oneOf(['absolute', 'fixed', 'relative', 'static', 'sticky'])
+} : void 0;
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiAppBar'
+})(AppBar);
+
+exports.default = _default;
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/AppBar/index.d.ts b/node_modules/@material-ui/core/AppBar/index.d.ts
new file mode 100644
index 0000000000..db3a04f5cf
--- /dev/null
+++ b/node_modules/@material-ui/core/AppBar/index.d.ts
@@ -0,0 +1,2 @@
+export { default } from './AppBar';
+export * from './AppBar';
diff --git a/node_modules/@material-ui/core/AppBar/index.js b/node_modules/@material-ui/core/AppBar/index.js
new file mode 100644
index 0000000000..b2cd21f51b
--- /dev/null
+++ b/node_modules/@material-ui/core/AppBar/index.js
@@ -0,0 +1,15 @@
+"use strict";
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _AppBar.default;
+ }
+});
+
+var _AppBar = _interopRequireDefault(require("./AppBar"));
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/AppBar/package.json b/node_modules/@material-ui/core/AppBar/package.json
new file mode 100644
index 0000000000..51f7ae14a6
--- /dev/null
+++ b/node_modules/@material-ui/core/AppBar/package.json
@@ -0,0 +1,5 @@
+{
+ "sideEffects": false,
+ "module": "../esm/AppBar/index.js",
+ "typings": "./index.d.ts"
+}
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/Avatar/Avatar.d.ts b/node_modules/@material-ui/core/Avatar/Avatar.d.ts
new file mode 100644
index 0000000000..9e5c90f041
--- /dev/null
+++ b/node_modules/@material-ui/core/Avatar/Avatar.d.ts
@@ -0,0 +1,70 @@
+import * as React from 'react';
+import { OverridableComponent, OverrideProps } from '../OverridableComponent';
+
+export interface AvatarTypeMap
{
+ props: P & {
+ /**
+ * Used in combination with `src` or `srcSet` to
+ * provide an alt attribute for the rendered `img` element.
+ */
+ alt?: string;
+ /**
+ * Used to render icon or text elements inside the Avatar if `src` is not set.
+ * This can be an element, or just a string.
+ */
+ children?: React.ReactNode;
+ /**
+ * Attributes applied to the `img` element if the component is used to display an image.
+ * It can be used to listen for the loading error event.
+ */
+ imgProps?: React.ImgHTMLAttributes;
+ /**
+ * The `sizes` attribute for the `img` element.
+ */
+ sizes?: string;
+ /**
+ * The `src` attribute for the `img` element.
+ */
+ src?: string;
+ /**
+ * The `srcSet` attribute for the `img` element.
+ * Use this attribute for responsive image display.
+ */
+ srcSet?: string;
+ /**
+ * The shape of the avatar.
+ */
+ variant?: 'circle' | 'circular' | 'rounded' | 'square';
+ };
+ defaultComponent: D;
+ classKey: AvatarClassKey;
+}
+
+/**
+ *
+ * Demos:
+ *
+ * - [Avatars](https://material-ui.com/components/avatars/)
+ *
+ * API:
+ *
+ * - [Avatar API](https://material-ui.com/api/avatar/)
+ */
+declare const Avatar: OverridableComponent;
+
+export type AvatarClassKey =
+ | 'root'
+ | 'colorDefault'
+ | 'circle'
+ | 'circular'
+ | 'rounded'
+ | 'square'
+ | 'img'
+ | 'fallback';
+
+export type AvatarProps<
+ D extends React.ElementType = AvatarTypeMap['defaultComponent'],
+ P = {}
+> = OverrideProps, D>;
+
+export default Avatar;
diff --git a/node_modules/@material-ui/core/Avatar/Avatar.js b/node_modules/@material-ui/core/Avatar/Avatar.js
new file mode 100644
index 0000000000..daf892aa3e
--- /dev/null
+++ b/node_modules/@material-ui/core/Avatar/Avatar.js
@@ -0,0 +1,247 @@
+"use strict";
+
+var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
+
+var React = _interopRequireWildcard(require("react"));
+
+var _propTypes = _interopRequireDefault(require("prop-types"));
+
+var _clsx = _interopRequireDefault(require("clsx"));
+
+var _withStyles = _interopRequireDefault(require("../styles/withStyles"));
+
+var _Person = _interopRequireDefault(require("../internal/svg-icons/Person"));
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ position: 'relative',
+ display: 'flex',
+ alignItems: 'center',
+ justifyContent: 'center',
+ flexShrink: 0,
+ width: 40,
+ height: 40,
+ fontFamily: theme.typography.fontFamily,
+ fontSize: theme.typography.pxToRem(20),
+ lineHeight: 1,
+ borderRadius: '50%',
+ overflow: 'hidden',
+ userSelect: 'none'
+ },
+
+ /* Styles applied to the root element if not `src` or `srcSet`. */
+ colorDefault: {
+ color: theme.palette.background.default,
+ backgroundColor: theme.palette.type === 'light' ? theme.palette.grey[400] : theme.palette.grey[600]
+ },
+
+ /* Styles applied to the root element if `variant="circle"`. */
+ circle: {},
+
+ /* Styles applied to the root element if `variant="circular"`. */
+ circular: {},
+
+ /* Styles applied to the root element if `variant="rounded"`. */
+ rounded: {
+ borderRadius: theme.shape.borderRadius
+ },
+
+ /* Styles applied to the root element if `variant="square"`. */
+ square: {
+ borderRadius: 0
+ },
+
+ /* Styles applied to the img element if either `src` or `srcSet` is defined. */
+ img: {
+ width: '100%',
+ height: '100%',
+ textAlign: 'center',
+ // Handle non-square image. The property isn't supported by IE 11.
+ objectFit: 'cover',
+ // Hide alt text.
+ color: 'transparent',
+ // Hide the image broken icon, only works on Chrome.
+ textIndent: 10000
+ },
+
+ /* Styles applied to the fallback icon */
+ fallback: {
+ width: '75%',
+ height: '75%'
+ }
+ };
+};
+
+exports.styles = styles;
+
+function useLoaded(_ref) {
+ var src = _ref.src,
+ srcSet = _ref.srcSet;
+
+ var _React$useState = React.useState(false),
+ loaded = _React$useState[0],
+ setLoaded = _React$useState[1];
+
+ React.useEffect(function () {
+ if (!src && !srcSet) {
+ return undefined;
+ }
+
+ setLoaded(false);
+ var active = true;
+ var image = new Image();
+ image.src = src;
+ image.srcSet = srcSet;
+
+ image.onload = function () {
+ if (!active) {
+ return;
+ }
+
+ setLoaded('loaded');
+ };
+
+ image.onerror = function () {
+ if (!active) {
+ return;
+ }
+
+ setLoaded('error');
+ };
+
+ return function () {
+ active = false;
+ };
+ }, [src, srcSet]);
+ return loaded;
+}
+
+var Avatar = /*#__PURE__*/React.forwardRef(function Avatar(props, ref) {
+ var alt = props.alt,
+ childrenProp = props.children,
+ classes = props.classes,
+ className = props.className,
+ _props$component = props.component,
+ Component = _props$component === void 0 ? 'div' : _props$component,
+ imgProps = props.imgProps,
+ sizes = props.sizes,
+ src = props.src,
+ srcSet = props.srcSet,
+ _props$variant = props.variant,
+ variant = _props$variant === void 0 ? 'circle' : _props$variant,
+ other = (0, _objectWithoutProperties2.default)(props, ["alt", "children", "classes", "className", "component", "imgProps", "sizes", "src", "srcSet", "variant"]);
+ var children = null; // Use a hook instead of onError on the img element to support server-side rendering.
+
+ var loaded = useLoaded({
+ src: src,
+ srcSet: srcSet
+ });
+ var hasImg = src || srcSet;
+ var hasImgNotFailing = hasImg && loaded !== 'error';
+
+ if (hasImgNotFailing) {
+ children = /*#__PURE__*/React.createElement("img", (0, _extends2.default)({
+ alt: alt,
+ src: src,
+ srcSet: srcSet,
+ sizes: sizes,
+ className: classes.img
+ }, imgProps));
+ } else if (childrenProp != null) {
+ children = childrenProp;
+ } else if (hasImg && alt) {
+ children = alt[0];
+ } else {
+ children = /*#__PURE__*/React.createElement(_Person.default, {
+ className: classes.fallback
+ });
+ }
+
+ return /*#__PURE__*/React.createElement(Component, (0, _extends2.default)({
+ className: (0, _clsx.default)(classes.root, classes.system, classes[variant], className, !hasImgNotFailing && classes.colorDefault),
+ ref: ref
+ }, other), children);
+});
+process.env.NODE_ENV !== "production" ? Avatar.propTypes = {
+ // ----------------------------- Warning --------------------------------
+ // | These PropTypes are generated from the TypeScript type definitions |
+ // | To update them edit the d.ts file and run "yarn proptypes" |
+ // ----------------------------------------------------------------------
+
+ /**
+ * Used in combination with `src` or `srcSet` to
+ * provide an alt attribute for the rendered `img` element.
+ */
+ alt: _propTypes.default.string,
+
+ /**
+ * Used to render icon or text elements inside the Avatar if `src` is not set.
+ * This can be an element, or just a string.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css) below for more details.
+ */
+ classes: _propTypes.default.object,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a HTML element or a component.
+ */
+ component: _propTypes.default
+ /* @typescript-to-proptypes-ignore */
+ .elementType,
+
+ /**
+ * Attributes applied to the `img` element if the component is used to display an image.
+ * It can be used to listen for the loading error event.
+ */
+ imgProps: _propTypes.default.object,
+
+ /**
+ * The `sizes` attribute for the `img` element.
+ */
+ sizes: _propTypes.default.string,
+
+ /**
+ * The `src` attribute for the `img` element.
+ */
+ src: _propTypes.default.string,
+
+ /**
+ * The `srcSet` attribute for the `img` element.
+ * Use this attribute for responsive image display.
+ */
+ srcSet: _propTypes.default.string,
+
+ /**
+ * The shape of the avatar.
+ */
+ variant: _propTypes.default.oneOf(['circle', 'circular', 'rounded', 'square'])
+} : void 0;
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiAvatar'
+})(Avatar);
+
+exports.default = _default;
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/Avatar/index.d.ts b/node_modules/@material-ui/core/Avatar/index.d.ts
new file mode 100644
index 0000000000..0f9f50f3c2
--- /dev/null
+++ b/node_modules/@material-ui/core/Avatar/index.d.ts
@@ -0,0 +1,2 @@
+export { default } from './Avatar';
+export * from './Avatar';
diff --git a/node_modules/@material-ui/core/Avatar/index.js b/node_modules/@material-ui/core/Avatar/index.js
new file mode 100644
index 0000000000..7e788e9cea
--- /dev/null
+++ b/node_modules/@material-ui/core/Avatar/index.js
@@ -0,0 +1,15 @@
+"use strict";
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Avatar.default;
+ }
+});
+
+var _Avatar = _interopRequireDefault(require("./Avatar"));
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/Avatar/package.json b/node_modules/@material-ui/core/Avatar/package.json
new file mode 100644
index 0000000000..ec96a075a7
--- /dev/null
+++ b/node_modules/@material-ui/core/Avatar/package.json
@@ -0,0 +1,5 @@
+{
+ "sideEffects": false,
+ "module": "../esm/Avatar/index.js",
+ "typings": "./index.d.ts"
+}
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/Backdrop/Backdrop.d.ts b/node_modules/@material-ui/core/Backdrop/Backdrop.d.ts
new file mode 100644
index 0000000000..b67c50f60d
--- /dev/null
+++ b/node_modules/@material-ui/core/Backdrop/Backdrop.d.ts
@@ -0,0 +1,44 @@
+import * as React from 'react';
+import { Omit, StandardProps } from '..';
+import { FadeProps } from '../Fade';
+import { TransitionProps } from '../transitions/transition';
+
+export interface BackdropProps
+ extends StandardProps<
+ React.HTMLAttributes & Partial>,
+ BackdropClassKey
+ > {
+ /**
+ * The content of the component.
+ */
+ children?: React.ReactNode;
+ /**
+ * If `true`, the backdrop is invisible.
+ * It can be used when rendering a popover or a custom select component.
+ */
+ invisible?: boolean;
+ /**
+ * If `true`, the backdrop is open.
+ */
+ open: boolean;
+ /**
+ * The duration for the transition, in milliseconds.
+ * You may specify a single timeout for all transitions, or individually with an object.
+ */
+ transitionDuration?: TransitionProps['timeout'];
+}
+
+export type BackdropClassKey = 'root' | 'invisible';
+
+/**
+ *
+ * Demos:
+ *
+ * - [Backdrop](https://material-ui.com/components/backdrop/)
+ *
+ * API:
+ *
+ * - [Backdrop API](https://material-ui.com/api/backdrop/)
+ * - inherits [Fade API](https://material-ui.com/api/fade/)
+ */
+export default function Backdrop(props: BackdropProps): JSX.Element;
diff --git a/node_modules/@material-ui/core/Backdrop/Backdrop.js b/node_modules/@material-ui/core/Backdrop/Backdrop.js
new file mode 100644
index 0000000000..fdb69122ba
--- /dev/null
+++ b/node_modules/@material-ui/core/Backdrop/Backdrop.js
@@ -0,0 +1,117 @@
+"use strict";
+
+var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
+
+var React = _interopRequireWildcard(require("react"));
+
+var _propTypes = _interopRequireDefault(require("prop-types"));
+
+var _clsx = _interopRequireDefault(require("clsx"));
+
+var _withStyles = _interopRequireDefault(require("../styles/withStyles"));
+
+var _Fade = _interopRequireDefault(require("../Fade"));
+
+var styles = {
+ /* Styles applied to the root element. */
+ root: {
+ // Improve scrollable dialog support.
+ zIndex: -1,
+ position: 'fixed',
+ display: 'flex',
+ alignItems: 'center',
+ justifyContent: 'center',
+ right: 0,
+ bottom: 0,
+ top: 0,
+ left: 0,
+ backgroundColor: 'rgba(0, 0, 0, 0.5)',
+ WebkitTapHighlightColor: 'transparent'
+ },
+
+ /* Styles applied to the root element if `invisible={true}`. */
+ invisible: {
+ backgroundColor: 'transparent'
+ }
+};
+exports.styles = styles;
+var Backdrop = /*#__PURE__*/React.forwardRef(function Backdrop(props, ref) {
+ var children = props.children,
+ classes = props.classes,
+ className = props.className,
+ _props$invisible = props.invisible,
+ invisible = _props$invisible === void 0 ? false : _props$invisible,
+ open = props.open,
+ transitionDuration = props.transitionDuration,
+ _props$TransitionComp = props.TransitionComponent,
+ TransitionComponent = _props$TransitionComp === void 0 ? _Fade.default : _props$TransitionComp,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "invisible", "open", "transitionDuration", "TransitionComponent"]);
+ return /*#__PURE__*/React.createElement(TransitionComponent, (0, _extends2.default)({
+ in: open,
+ timeout: transitionDuration
+ }, other), /*#__PURE__*/React.createElement("div", {
+ className: (0, _clsx.default)(classes.root, className, invisible && classes.invisible),
+ "aria-hidden": true,
+ ref: ref
+ }, children));
+});
+process.env.NODE_ENV !== "production" ? Backdrop.propTypes = {
+ // ----------------------------- Warning --------------------------------
+ // | These PropTypes are generated from the TypeScript type definitions |
+ // | To update them edit the d.ts file and run "yarn proptypes" |
+ // ----------------------------------------------------------------------
+
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css) below for more details.
+ */
+ classes: _propTypes.default.object,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * If `true`, the backdrop is invisible.
+ * It can be used when rendering a popover or a custom select component.
+ */
+ invisible: _propTypes.default.bool,
+
+ /**
+ * If `true`, the backdrop is open.
+ */
+ open: _propTypes.default.bool.isRequired,
+
+ /**
+ * The duration for the transition, in milliseconds.
+ * You may specify a single timeout for all transitions, or individually with an object.
+ */
+ transitionDuration: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.shape({
+ appear: _propTypes.default.number,
+ enter: _propTypes.default.number,
+ exit: _propTypes.default.number
+ })])
+} : void 0;
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiBackdrop'
+})(Backdrop);
+
+exports.default = _default;
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/Backdrop/index.d.ts b/node_modules/@material-ui/core/Backdrop/index.d.ts
new file mode 100644
index 0000000000..bb384d566a
--- /dev/null
+++ b/node_modules/@material-ui/core/Backdrop/index.d.ts
@@ -0,0 +1,2 @@
+export { default } from './Backdrop';
+export * from './Backdrop';
diff --git a/node_modules/@material-ui/core/Backdrop/index.js b/node_modules/@material-ui/core/Backdrop/index.js
new file mode 100644
index 0000000000..adddfd8b4f
--- /dev/null
+++ b/node_modules/@material-ui/core/Backdrop/index.js
@@ -0,0 +1,15 @@
+"use strict";
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Backdrop.default;
+ }
+});
+
+var _Backdrop = _interopRequireDefault(require("./Backdrop"));
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/Backdrop/package.json b/node_modules/@material-ui/core/Backdrop/package.json
new file mode 100644
index 0000000000..c6a7e26bf1
--- /dev/null
+++ b/node_modules/@material-ui/core/Backdrop/package.json
@@ -0,0 +1,5 @@
+{
+ "sideEffects": false,
+ "module": "../esm/Backdrop/index.js",
+ "typings": "./index.d.ts"
+}
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/Badge/Badge.d.ts b/node_modules/@material-ui/core/Badge/Badge.d.ts
new file mode 100644
index 0000000000..e30b1a0e68
--- /dev/null
+++ b/node_modules/@material-ui/core/Badge/Badge.d.ts
@@ -0,0 +1,85 @@
+import * as React from 'react';
+import { OverridableComponent, OverrideProps } from '../OverridableComponent';
+
+export interface BadgeOrigin {
+ vertical: 'top' | 'bottom';
+ horizontal: 'left' | 'right';
+}
+
+export interface BadgeTypeMap
{
+ props: P & {
+ /**
+ * The anchor of the badge.
+ */
+ anchorOrigin?: BadgeOrigin;
+ /**
+ * Wrapped shape the badge should overlap.
+ */
+ overlap?: 'rectangle' | 'circle';
+ /**
+ * The content rendered within the badge.
+ */
+ badgeContent?: React.ReactNode;
+ /**
+ * The badge will be added relative to this node.
+ */
+ children?: React.ReactNode;
+ /**
+ * The color of the component. It supports those theme colors that make sense for this component.
+ */
+ color?: 'primary' | 'secondary' | 'default' | 'error';
+ /**
+ * If `true`, the badge will be invisible.
+ */
+ invisible?: boolean;
+ /**
+ * Max count to show.
+ */
+ max?: number;
+ /**
+ * Controls whether the badge is hidden when `badgeContent` is zero.
+ */
+ showZero?: boolean;
+ /**
+ * The variant to use.
+ */
+ variant?: 'standard' | 'dot';
+ };
+ defaultComponent: D;
+ classKey: BadgeClassKey;
+}
+
+export type BadgeClassKey =
+ | 'root'
+ | 'badge'
+ | 'colorPrimary'
+ | 'colorSecondary'
+ | 'colorError'
+ | 'dot'
+ | 'anchorOriginTopRightRectangle'
+ | 'anchorOriginBottomRightRectangle'
+ | 'anchorOriginTopLeftRectangle'
+ | 'anchorOriginBottomLeftRectangle'
+ | 'anchorOriginTopRightCircle'
+ | 'anchorOriginBottomRightCircle'
+ | 'anchorOriginTopLeftCircle'
+ | 'invisible';
+/**
+ *
+ * Demos:
+ *
+ * - [Avatars](https://material-ui.com/components/avatars/)
+ * - [Badges](https://material-ui.com/components/badges/)
+ *
+ * API:
+ *
+ * - [Badge API](https://material-ui.com/api/badge/)
+ */
+declare const Badge: OverridableComponent;
+
+export type BadgeProps<
+ D extends React.ElementType = BadgeTypeMap['defaultComponent'],
+ P = {}
+> = OverrideProps, D>;
+
+export default Badge;
diff --git a/node_modules/@material-ui/core/Badge/Badge.js b/node_modules/@material-ui/core/Badge/Badge.js
new file mode 100644
index 0000000000..12f2154967
--- /dev/null
+++ b/node_modules/@material-ui/core/Badge/Badge.js
@@ -0,0 +1,312 @@
+"use strict";
+
+var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
+
+var React = _interopRequireWildcard(require("react"));
+
+var _propTypes = _interopRequireDefault(require("prop-types"));
+
+var _clsx = _interopRequireDefault(require("clsx"));
+
+var _withStyles = _interopRequireDefault(require("../styles/withStyles"));
+
+var _capitalize = _interopRequireDefault(require("../utils/capitalize"));
+
+var RADIUS_STANDARD = 10;
+var RADIUS_DOT = 4;
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ position: 'relative',
+ display: 'inline-flex',
+ // For correct alignment with the text.
+ verticalAlign: 'middle',
+ flexShrink: 0
+ },
+
+ /* Styles applied to the badge `span` element. */
+ badge: {
+ display: 'flex',
+ flexDirection: 'row',
+ flexWrap: 'wrap',
+ justifyContent: 'center',
+ alignContent: 'center',
+ alignItems: 'center',
+ position: 'absolute',
+ boxSizing: 'border-box',
+ fontFamily: theme.typography.fontFamily,
+ fontWeight: theme.typography.fontWeightMedium,
+ fontSize: theme.typography.pxToRem(12),
+ minWidth: RADIUS_STANDARD * 2,
+ lineHeight: 1,
+ padding: '0 6px',
+ height: RADIUS_STANDARD * 2,
+ borderRadius: RADIUS_STANDARD,
+ zIndex: 1,
+ // Render the badge on top of potential ripples.
+ transition: theme.transitions.create('transform', {
+ easing: theme.transitions.easing.easeInOut,
+ duration: theme.transitions.duration.enteringScreen
+ })
+ },
+
+ /* Styles applied to the root element if `color="primary"`. */
+ colorPrimary: {
+ backgroundColor: theme.palette.primary.main,
+ color: theme.palette.primary.contrastText
+ },
+
+ /* Styles applied to the root element if `color="secondary"`. */
+ colorSecondary: {
+ backgroundColor: theme.palette.secondary.main,
+ color: theme.palette.secondary.contrastText
+ },
+
+ /* Styles applied to the root element if `color="error"`. */
+ colorError: {
+ backgroundColor: theme.palette.error.main,
+ color: theme.palette.error.contrastText
+ },
+
+ /* Styles applied to the root element if `variant="dot"`. */
+ dot: {
+ borderRadius: RADIUS_DOT,
+ height: RADIUS_DOT * 2,
+ minWidth: RADIUS_DOT * 2,
+ padding: 0
+ },
+
+ /* Styles applied to the root element if `anchorOrigin={{ 'top', 'right' }} overlap="rectangle"`. */
+ anchorOriginTopRightRectangle: {
+ top: 0,
+ right: 0,
+ transform: 'scale(1) translate(50%, -50%)',
+ transformOrigin: '100% 0%',
+ '&$invisible': {
+ transform: 'scale(0) translate(50%, -50%)'
+ }
+ },
+
+ /* Styles applied to the root element if `anchorOrigin={{ 'bottom', 'right' }} overlap="rectangle"`. */
+ anchorOriginBottomRightRectangle: {
+ bottom: 0,
+ right: 0,
+ transform: 'scale(1) translate(50%, 50%)',
+ transformOrigin: '100% 100%',
+ '&$invisible': {
+ transform: 'scale(0) translate(50%, 50%)'
+ }
+ },
+
+ /* Styles applied to the root element if `anchorOrigin={{ 'top', 'left' }} overlap="rectangle"`. */
+ anchorOriginTopLeftRectangle: {
+ top: 0,
+ left: 0,
+ transform: 'scale(1) translate(-50%, -50%)',
+ transformOrigin: '0% 0%',
+ '&$invisible': {
+ transform: 'scale(0) translate(-50%, -50%)'
+ }
+ },
+
+ /* Styles applied to the root element if `anchorOrigin={{ 'bottom', 'left' }} overlap="rectangle"`. */
+ anchorOriginBottomLeftRectangle: {
+ bottom: 0,
+ left: 0,
+ transform: 'scale(1) translate(-50%, 50%)',
+ transformOrigin: '0% 100%',
+ '&$invisible': {
+ transform: 'scale(0) translate(-50%, 50%)'
+ }
+ },
+
+ /* Styles applied to the root element if `anchorOrigin={{ 'top', 'right' }} overlap="circle"`. */
+ anchorOriginTopRightCircle: {
+ top: '14%',
+ right: '14%',
+ transform: 'scale(1) translate(50%, -50%)',
+ transformOrigin: '100% 0%',
+ '&$invisible': {
+ transform: 'scale(0) translate(50%, -50%)'
+ }
+ },
+
+ /* Styles applied to the root element if `anchorOrigin={{ 'bottom', 'right' }} overlap="circle"`. */
+ anchorOriginBottomRightCircle: {
+ bottom: '14%',
+ right: '14%',
+ transform: 'scale(1) translate(50%, 50%)',
+ transformOrigin: '100% 100%',
+ '&$invisible': {
+ transform: 'scale(0) translate(50%, 50%)'
+ }
+ },
+
+ /* Styles applied to the root element if `anchorOrigin={{ 'top', 'left' }} overlap="circle"`. */
+ anchorOriginTopLeftCircle: {
+ top: '14%',
+ left: '14%',
+ transform: 'scale(1) translate(-50%, -50%)',
+ transformOrigin: '0% 0%',
+ '&$invisible': {
+ transform: 'scale(0) translate(-50%, -50%)'
+ }
+ },
+
+ /* Styles applied to the root element if `anchorOrigin={{ 'bottom', 'left' }} overlap="circle"`. */
+ anchorOriginBottomLeftCircle: {
+ bottom: '14%',
+ left: '14%',
+ transform: 'scale(1) translate(-50%, 50%)',
+ transformOrigin: '0% 100%',
+ '&$invisible': {
+ transform: 'scale(0) translate(-50%, 50%)'
+ }
+ },
+
+ /* Pseudo-class to the badge `span` element if `invisible={true}`. */
+ invisible: {
+ transition: theme.transitions.create('transform', {
+ easing: theme.transitions.easing.easeInOut,
+ duration: theme.transitions.duration.leavingScreen
+ })
+ }
+ };
+};
+
+exports.styles = styles;
+var Badge = /*#__PURE__*/React.forwardRef(function Badge(props, ref) {
+ var _props$anchorOrigin = props.anchorOrigin,
+ anchorOrigin = _props$anchorOrigin === void 0 ? {
+ vertical: 'top',
+ horizontal: 'right'
+ } : _props$anchorOrigin,
+ badgeContent = props.badgeContent,
+ 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,
+ ComponentProp = _props$component === void 0 ? 'span' : _props$component,
+ invisibleProp = props.invisible,
+ _props$max = props.max,
+ max = _props$max === void 0 ? 99 : _props$max,
+ _props$overlap = props.overlap,
+ overlap = _props$overlap === void 0 ? 'rectangle' : _props$overlap,
+ _props$showZero = props.showZero,
+ showZero = _props$showZero === void 0 ? false : _props$showZero,
+ _props$variant = props.variant,
+ variant = _props$variant === void 0 ? 'standard' : _props$variant,
+ other = (0, _objectWithoutProperties2.default)(props, ["anchorOrigin", "badgeContent", "children", "classes", "className", "color", "component", "invisible", "max", "overlap", "showZero", "variant"]);
+ var invisible = invisibleProp;
+
+ if (invisibleProp == null && (badgeContent === 0 && !showZero || badgeContent == null && variant !== 'dot')) {
+ invisible = true;
+ }
+
+ var displayValue = '';
+
+ if (variant !== 'dot') {
+ displayValue = badgeContent > max ? "".concat(max, "+") : badgeContent;
+ }
+
+ return /*#__PURE__*/React.createElement(ComponentProp, (0, _extends2.default)({
+ className: (0, _clsx.default)(classes.root, className),
+ ref: ref
+ }, other), children, /*#__PURE__*/React.createElement("span", {
+ className: (0, _clsx.default)(classes.badge, classes["".concat(anchorOrigin.horizontal).concat((0, _capitalize.default)(anchorOrigin.vertical), "}")], classes["anchorOrigin".concat((0, _capitalize.default)(anchorOrigin.vertical)).concat((0, _capitalize.default)(anchorOrigin.horizontal)).concat((0, _capitalize.default)(overlap))], color !== 'default' && classes["color".concat((0, _capitalize.default)(color))], invisible && classes.invisible, variant === 'dot' && classes.dot)
+ }, displayValue));
+});
+process.env.NODE_ENV !== "production" ? Badge.propTypes = {
+ // ----------------------------- Warning --------------------------------
+ // | These PropTypes are generated from the TypeScript type definitions |
+ // | To update them edit the d.ts file and run "yarn proptypes" |
+ // ----------------------------------------------------------------------
+
+ /**
+ * The anchor of the badge.
+ */
+ anchorOrigin: _propTypes.default.shape({
+ horizontal: _propTypes.default.oneOf(['left', 'right']).isRequired,
+ vertical: _propTypes.default.oneOf(['bottom', 'top']).isRequired
+ }),
+
+ /**
+ * The content rendered within the badge.
+ */
+ badgeContent: _propTypes.default.node,
+
+ /**
+ * The badge will be added relative to this node.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css) below for more details.
+ */
+ classes: _propTypes.default.object,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The color of the component. It supports those theme colors that make sense for this component.
+ */
+ color: _propTypes.default.oneOf(['default', 'error', 'primary', 'secondary']),
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a HTML element or a component.
+ */
+ component: _propTypes.default
+ /* @typescript-to-proptypes-ignore */
+ .elementType,
+
+ /**
+ * If `true`, the badge will be invisible.
+ */
+ invisible: _propTypes.default.bool,
+
+ /**
+ * Max count to show.
+ */
+ max: _propTypes.default.number,
+
+ /**
+ * Wrapped shape the badge should overlap.
+ */
+ overlap: _propTypes.default.oneOf(['circle', 'rectangle']),
+
+ /**
+ * Controls whether the badge is hidden when `badgeContent` is zero.
+ */
+ showZero: _propTypes.default.bool,
+
+ /**
+ * The variant to use.
+ */
+ variant: _propTypes.default.oneOf(['dot', 'standard'])
+} : void 0;
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiBadge'
+})(Badge);
+
+exports.default = _default;
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/Badge/index.d.ts b/node_modules/@material-ui/core/Badge/index.d.ts
new file mode 100644
index 0000000000..dcb875afff
--- /dev/null
+++ b/node_modules/@material-ui/core/Badge/index.d.ts
@@ -0,0 +1,2 @@
+export { default } from './Badge';
+export * from './Badge';
diff --git a/node_modules/@material-ui/core/Badge/index.js b/node_modules/@material-ui/core/Badge/index.js
new file mode 100644
index 0000000000..9361f1bf7a
--- /dev/null
+++ b/node_modules/@material-ui/core/Badge/index.js
@@ -0,0 +1,15 @@
+"use strict";
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Badge.default;
+ }
+});
+
+var _Badge = _interopRequireDefault(require("./Badge"));
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/Badge/package.json b/node_modules/@material-ui/core/Badge/package.json
new file mode 100644
index 0000000000..2687a90a52
--- /dev/null
+++ b/node_modules/@material-ui/core/Badge/package.json
@@ -0,0 +1,5 @@
+{
+ "sideEffects": false,
+ "module": "../esm/Badge/index.js",
+ "typings": "./index.d.ts"
+}
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/BottomNavigation/BottomNavigation.d.ts b/node_modules/@material-ui/core/BottomNavigation/BottomNavigation.d.ts
new file mode 100644
index 0000000000..6c30b0c9ac
--- /dev/null
+++ b/node_modules/@material-ui/core/BottomNavigation/BottomNavigation.d.ts
@@ -0,0 +1,49 @@
+import * as React from 'react';
+import { OverridableComponent, OverrideProps } from '../OverridableComponent';
+
+export interface BottomNavigationTypeMap
{
+ props: P & {
+ /**
+ * The content of the component.
+ */
+ children?: React.ReactNode;
+ /**
+ * Callback fired when the value changes.
+ *
+ * @param {object} event The event source of the callback.
+ * @param {any} value We default to the index of the child.
+ */
+ onChange?: (event: React.ChangeEvent<{}>, value: any) => void;
+ /**
+ * If `true`, all `BottomNavigationAction`s will show their labels.
+ * By default, only the selected `BottomNavigationAction` will show its label.
+ */
+ showLabels?: boolean;
+ /**
+ * The value of the currently selected `BottomNavigationAction`.
+ */
+ value?: any;
+ };
+ defaultComponent: D;
+ classKey: BottomNavigationClassKey;
+}
+/**
+ *
+ * Demos:
+ *
+ * - [Bottom Navigation](https://material-ui.com/components/bottom-navigation/)
+ *
+ * API:
+ *
+ * - [BottomNavigation API](https://material-ui.com/api/bottom-navigation/)
+ */
+declare const BottomNavigation: OverridableComponent;
+
+export type BottomNavigationClassKey = 'root';
+
+export type BottomNavigationProps<
+ D extends React.ElementType = BottomNavigationTypeMap['defaultComponent'],
+ P = {}
+> = OverrideProps, D>;
+
+export default BottomNavigation;
diff --git a/node_modules/@material-ui/core/BottomNavigation/BottomNavigation.js b/node_modules/@material-ui/core/BottomNavigation/BottomNavigation.js
new file mode 100755
index 0000000000..ab34024dee
--- /dev/null
+++ b/node_modules/@material-ui/core/BottomNavigation/BottomNavigation.js
@@ -0,0 +1,127 @@
+"use strict";
+
+var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
+
+var React = _interopRequireWildcard(require("react"));
+
+var _reactIs = require("react-is");
+
+var _propTypes = _interopRequireDefault(require("prop-types"));
+
+var _clsx = _interopRequireDefault(require("clsx"));
+
+var _withStyles = _interopRequireDefault(require("../styles/withStyles"));
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ display: 'flex',
+ justifyContent: 'center',
+ height: 56,
+ backgroundColor: theme.palette.background.paper
+ }
+ };
+};
+
+exports.styles = styles;
+var BottomNavigation = /*#__PURE__*/React.forwardRef(function BottomNavigation(props, ref) {
+ var children = props.children,
+ classes = props.classes,
+ className = props.className,
+ _props$component = props.component,
+ Component = _props$component === void 0 ? 'div' : _props$component,
+ onChange = props.onChange,
+ _props$showLabels = props.showLabels,
+ showLabels = _props$showLabels === void 0 ? false : _props$showLabels,
+ value = props.value,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "component", "onChange", "showLabels", "value"]);
+ return /*#__PURE__*/React.createElement(Component, (0, _extends2.default)({
+ className: (0, _clsx.default)(classes.root, className),
+ ref: ref
+ }, other), React.Children.map(children, function (child, childIndex) {
+ if (! /*#__PURE__*/React.isValidElement(child)) {
+ return null;
+ }
+
+ if (process.env.NODE_ENV !== 'production') {
+ if ((0, _reactIs.isFragment)(child)) {
+ console.error(["Material-UI: The BottomNavigation component doesn't accept a Fragment as a child.", 'Consider providing an array instead.'].join('\n'));
+ }
+ }
+
+ var childValue = child.props.value === undefined ? childIndex : child.props.value;
+ return /*#__PURE__*/React.cloneElement(child, {
+ selected: childValue === value,
+ showLabel: child.props.showLabel !== undefined ? child.props.showLabel : showLabels,
+ value: childValue,
+ onChange: onChange
+ });
+ }));
+});
+process.env.NODE_ENV !== "production" ? BottomNavigation.propTypes = {
+ // ----------------------------- Warning --------------------------------
+ // | These PropTypes are generated from the TypeScript type definitions |
+ // | To update them edit the d.ts file and run "yarn proptypes" |
+ // ----------------------------------------------------------------------
+
+ /**
+ * The content of the component.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css) below for more details.
+ */
+ classes: _propTypes.default.object,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a HTML element or a component.
+ */
+ component: _propTypes.default
+ /* @typescript-to-proptypes-ignore */
+ .elementType,
+
+ /**
+ * Callback fired when the value changes.
+ *
+ * @param {object} event The event source of the callback.
+ * @param {any} value We default to the index of the child.
+ */
+ onChange: _propTypes.default.func,
+
+ /**
+ * If `true`, all `BottomNavigationAction`s will show their labels.
+ * By default, only the selected `BottomNavigationAction` will show its label.
+ */
+ showLabels: _propTypes.default.bool,
+
+ /**
+ * The value of the currently selected `BottomNavigationAction`.
+ */
+ value: _propTypes.default.any
+} : void 0;
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiBottomNavigation'
+})(BottomNavigation);
+
+exports.default = _default;
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/BottomNavigation/index.d.ts b/node_modules/@material-ui/core/BottomNavigation/index.d.ts
new file mode 100644
index 0000000000..24a0304da2
--- /dev/null
+++ b/node_modules/@material-ui/core/BottomNavigation/index.d.ts
@@ -0,0 +1,2 @@
+export { default } from './BottomNavigation';
+export * from './BottomNavigation';
diff --git a/node_modules/@material-ui/core/BottomNavigation/index.js b/node_modules/@material-ui/core/BottomNavigation/index.js
new file mode 100644
index 0000000000..9d35929fa8
--- /dev/null
+++ b/node_modules/@material-ui/core/BottomNavigation/index.js
@@ -0,0 +1,15 @@
+"use strict";
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _BottomNavigation.default;
+ }
+});
+
+var _BottomNavigation = _interopRequireDefault(require("./BottomNavigation"));
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/BottomNavigation/package.json b/node_modules/@material-ui/core/BottomNavigation/package.json
new file mode 100644
index 0000000000..f54f4d7c28
--- /dev/null
+++ b/node_modules/@material-ui/core/BottomNavigation/package.json
@@ -0,0 +1,5 @@
+{
+ "sideEffects": false,
+ "module": "../esm/BottomNavigation/index.js",
+ "typings": "./index.d.ts"
+}
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/BottomNavigationAction/BottomNavigationAction.d.ts b/node_modules/@material-ui/core/BottomNavigationAction/BottomNavigationAction.d.ts
new file mode 100644
index 0000000000..72dbf68c8c
--- /dev/null
+++ b/node_modules/@material-ui/core/BottomNavigationAction/BottomNavigationAction.d.ts
@@ -0,0 +1,64 @@
+import * as React from 'react';
+import { ButtonBaseTypeMap, ExtendButtonBase, ExtendButtonBaseTypeMap } from '../ButtonBase';
+import { OverrideProps } from '../OverridableComponent';
+
+export type BottomNavigationActionTypeMap<
+ P,
+ D extends React.ElementType
+> = ExtendButtonBaseTypeMap<{
+ props: P & {
+ /**
+ * This prop isn't supported.
+ * Use the `component` prop if you need to change the children structure.
+ */
+ children?: React.ReactNode;
+ /**
+ * The icon element.
+ */
+ icon?: React.ReactNode;
+ /**
+ * The label element.
+ */
+ label?: React.ReactNode;
+ onChange?: (event: React.ChangeEvent<{}>, value: any) => void;
+ onClick?: React.ReactEventHandler;
+ selected?: boolean;
+ /**
+ * If `true`, the `BottomNavigationAction` will show its label.
+ * By default, only the selected `BottomNavigationAction`
+ * inside `BottomNavigation` will show its label.
+ */
+ showLabel?: boolean;
+ /**
+ * You can provide your own value. Otherwise, we fallback to the child position index.
+ */
+ value?: any;
+ };
+ defaultComponent: D;
+ classKey: BottomNavigationActionClassKey;
+}>;
+
+/**
+ *
+ * Demos:
+ *
+ * - [Bottom Navigation](https://material-ui.com/components/bottom-navigation/)
+ *
+ * API:
+ *
+ * - [BottomNavigationAction API](https://material-ui.com/api/bottom-navigation-action/)
+ * - inherits [ButtonBase API](https://material-ui.com/api/button-base/)
+ */
+declare const BottomNavigationAction: ExtendButtonBase>;
+
+export type BottomNavigationActionClassKey = 'root' | 'selected' | 'iconOnly' | 'wrapper' | 'label';
+
+export type BottomNavigationActionProps<
+ D extends React.ElementType = ButtonBaseTypeMap['defaultComponent'],
+ P = {}
+> = OverrideProps, D>;
+
+export default BottomNavigationAction;
diff --git a/node_modules/@material-ui/core/BottomNavigationAction/BottomNavigationAction.js b/node_modules/@material-ui/core/BottomNavigationAction/BottomNavigationAction.js
new file mode 100644
index 0000000000..90f30f5816
--- /dev/null
+++ b/node_modules/@material-ui/core/BottomNavigationAction/BottomNavigationAction.js
@@ -0,0 +1,181 @@
+"use strict";
+
+var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
+
+var React = _interopRequireWildcard(require("react"));
+
+var _propTypes = _interopRequireDefault(require("prop-types"));
+
+var _clsx = _interopRequireDefault(require("clsx"));
+
+var _withStyles = _interopRequireDefault(require("../styles/withStyles"));
+
+var _ButtonBase = _interopRequireDefault(require("../ButtonBase"));
+
+var _unsupportedProp = _interopRequireDefault(require("../utils/unsupportedProp"));
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: {
+ transition: theme.transitions.create(['color', 'padding-top'], {
+ duration: theme.transitions.duration.short
+ }),
+ padding: '6px 12px 8px',
+ minWidth: 80,
+ maxWidth: 168,
+ color: theme.palette.text.secondary,
+ flex: '1',
+ '&$iconOnly': {
+ paddingTop: 16
+ },
+ '&$selected': {
+ paddingTop: 6,
+ color: theme.palette.primary.main
+ }
+ },
+
+ /* Pseudo-class applied to the root element if selected. */
+ selected: {},
+
+ /* Pseudo-class applied to the root element if `showLabel={false}` and not selected. */
+ iconOnly: {},
+
+ /* Styles applied to the span element that wraps the icon and label. */
+ wrapper: {
+ display: 'inline-flex',
+ alignItems: 'center',
+ justifyContent: 'center',
+ width: '100%',
+ flexDirection: 'column'
+ },
+
+ /* Styles applied to the label's span element. */
+ label: {
+ fontFamily: theme.typography.fontFamily,
+ fontSize: theme.typography.pxToRem(12),
+ opacity: 1,
+ transition: 'font-size 0.2s, opacity 0.2s',
+ transitionDelay: '0.1s',
+ '&$iconOnly': {
+ opacity: 0,
+ transitionDelay: '0s'
+ },
+ '&$selected': {
+ fontSize: theme.typography.pxToRem(14)
+ }
+ }
+ };
+};
+
+exports.styles = styles;
+var BottomNavigationAction = /*#__PURE__*/React.forwardRef(function BottomNavigationAction(props, ref) {
+ var classes = props.classes,
+ className = props.className,
+ icon = props.icon,
+ label = props.label,
+ onChange = props.onChange,
+ onClick = props.onClick,
+ selected = props.selected,
+ showLabel = props.showLabel,
+ value = props.value,
+ other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "icon", "label", "onChange", "onClick", "selected", "showLabel", "value"]);
+
+ var handleChange = function handleChange(event) {
+ if (onChange) {
+ onChange(event, value);
+ }
+
+ if (onClick) {
+ onClick(event);
+ }
+ };
+
+ return /*#__PURE__*/React.createElement(_ButtonBase.default, (0, _extends2.default)({
+ ref: ref,
+ className: (0, _clsx.default)(classes.root, className, selected ? classes.selected : !showLabel && classes.iconOnly),
+ focusRipple: true,
+ onClick: handleChange
+ }, other), /*#__PURE__*/React.createElement("span", {
+ className: classes.wrapper
+ }, icon, /*#__PURE__*/React.createElement("span", {
+ className: (0, _clsx.default)(classes.label, selected ? classes.selected : !showLabel && classes.iconOnly)
+ }, label)));
+});
+process.env.NODE_ENV !== "production" ? BottomNavigationAction.propTypes = {
+ // ----------------------------- Warning --------------------------------
+ // | These PropTypes are generated from the TypeScript type definitions |
+ // | To update them edit the d.ts file and run "yarn proptypes" |
+ // ----------------------------------------------------------------------
+
+ /**
+ * This prop isn't supported.
+ * Use the `component` prop if you need to change the children structure.
+ */
+ children: _unsupportedProp.default,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css) below for more details.
+ */
+ classes: _propTypes.default.object,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The icon element.
+ */
+ icon: _propTypes.default.node,
+
+ /**
+ * The label element.
+ */
+ label: _propTypes.default.node,
+
+ /**
+ * @ignore
+ */
+ onChange: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ onClick: _propTypes.default.func,
+
+ /**
+ * @ignore
+ */
+ selected: _propTypes.default.bool,
+
+ /**
+ * If `true`, the `BottomNavigationAction` will show its label.
+ * By default, only the selected `BottomNavigationAction`
+ * inside `BottomNavigation` will show its label.
+ */
+ showLabel: _propTypes.default.bool,
+
+ /**
+ * You can provide your own value. Otherwise, we fallback to the child position index.
+ */
+ value: _propTypes.default.any
+} : void 0;
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiBottomNavigationAction'
+})(BottomNavigationAction);
+
+exports.default = _default;
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/BottomNavigationAction/index.d.ts b/node_modules/@material-ui/core/BottomNavigationAction/index.d.ts
new file mode 100644
index 0000000000..13c318914b
--- /dev/null
+++ b/node_modules/@material-ui/core/BottomNavigationAction/index.d.ts
@@ -0,0 +1,2 @@
+export { default } from './BottomNavigationAction';
+export * from './BottomNavigationAction';
diff --git a/node_modules/@material-ui/core/BottomNavigationAction/index.js b/node_modules/@material-ui/core/BottomNavigationAction/index.js
new file mode 100644
index 0000000000..0d6858b9b0
--- /dev/null
+++ b/node_modules/@material-ui/core/BottomNavigationAction/index.js
@@ -0,0 +1,15 @@
+"use strict";
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _BottomNavigationAction.default;
+ }
+});
+
+var _BottomNavigationAction = _interopRequireDefault(require("./BottomNavigationAction"));
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/BottomNavigationAction/package.json b/node_modules/@material-ui/core/BottomNavigationAction/package.json
new file mode 100644
index 0000000000..8673f03f85
--- /dev/null
+++ b/node_modules/@material-ui/core/BottomNavigationAction/package.json
@@ -0,0 +1,5 @@
+{
+ "sideEffects": false,
+ "module": "../esm/BottomNavigationAction/index.js",
+ "typings": "./index.d.ts"
+}
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/Box/Box.d.ts b/node_modules/@material-ui/core/Box/Box.d.ts
new file mode 100644
index 0000000000..2eb664df6c
--- /dev/null
+++ b/node_modules/@material-ui/core/Box/Box.d.ts
@@ -0,0 +1,46 @@
+import * as React from 'react';
+import {
+ borders,
+ ComposedStyleFunction,
+ display,
+ flexbox,
+ grid,
+ palette,
+ positions,
+ shadows,
+ sizing,
+ spacing,
+ typography,
+ PropsFor,
+} from '@material-ui/system';
+import { Omit } from '..';
+
+type BoxStyleFunction = ComposedStyleFunction<
+ [
+ typeof borders,
+ typeof display,
+ typeof flexbox,
+ typeof grid,
+ typeof palette,
+ typeof positions,
+ typeof shadows,
+ typeof sizing,
+ typeof spacing,
+ typeof typography
+ ]
+>;
+
+type SystemProps = PropsFor;
+type ElementProps = Omit, keyof SystemProps>;
+
+export interface BoxProps extends ElementProps, SystemProps {
+ // styled API
+ component?: React.ElementType;
+ clone?: boolean;
+ // workaround for https://github.com/mui-org/material-ui/pull/15611
+ css?: SystemProps;
+}
+
+declare const Box: React.ComponentType;
+
+export default Box;
diff --git a/node_modules/@material-ui/core/Box/Box.js b/node_modules/@material-ui/core/Box/Box.js
new file mode 100644
index 0000000000..7bb4f67b55
--- /dev/null
+++ b/node_modules/@material-ui/core/Box/Box.js
@@ -0,0 +1,24 @@
+"use strict";
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styleFunction = void 0;
+
+var _system = require("@material-ui/system");
+
+var _styled = _interopRequireDefault(require("../styles/styled"));
+
+var styleFunction = (0, _system.css)((0, _system.compose)(_system.borders, _system.display, _system.flexbox, _system.grid, _system.positions, _system.palette, _system.shadows, _system.sizing, _system.spacing, _system.typography));
+/**
+ * @ignore - do not document.
+ */
+
+exports.styleFunction = styleFunction;
+var Box = (0, _styled.default)('div')(styleFunction, {
+ name: 'MuiBox'
+});
+var _default = Box;
+exports.default = _default;
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/Box/index.d.ts b/node_modules/@material-ui/core/Box/index.d.ts
new file mode 100644
index 0000000000..38ce2fc4f2
--- /dev/null
+++ b/node_modules/@material-ui/core/Box/index.d.ts
@@ -0,0 +1,2 @@
+export { default } from './Box';
+export * from './Box';
diff --git a/node_modules/@material-ui/core/Box/index.js b/node_modules/@material-ui/core/Box/index.js
new file mode 100644
index 0000000000..97d26db752
--- /dev/null
+++ b/node_modules/@material-ui/core/Box/index.js
@@ -0,0 +1,21 @@
+"use strict";
+
+var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Box.default;
+ }
+});
+Object.defineProperty(exports, "styleFunction", {
+ enumerable: true,
+ get: function get() {
+ return _Box.styleFunction;
+ }
+});
+
+var _Box = _interopRequireWildcard(require("./Box"));
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/Box/package.json b/node_modules/@material-ui/core/Box/package.json
new file mode 100644
index 0000000000..15ef729ec7
--- /dev/null
+++ b/node_modules/@material-ui/core/Box/package.json
@@ -0,0 +1,5 @@
+{
+ "sideEffects": false,
+ "module": "../esm/Box/index.js",
+ "typings": "./index.d.ts"
+}
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/Breadcrumbs/BreadcrumbCollapsed.js b/node_modules/@material-ui/core/Breadcrumbs/BreadcrumbCollapsed.js
new file mode 100644
index 0000000000..91bfdbef67
--- /dev/null
+++ b/node_modules/@material-ui/core/Breadcrumbs/BreadcrumbCollapsed.js
@@ -0,0 +1,80 @@
+"use strict";
+
+var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = void 0;
+
+var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
+
+var React = _interopRequireWildcard(require("react"));
+
+var _propTypes = _interopRequireDefault(require("prop-types"));
+
+var _withStyles = _interopRequireDefault(require("../styles/withStyles"));
+
+var _colorManipulator = require("../styles/colorManipulator");
+
+var _MoreHoriz = _interopRequireDefault(require("../internal/svg-icons/MoreHoriz"));
+
+var _ButtonBase = _interopRequireDefault(require("../ButtonBase"));
+
+var styles = function styles(theme) {
+ return {
+ root: {
+ display: 'flex',
+ marginLeft: theme.spacing(0.5),
+ marginRight: theme.spacing(0.5),
+ backgroundColor: theme.palette.grey[100],
+ color: theme.palette.grey[700],
+ borderRadius: 2,
+ cursor: 'pointer',
+ '&:hover, &:focus': {
+ backgroundColor: theme.palette.grey[200]
+ },
+ '&:active': {
+ boxShadow: theme.shadows[0],
+ backgroundColor: (0, _colorManipulator.emphasize)(theme.palette.grey[200], 0.12)
+ }
+ },
+ icon: {
+ width: 24,
+ height: 16
+ }
+ };
+};
+/**
+ * @ignore - internal component.
+ */
+
+
+function BreadcrumbCollapsed(props) {
+ var classes = props.classes,
+ other = (0, _objectWithoutProperties2.default)(props, ["classes"]);
+ return /*#__PURE__*/React.createElement(_ButtonBase.default, (0, _extends2.default)({
+ component: "li",
+ className: classes.root,
+ focusRipple: true
+ }, other), /*#__PURE__*/React.createElement(_MoreHoriz.default, {
+ className: classes.icon
+ }));
+}
+
+process.env.NODE_ENV !== "production" ? BreadcrumbCollapsed.propTypes = {
+ /**
+ * @ignore
+ */
+ classes: _propTypes.default.object.isRequired
+} : void 0;
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'PrivateBreadcrumbCollapsed'
+})(BreadcrumbCollapsed);
+
+exports.default = _default;
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/Breadcrumbs/Breadcrumbs.d.ts b/node_modules/@material-ui/core/Breadcrumbs/Breadcrumbs.d.ts
new file mode 100644
index 0000000000..db07d6b752
--- /dev/null
+++ b/node_modules/@material-ui/core/Breadcrumbs/Breadcrumbs.d.ts
@@ -0,0 +1,58 @@
+import * as React from 'react';
+import { OverridableComponent, OverrideProps } from '../OverridableComponent';
+
+export interface BreadcrumbsTypeMap
{
+ props: P & {
+ /**
+ * The breadcrumb children.
+ */
+ children?: React.ReactNode;
+ /**
+ * Override the default label for the expand button.
+ *
+ * For localization purposes, you can use the provided [translations](/guides/localization/).
+ */
+ expandText?: string;
+ /**
+ * If max items is exceeded, the number of items to show after the ellipsis.
+ */
+ itemsAfterCollapse?: number;
+ /**
+ * If max items is exceeded, the number of items to show before the ellipsis.
+ */
+ itemsBeforeCollapse?: number;
+ /**
+ * Specifies the maximum number of breadcrumbs to display. When there are more
+ * than the maximum number, only the first `itemsBeforeCollapse` and last `itemsAfterCollapse`
+ * will be shown, with an ellipsis in between.
+ */
+ maxItems?: number;
+ /**
+ * Custom separator node.
+ */
+ separator?: React.ReactNode;
+ };
+ defaultComponent: D;
+ classKey: BreadcrumbsClassKey;
+}
+
+/**
+ *
+ * Demos:
+ *
+ * - [Breadcrumbs](https://material-ui.com/components/breadcrumbs/)
+ *
+ * API:
+ *
+ * - [Breadcrumbs API](https://material-ui.com/api/breadcrumbs/)
+ */
+declare const Breadcrumbs: OverridableComponent;
+
+export type BreadcrumbsClassKey = 'root' | 'ol' | 'li' | 'separator';
+
+export type BreadcrumbsProps<
+ D extends React.ElementType = BreadcrumbsTypeMap['defaultComponent'],
+ P = {}
+> = OverrideProps, D>;
+
+export default Breadcrumbs;
diff --git a/node_modules/@material-ui/core/Breadcrumbs/Breadcrumbs.js b/node_modules/@material-ui/core/Breadcrumbs/Breadcrumbs.js
new file mode 100644
index 0000000000..43d2cce27f
--- /dev/null
+++ b/node_modules/@material-ui/core/Breadcrumbs/Breadcrumbs.js
@@ -0,0 +1,213 @@
+"use strict";
+
+var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
+
+var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
+
+var React = _interopRequireWildcard(require("react"));
+
+var _reactIs = require("react-is");
+
+var _propTypes = _interopRequireDefault(require("prop-types"));
+
+var _clsx = _interopRequireDefault(require("clsx"));
+
+var _withStyles = _interopRequireDefault(require("../styles/withStyles"));
+
+var _Typography = _interopRequireDefault(require("../Typography"));
+
+var _BreadcrumbCollapsed = _interopRequireDefault(require("./BreadcrumbCollapsed"));
+
+var styles = {
+ /* Styles applied to the root element. */
+ root: {},
+
+ /* Styles applied to the ol element. */
+ ol: {
+ display: 'flex',
+ flexWrap: 'wrap',
+ alignItems: 'center',
+ padding: 0,
+ margin: 0,
+ listStyle: 'none'
+ },
+
+ /* Styles applied to the li element. */
+ li: {},
+
+ /* Styles applied to the separator element. */
+ separator: {
+ display: 'flex',
+ userSelect: 'none',
+ marginLeft: 8,
+ marginRight: 8
+ }
+};
+exports.styles = styles;
+
+function insertSeparators(items, className, separator) {
+ return items.reduce(function (acc, current, index) {
+ if (index < items.length - 1) {
+ acc = acc.concat(current, /*#__PURE__*/React.createElement("li", {
+ "aria-hidden": true,
+ key: "separator-".concat(index),
+ className: className
+ }, separator));
+ } else {
+ acc.push(current);
+ }
+
+ return acc;
+ }, []);
+}
+
+var Breadcrumbs = /*#__PURE__*/React.forwardRef(function Breadcrumbs(props, ref) {
+ var children = props.children,
+ classes = props.classes,
+ className = props.className,
+ _props$component = props.component,
+ Component = _props$component === void 0 ? 'nav' : _props$component,
+ _props$expandText = props.expandText,
+ expandText = _props$expandText === void 0 ? 'Show path' : _props$expandText,
+ _props$itemsAfterColl = props.itemsAfterCollapse,
+ itemsAfterCollapse = _props$itemsAfterColl === void 0 ? 1 : _props$itemsAfterColl,
+ _props$itemsBeforeCol = props.itemsBeforeCollapse,
+ itemsBeforeCollapse = _props$itemsBeforeCol === void 0 ? 1 : _props$itemsBeforeCol,
+ _props$maxItems = props.maxItems,
+ maxItems = _props$maxItems === void 0 ? 8 : _props$maxItems,
+ _props$separator = props.separator,
+ separator = _props$separator === void 0 ? '/' : _props$separator,
+ other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "component", "expandText", "itemsAfterCollapse", "itemsBeforeCollapse", "maxItems", "separator"]);
+
+ var _React$useState = React.useState(false),
+ expanded = _React$useState[0],
+ setExpanded = _React$useState[1];
+
+ var renderItemsBeforeAndAfter = function renderItemsBeforeAndAfter(allItems) {
+ var handleClickExpand = function handleClickExpand(event) {
+ setExpanded(true); // The clicked element received the focus but gets removed from the DOM.
+ // Let's keep the focus in the component after expanding.
+
+ var focusable = event.currentTarget.parentNode.querySelector('a[href],button,[tabindex]');
+
+ if (focusable) {
+ focusable.focus();
+ }
+ }; // This defends against someone passing weird input, to ensure that if all
+ // items would be shown anyway, we just show all items without the EllipsisItem
+
+
+ if (itemsBeforeCollapse + itemsAfterCollapse >= allItems.length) {
+ if (process.env.NODE_ENV !== 'production') {
+ console.error(['Material-UI: You have provided an invalid combination of props to the Breadcrumbs.', "itemsAfterCollapse={".concat(itemsAfterCollapse, "} + itemsBeforeCollapse={").concat(itemsBeforeCollapse, "} >= maxItems={").concat(maxItems, "}")].join('\n'));
+ }
+
+ return allItems;
+ }
+
+ return [].concat((0, _toConsumableArray2.default)(allItems.slice(0, itemsBeforeCollapse)), [/*#__PURE__*/React.createElement(_BreadcrumbCollapsed.default, {
+ "aria-label": expandText,
+ key: "ellipsis",
+ onClick: handleClickExpand
+ })], (0, _toConsumableArray2.default)(allItems.slice(allItems.length - itemsAfterCollapse, allItems.length)));
+ };
+
+ var allItems = React.Children.toArray(children).filter(function (child) {
+ if (process.env.NODE_ENV !== 'production') {
+ if ((0, _reactIs.isFragment)(child)) {
+ console.error(["Material-UI: The Breadcrumbs component doesn't accept a Fragment as a child.", 'Consider providing an array instead.'].join('\n'));
+ }
+ }
+
+ return /*#__PURE__*/React.isValidElement(child);
+ }).map(function (child, index) {
+ return /*#__PURE__*/React.createElement("li", {
+ className: classes.li,
+ key: "child-".concat(index)
+ }, child);
+ });
+ return /*#__PURE__*/React.createElement(_Typography.default, (0, _extends2.default)({
+ ref: ref,
+ component: Component,
+ color: "textSecondary",
+ className: (0, _clsx.default)(classes.root, className)
+ }, other), /*#__PURE__*/React.createElement("ol", {
+ className: classes.ol
+ }, insertSeparators(expanded || maxItems && allItems.length <= maxItems ? allItems : renderItemsBeforeAndAfter(allItems), classes.separator, separator)));
+});
+process.env.NODE_ENV !== "production" ? Breadcrumbs.propTypes = {
+ // ----------------------------- Warning --------------------------------
+ // | These PropTypes are generated from the TypeScript type definitions |
+ // | To update them edit the d.ts file and run "yarn proptypes" |
+ // ----------------------------------------------------------------------
+
+ /**
+ * The breadcrumb children.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css) below for more details.
+ */
+ classes: _propTypes.default.object,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a HTML element or a component.
+ */
+ component: _propTypes.default
+ /* @typescript-to-proptypes-ignore */
+ .elementType,
+
+ /**
+ * Override the default label for the expand button.
+ *
+ * For localization purposes, you can use the provided [translations](/guides/localization/).
+ */
+ expandText: _propTypes.default.string,
+
+ /**
+ * If max items is exceeded, the number of items to show after the ellipsis.
+ */
+ itemsAfterCollapse: _propTypes.default.number,
+
+ /**
+ * If max items is exceeded, the number of items to show before the ellipsis.
+ */
+ itemsBeforeCollapse: _propTypes.default.number,
+
+ /**
+ * Specifies the maximum number of breadcrumbs to display. When there are more
+ * than the maximum number, only the first `itemsBeforeCollapse` and last `itemsAfterCollapse`
+ * will be shown, with an ellipsis in between.
+ */
+ maxItems: _propTypes.default.number,
+
+ /**
+ * Custom separator node.
+ */
+ separator: _propTypes.default.node
+} : void 0;
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiBreadcrumbs'
+})(Breadcrumbs);
+
+exports.default = _default;
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/Breadcrumbs/index.d.ts b/node_modules/@material-ui/core/Breadcrumbs/index.d.ts
new file mode 100644
index 0000000000..d447c988bb
--- /dev/null
+++ b/node_modules/@material-ui/core/Breadcrumbs/index.d.ts
@@ -0,0 +1,2 @@
+export { default } from './Breadcrumbs';
+export * from './Breadcrumbs';
diff --git a/node_modules/@material-ui/core/Breadcrumbs/index.js b/node_modules/@material-ui/core/Breadcrumbs/index.js
new file mode 100644
index 0000000000..9edf5eb3c4
--- /dev/null
+++ b/node_modules/@material-ui/core/Breadcrumbs/index.js
@@ -0,0 +1,15 @@
+"use strict";
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Breadcrumbs.default;
+ }
+});
+
+var _Breadcrumbs = _interopRequireDefault(require("./Breadcrumbs"));
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/Breadcrumbs/package.json b/node_modules/@material-ui/core/Breadcrumbs/package.json
new file mode 100644
index 0000000000..ce5abf6607
--- /dev/null
+++ b/node_modules/@material-ui/core/Breadcrumbs/package.json
@@ -0,0 +1,5 @@
+{
+ "sideEffects": false,
+ "module": "../esm/Breadcrumbs/index.js",
+ "typings": "./index.d.ts"
+}
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/Button/Button.d.ts b/node_modules/@material-ui/core/Button/Button.d.ts
new file mode 100644
index 0000000000..c8b13a3ca4
--- /dev/null
+++ b/node_modules/@material-ui/core/Button/Button.d.ts
@@ -0,0 +1,111 @@
+import { PropTypes } from '..';
+import { ExtendButtonBase, ExtendButtonBaseTypeMap } from '../ButtonBase';
+import { OverrideProps } from '../OverridableComponent';
+
+export type ButtonTypeMap<
+ P = {},
+ D extends React.ElementType = 'button'
+> = ExtendButtonBaseTypeMap<{
+ props: P & {
+ /**
+ * The content of the button.
+ */
+ children?: React.ReactNode;
+ /**
+ * The color of the component. It supports those theme colors that make sense for this component.
+ */
+ color?: PropTypes.Color;
+ /**
+ * If `true`, the button will be disabled.
+ */
+ disabled?: boolean;
+ /**
+ * If `true`, no elevation is used.
+ */
+ disableElevation?: boolean;
+ /**
+ * If `true`, the keyboard focus ripple will be disabled.
+ */
+ disableFocusRipple?: boolean;
+ /**
+ * Element placed after the children.
+ */
+ endIcon?: React.ReactNode;
+ /**
+ * If `true`, the button will take up the full width of its container.
+ */
+ fullWidth?: boolean;
+ /**
+ * The URL to link to when the button is clicked.
+ * If defined, an `a` element will be used as the root node.
+ */
+ href?: string;
+ /**
+ * The size of the button.
+ * `small` is equivalent to the dense button styling.
+ */
+ size?: 'small' | 'medium' | 'large';
+ /**
+ * Element placed before the children.
+ */
+ startIcon?: React.ReactNode;
+ /**
+ * The variant to use.
+ */
+ variant?: 'text' | 'outlined' | 'contained';
+ };
+ defaultComponent: D;
+ classKey: ButtonClassKey;
+}>;
+
+/**
+ *
+ * Demos:
+ *
+ * - [Button Group](https://material-ui.com/components/button-group/)
+ * - [Buttons](https://material-ui.com/components/buttons/)
+ *
+ * API:
+ *
+ * - [Button API](https://material-ui.com/api/button/)
+ * - inherits [ButtonBase API](https://material-ui.com/api/button-base/)
+ */
+declare const Button: ExtendButtonBase;
+
+export type ButtonProps<
+ D extends React.ElementType = ButtonTypeMap['defaultComponent'],
+ P = {}
+> = OverrideProps, D>;
+
+export type ButtonClassKey =
+ | 'root'
+ | 'label'
+ | 'text'
+ | 'textPrimary'
+ | 'textSecondary'
+ | 'outlined'
+ | 'outlinedPrimary'
+ | 'outlinedSecondary'
+ | 'contained'
+ | 'containedPrimary'
+ | 'containedSecondary'
+ | 'disableElevation'
+ | 'focusVisible'
+ | 'disabled'
+ | 'colorInherit'
+ | 'textSizeSmall'
+ | 'textSizeLarge'
+ | 'outlinedSizeSmall'
+ | 'outlinedSizeLarge'
+ | 'containedSizeSmall'
+ | 'containedSizeLarge'
+ | 'sizeSmall'
+ | 'sizeLarge'
+ | 'fullWidth'
+ | 'startIcon'
+ | 'endIcon'
+ | 'iconSizeSmall'
+ | 'iconSizeMedium'
+ | 'iconSizeLarge';
+
+export default Button;
diff --git a/node_modules/@material-ui/core/Button/Button.js b/node_modules/@material-ui/core/Button/Button.js
new file mode 100644
index 0000000000..33efd8497b
--- /dev/null
+++ b/node_modules/@material-ui/core/Button/Button.js
@@ -0,0 +1,461 @@
+"use strict";
+
+var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
+
+var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
+
+var React = _interopRequireWildcard(require("react"));
+
+var _propTypes = _interopRequireDefault(require("prop-types"));
+
+var _clsx = _interopRequireDefault(require("clsx"));
+
+var _withStyles = _interopRequireDefault(require("../styles/withStyles"));
+
+var _colorManipulator = require("../styles/colorManipulator");
+
+var _ButtonBase = _interopRequireDefault(require("../ButtonBase"));
+
+var _capitalize = _interopRequireDefault(require("../utils/capitalize"));
+
+var styles = function styles(theme) {
+ return {
+ /* Styles applied to the root element. */
+ root: (0, _extends2.default)({}, 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, _colorManipulator.fade)(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, _colorManipulator.fade)(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, _colorManipulator.fade)(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, _colorManipulator.fade)(theme.palette.primary.main, 0.5)),
+ '&:hover': {
+ border: "1px solid ".concat(theme.palette.primary.main),
+ backgroundColor: (0, _colorManipulator.fade)(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, _colorManipulator.fade)(theme.palette.secondary.main, 0.5)),
+ '&:hover': {
+ border: "1px solid ".concat(theme.palette.secondary.main),
+ backgroundColor: (0, _colorManipulator.fade)(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
+ }
+ }
+ };
+};
+
+exports.styles = styles;
+var Button = /*#__PURE__*/React.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, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "color", "component", "disabled", "disableElevation", "disableFocusRipple", "endIcon", "focusVisibleClassName", "fullWidth", "size", "startIcon", "type", "variant"]);
+ var startIcon = startIconProp && /*#__PURE__*/React.createElement("span", {
+ className: (0, _clsx.default)(classes.startIcon, classes["iconSize".concat((0, _capitalize.default)(size))])
+ }, startIconProp);
+ var endIcon = endIconProp && /*#__PURE__*/React.createElement("span", {
+ className: (0, _clsx.default)(classes.endIcon, classes["iconSize".concat((0, _capitalize.default)(size))])
+ }, endIconProp);
+ return /*#__PURE__*/React.createElement(_ButtonBase.default, (0, _extends2.default)({
+ className: (0, _clsx.default)(classes.root, classes[variant], className, color === 'inherit' ? classes.colorInherit : color !== 'default' && classes["".concat(variant).concat((0, _capitalize.default)(color))], size !== 'medium' && [classes["".concat(variant, "Size").concat((0, _capitalize.default)(size))], classes["size".concat((0, _capitalize.default)(size))]], disableElevation && classes.disableElevation, disabled && classes.disabled, fullWidth && classes.fullWidth),
+ component: component,
+ disabled: disabled,
+ focusRipple: !disableFocusRipple,
+ focusVisibleClassName: (0, _clsx.default)(classes.focusVisible, focusVisibleClassName),
+ ref: ref,
+ type: type
+ }, other), /*#__PURE__*/React.createElement("span", {
+ className: classes.label
+ }, startIcon, children, endIcon));
+});
+process.env.NODE_ENV !== "production" ? Button.propTypes = {
+ // ----------------------------- Warning --------------------------------
+ // | These PropTypes are generated from the TypeScript type definitions |
+ // | To update them edit the d.ts file and run "yarn proptypes" |
+ // ----------------------------------------------------------------------
+
+ /**
+ * The content of the button.
+ */
+ children: _propTypes.default.node,
+
+ /**
+ * Override or extend the styles applied to the component.
+ * See [CSS API](#css) below for more details.
+ */
+ classes: _propTypes.default.object,
+
+ /**
+ * @ignore
+ */
+ className: _propTypes.default.string,
+
+ /**
+ * The color of the component. It supports those theme colors that make sense for this component.
+ */
+ color: _propTypes.default.oneOf(['default', 'inherit', 'primary', 'secondary']),
+
+ /**
+ * The component used for the root node.
+ * Either a string to use a HTML element or a component.
+ */
+ component: _propTypes.default
+ /* @typescript-to-proptypes-ignore */
+ .elementType,
+
+ /**
+ * If `true`, the button will be disabled.
+ */
+ disabled: _propTypes.default.bool,
+
+ /**
+ * If `true`, no elevation is used.
+ */
+ disableElevation: _propTypes.default.bool,
+
+ /**
+ * If `true`, the keyboard focus ripple will be disabled.
+ */
+ disableFocusRipple: _propTypes.default.bool,
+
+ /**
+ * If `true`, the ripple effect will be disabled.
+ *
+ * ⚠️ Without a ripple there is no styling for :focus-visible by default. Be sure
+ * to highlight the element by applying separate styles with the `focusVisibleClassName`.
+ */
+ disableRipple: _propTypes.default.bool,
+
+ /**
+ * Element placed after the children.
+ */
+ endIcon: _propTypes.default.node,
+
+ /**
+ * @ignore
+ */
+ focusVisibleClassName: _propTypes.default.string,
+
+ /**
+ * If `true`, the button will take up the full width of its container.
+ */
+ fullWidth: _propTypes.default.bool,
+
+ /**
+ * The URL to link to when the button is clicked.
+ * If defined, an `a` element will be used as the root node.
+ */
+ href: _propTypes.default.string,
+
+ /**
+ * The size of the button.
+ * `small` is equivalent to the dense button styling.
+ */
+ size: _propTypes.default.oneOf(['large', 'medium', 'small']),
+
+ /**
+ * Element placed before the children.
+ */
+ startIcon: _propTypes.default.node,
+
+ /**
+ * @ignore
+ */
+ type: _propTypes.default.oneOfType([_propTypes.default.oneOf(['button', 'reset', 'submit']), _propTypes.default.string]),
+
+ /**
+ * The variant to use.
+ */
+ variant: _propTypes.default.oneOf(['contained', 'outlined', 'text'])
+} : void 0;
+
+var _default = (0, _withStyles.default)(styles, {
+ name: 'MuiButton'
+})(Button);
+
+exports.default = _default;
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/Button/index.d.ts b/node_modules/@material-ui/core/Button/index.d.ts
new file mode 100644
index 0000000000..d5d566838e
--- /dev/null
+++ b/node_modules/@material-ui/core/Button/index.d.ts
@@ -0,0 +1,2 @@
+export { default } from './Button';
+export * from './Button';
diff --git a/node_modules/@material-ui/core/Button/index.js b/node_modules/@material-ui/core/Button/index.js
new file mode 100644
index 0000000000..62c4078130
--- /dev/null
+++ b/node_modules/@material-ui/core/Button/index.js
@@ -0,0 +1,15 @@
+"use strict";
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+Object.defineProperty(exports, "default", {
+ enumerable: true,
+ get: function get() {
+ return _Button.default;
+ }
+});
+
+var _Button = _interopRequireDefault(require("./Button"));
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/Button/package.json b/node_modules/@material-ui/core/Button/package.json
new file mode 100644
index 0000000000..7fefb370a1
--- /dev/null
+++ b/node_modules/@material-ui/core/Button/package.json
@@ -0,0 +1,5 @@
+{
+ "sideEffects": false,
+ "module": "../esm/Button/index.js",
+ "typings": "./index.d.ts"
+}
\ No newline at end of file
diff --git a/node_modules/@material-ui/core/ButtonBase/ButtonBase.d.ts b/node_modules/@material-ui/core/ButtonBase/ButtonBase.d.ts
new file mode 100644
index 0000000000..abca5b994b
--- /dev/null
+++ b/node_modules/@material-ui/core/ButtonBase/ButtonBase.d.ts
@@ -0,0 +1,113 @@
+import * as React from 'react';
+import { TouchRippleProps } from './TouchRipple';
+import { OverrideProps, OverridableComponent, OverridableTypeMap } from '../OverridableComponent';
+
+export interface ButtonBaseTypeMap
{
+ props: P & {
+ /**
+ * A ref for imperative actions.
+ * It currently only supports `focusVisible()` action.
+ */
+ action?: React.Ref;
+ /**
+ * @ignore
+ *
+ * Use that prop to pass a ref to the native button component.
+ * @deprecated Use `ref` instead.
+ */
+ buttonRef?: React.Ref;
+ /**
+ * If `true`, the ripples will be centered.
+ * They won't start at the cursor interaction position.
+ */
+ centerRipple?: boolean;
+ /**
+ * The content of the component.
+ */
+ children?: React.ReactNode;
+ /**
+ * If `true`, the base button will be disabled.
+ */
+ disabled?: boolean;
+ /**
+ * If `true`, the ripple effect will be disabled.
+ *
+ * ⚠️ Without a ripple there is no styling for :focus-visible by default. Be sure
+ * to highlight the element by applying separate styles with the `focusVisibleClassName`.
+ */
+ disableRipple?: boolean;
+ /**
+ * If `true`, the touch ripple effect will be disabled.
+ */
+ disableTouchRipple?: boolean;
+ /**
+ * If `true`, the base button will have a keyboard focus ripple.
+ */
+ focusRipple?: boolean;
+ /**
+ * This prop can help a person know which element has the keyboard focus.
+ * The class name will be applied when the element gain the focus through a keyboard interaction.
+ * It's a polyfill for the [CSS :focus-visible selector](https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo).
+ * The rationale for using this feature [is explained here](https://github.com/WICG/focus-visible/blob/master/explainer.md).
+ * A [polyfill can be used](https://github.com/WICG/focus-visible) to apply a `focus-visible` class to other components
+ * if needed.
+ */
+ focusVisibleClassName?: string;
+ /**
+ * Callback fired when the component is focused with a keyboard.
+ * We trigger a `onFocus` callback too.
+ */
+ onFocusVisible?: React.FocusEventHandler;
+ // @types/react is stricter
+ tabIndex?: string | number;
+ /**
+ * Props applied to the `TouchRipple` element.
+ */
+ TouchRippleProps?: Partial;
+ };
+ defaultComponent: D;
+ classKey: ButtonBaseClassKey;
+}
+
+/**
+ * utility to create component types that inherit props from ButtonBase.
+ * This component has an additional overload if the `href` prop is set which
+ * can make extension quite tricky
+ */
+export interface ExtendButtonBaseTypeMap {
+ props: M['props'] & ButtonBaseTypeMap['props'];
+ defaultComponent: M['defaultComponent'];
+ classKey: M['classKey'];
+}
+
+export type ExtendButtonBase = ((
+ props: { href: string } & OverrideProps, 'a'>
+) => JSX.Element) &
+ OverridableComponent>;
+
+/**
+ * `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.
+ * Demos:
+ *
+ * - [Buttons](https://material-ui.com/components/buttons/)
+ *
+ * API:
+ *
+ * - [ButtonBase API](https://material-ui.com/api/button-base/)
+ */
+declare const ButtonBase: ExtendButtonBase;
+
+export type ButtonBaseProps<
+ D extends React.ElementType = ButtonBaseTypeMap['defaultComponent'],
+ P = {}
+> = OverrideProps, D>;
+
+export type ButtonBaseClassKey = 'root' | 'disabled' | 'focusVisible';
+
+export interface ButtonBaseActions {
+ focusVisible(): void;
+}
+
+export default ButtonBase;
diff --git a/node_modules/@material-ui/core/ButtonBase/ButtonBase.js b/node_modules/@material-ui/core/ButtonBase/ButtonBase.js
new file mode 100644
index 0000000000..94b4ac5366
--- /dev/null
+++ b/node_modules/@material-ui/core/ButtonBase/ButtonBase.js
@@ -0,0 +1,521 @@
+"use strict";
+
+var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
+
+var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = exports.styles = void 0;
+
+var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
+
+var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
+
+var React = _interopRequireWildcard(require("react"));
+
+var _propTypes = _interopRequireDefault(require("prop-types"));
+
+var ReactDOM = _interopRequireWildcard(require("react-dom"));
+
+var _clsx = _interopRequireDefault(require("clsx"));
+
+var _utils = require("@material-ui/utils");
+
+var _useForkRef = _interopRequireDefault(require("../utils/useForkRef"));
+
+var _useEventCallback = _interopRequireDefault(require("../utils/useEventCallback"));
+
+var _withStyles = _interopRequireDefault(require("../styles/withStyles"));
+
+var _useIsFocusVisible2 = _interopRequireDefault(require("../utils/useIsFocusVisible"));
+
+var _TouchRipple = _interopRequireDefault(require("./TouchRipple"));
+
+var 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 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.
+ */
+
+exports.styles = styles;
+var ButtonBase = /*#__PURE__*/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, _objectWithoutProperties2.default)(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 = React.useRef(null);
+
+ function getButtonNode() {
+ // #StrictMode ready
+ return ReactDOM.findDOMNode(buttonRef.current);
+ }
+
+ var rippleRef = React.useRef(null);
+
+ var _React$useState = React.useState(false),
+ focusVisible = _React$useState[0],
+ setFocusVisible = _React$useState[1];
+
+ if (disabled && focusVisible) {
+ setFocusVisible(false);
+ }
+
+ var _useIsFocusVisible = (0, _useIsFocusVisible2.default)(),
+ isFocusVisible = _useIsFocusVisible.isFocusVisible,
+ onBlurVisible = _useIsFocusVisible.onBlurVisible,
+ focusVisibleRef = _useIsFocusVisible.ref;
+
+ React.useImperativeHandle(action, function () {
+ return {
+ focusVisible: function focusVisible() {
+ setFocusVisible(true);
+ buttonRef.current.focus();
+ }
+ };
+ }, []);
+ 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 (0, _useEventCallback.default)(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 = (0, _useEventCallback.default)(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 = React.useRef(false);
+ var handleKeyDown = (0, _useEventCallback.default)(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 = (0, _useEventCallback.default)(function (event) {
+ // calling preventDefault in keyUp on a
+ ```
+
+- 🔐 Add support for Chrome autofill (#17436, #17552) @croraf
+- 💅 Adjust table styles to match spec (#17388) @kybarg
+- 💅 Adjust menu styles to match spec (#17332) @damir-sirola
+- 💅 Adjust chip styles to match spec (#17584) @oliviertassinari
+- And many more 🐛 bug fixes and 📚 improvements.
+
+### `@material-ui/core@v4.5.0`
+
+- [theme] Allow an arbitrary number of elevations (#17659) @millnitzluan
+- [ButtonGroup] Fix missing divider if background color is set (#17648) @neon98
+- [ButtonGroup] Support text variant (#17529) @Dhruvi16
+- [Button] Add startIcon / endIcon props (#17600) @mbrookes
+- [Button] Improve horizontal padding (#17640) @mbrookes
+- [Button] Increase elevation on hover when contained (#17537) @eps1lon
+- [CardMedia] Add separate rules for Image components (#17591) @neon98
+- [Chip] Update style to match the specification (#17584) @oliviertassinari
+- [InputBase] Fix remaining issues with Chrome autofill (#17552) @croraf
+- [MenuItem] Update size on desktop to match spec (#17332) @damir-sirola
+- [Menu] Fix menu being focused instead of item when opening (#17506) @eps1lon
+- [Menulist] Add autoFocusItem for initial focus control (#17571) @eps1lon
+- [SwipeableDrawer] Calculate transition duration based on swipe speed (#17533) @dan8f
+- [Table] Adjust table styles to the latest specs (#17388) @kybarg
+- [Tabs] Add new updateScrollButtonState() action (#17649) @neon98
+- [TextareaAutosize] Improve line computation and avoid infinite loop (#17652) @neon98
+
+### `@material-ui/lab@v4.0.0-alpha.28`
+
+- [Slider] Remove from the lab (#17528) @oliviertassinari
+
+ ```diff
+ -import { Slider } from '@material-ui/lab';
+ +import { Slider } from '@material-ui/core';
+ ```
+
+### `@material-ui/system@v4.5.0`
+
+- [system] Fix props being required from `style` function (#17534) @abukurov
+
+### `@material-ui/codemod@v4.5.0`
+
+- [styles] Bump jss dependencies to v10.0.0 stable (#17536) @eps1lon
+
+### `@material-ui/codemod@v4.5.0`
+
+- [codemod] Fix build importing esm version of babel/runtime (#17561) @merceyz
+
+### Docs
+
+- [docs] Batch small fixes (#17527) @oliviertassinari
+- [docs] Fix CHANGELOG format @oliviertassinari
+- [docs] Fix calculation of height for empty rows (#17657) @Teloah
+- [docs] Improve /styles vs /core/styles description (#16473) @bigtone1284
+- [docs] Improve CSP nonce docs (#17594) @johnnyreilly
+- [docs] Improve Contributing.md (#17597) @croraf
+- [docs] Improve bundle size option 2 advantage wording (#17577) @ilanbm
+- [docs] Improve testing readme (#17557) @eps1lon
+- [docs] Move GOVERNANCE.md and ROADMAP.md files from root (#17531) @croraf
+- [docs] Remove already moved SUPPORT.md file (#17525) @croraf
+- [docs] Remove an un-used className in template Blog (#17587) @FeynmanDNA
+- [docs] Reword icons page (#17558) @croraf
+- [examples] Fix CRA start script (#17598) @lychyi
+
+### Core
+
+- [core] Fix missing peer dependency warning (#17632) @eps1lon
+- [core] Re-export all the styles modules from core (#17419) @merceyz
+- [core] Warn if anchor element is not visible (#17599) @eAmin
+- [dependencies] Put dependabot config in vcs (#17651) @eps1lon
+- [test] Bump `@testing-library/dom` (#17573) @eps1lon
+- [test] Isolate each test case using testing-library (#17394) @eps1lon
+- [ci] Use azure aws tasks instead of aws-sdk (#17631) @eps1lon
+- [Select] Make internal tests public (#17538) @eps1lon
+
+## 4.4.3
+###### *Sep 22, 2019*
+
+Big thanks to the 23 contributors who made this release possible!
+This is a stability release.
+
+### `@material-ui/core@v4.4.3`
+
+- [TextField] Handle Chrome autofill (#17436) @croraf
+- [ButtonBase] Fix blurry text issue (#17453) @chibis0v
+- [CircularProgress] Fix centering (#17482) @fiws
+- [Chip] Load the right version of Avatar (#17469) @Maxim-Mazurok
+- [TablePagination] Merge root classes properly (#17467) @DavidHenri008
+- [Box] Fix demo item name (#17523) @Skaronator
+- [Breadcrumbs] Improve API docs (#17468) @eps1lon
+- [Menu] Isolate more integration tests (#17490) @eps1lon
+- [SelectInput] Use `@testing-library` for test (#17390) @eps1lon
+
+### `@material-ui/styles@v4.4.3`
+
+- [styles] Bump jss dependencies to 10.0.0-alpha.25 (#17520) @eps1lon
+- [core] Replace warning with manual console.error (#17404) @eps1lon
+
+### `@material-ui/lab@v4.0.0-alpha.27`
+
+- [TreeItem] Use the ‘endIcon’ prop where appropriate (#17488) @Chocolatl
+- [Skeleton] Make default CSS display mode to block (#17406) @ahtcx
+- [SpeedDial] Rework part of the logic (#17301) @hashwin
+
+### `@material-ui/icons@v4.4.3`
+
+- [docs] Update README.md
+
+### `@material-ui/system@v4.4.3`
+
+- [core] Replace warning with manual console.error (#17404) @eps1lon
+
+### Docs
+
+- [examples] Add a Gatsby Theme example (#17411) @hupe1980
+- [docs] Add a customization example with ToggleButton (#17401) @nrkroeker
+- [docs] Add a note in disabled tooltip (#17421) @konekoya
+- [docs] Add a support page (#17437) @oliviertassinari
+- [docs] Add demo for vertical dividers (#17457) @nrkroeker
+- [docs] Add synonyms for brand icons (#17455) @mbrookes
+- [docs] August Update (#17439) @oliviertassinari
+- [docs] Batch small changes (#17435) @oliviertassinari
+- [docs] CONTRIBUTING.md reword branch structure, remove Build, Yarn Link (#17501) @croraf
+- [docs] Clarify props spread for ListItem when button flag is set (#17466) @rossmmurray
+- [docs] Fix Popper demo link typo (#17522) @mbrookes
+- [docs] Fix a typo in CONTRIBUTING.md (#17400) @konekoya
+- [docs] Fix english language link (#17526) @croraf
+- [docs] Fix heading format in CONTRIBUTING.md (#17460) @paras151
+- [docs] Improve in-site search (#17450) @eps1lon
+- [docs] Improve the documentation covering react-router (#17343) @MelMacaluso
+- [docs] Move BACKERS.md file (#17508) @croraf
+- [docs] Remove Access to premium modules from the support page (#17489) @oliviertassinari
+- [docs] Spelling mistake (#17500) @jehuamanna
+- [docs] Update translations (#17509, #17438) @mbrookes
+- [docs] Use Button for language menu (#17487) @mbrookes
+- [docs] Use Suspense for lazy loading algolia (#17451) @eps1lon
+- [docs] Wrong URL for spacing in PT (#17502) @renatoagds
+
+### Core
+
+- [core] Prevent empty useEffect in production (#17420) @merceyz
+- [core] Replace warning with manual console.error (#17404) @eps1lon
+- [core] Warn when changing between controlled uncontrolled (#17422) @kmhigashioka
+
+## 4.4.2
+###### *Sep 11, 2019*
+
+Big thanks to the 7 contributors who made this release possible!
+This is a quick release after v4.4.1 to solve 3 regressions.
+
+### `@material-ui/core@v4.4.2`
+
+- [Grid] Remove lab import @oliviertassinari
+- [Radio] Add zIndex to SwitchBase (#17389) @andokai
+- [TextField] Fix incorrect focus handler types for FormControl (#17378) @eps1lon
+- [StepButton] Fix overlap with StepContent (#17374) @rossmmurray
+
+### Docs
+
+- [docs] Add material-ui-flat-pagination to related projects (#17372) @szmslab
+- [docs] Add tubular-react in related project (#17371) @geoperez
+- [docs] Add tubular-react to tables related projects (#17382) @geoperez
+- [docs] Fix color tool crash (#17380) @jsjain
+
+### Core
+
+- [core] Bump `@babel/*` deps (#17363) @eps1lon
+
+## 4.4.1
+###### *Sep 8, 2019*
+
+Big thanks to the 21 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 💄 Introduce 10 new brand icons and 61 new official Material Design icons (#17257, #17274) @colemars and @mbrookes.
+- ⚛️ Move a few descriptions of the props to TypeScript (#17300) @merceyz.
+ This change allows the IDEs to display the props' descriptions in place, without having to go to the documentation.
+- And many more 🐛 bug fixes and 📚 improvements.
+
+### `@material-ui/core@v4.4.1`
+
+- [Badge] Improve shape of 2 digit badge (#17247) @mbrookes
+- [Cars] Fix export issue for consistency (#17354) @yikkok-yong
+- [Modal] Support theme default props (#17337) @ianschmitz
+- [Rating] Fix a few issues (#17270) @oliviertassinari
+- [Select] Changes the default input based on variant prop (#17304) @netochaves
+- [Select] Follow spec with placement of dropdown icon (#17303) @lonssi
+- [Slider] Add getAriaLabel prop (#17240) @city41
+- [SvgIcon] Fix color type definition including default (#17288) @merceyz
+- [Table] Fix sticky header table with buttons/inputs (#17285) @Studio384
+- [TextareaAutosize] Show scrollbar when rowsMax is exceeded (#17310) @Shubhamchinda
+- [useMediaQuery] Workaround Safari wrong implementation of matchMedia (#17315) @momentpaul
+
+### `@material-ui/icons@v4.4.1`
+
+- [icons] Add social icons (#17274) @mbrookes
+- [icons] Refresh material icons (#17259) @colemars
+- [icons] Update script to use latest json file (#17257) @colemars
+
+### `@material-ui/styles@v4.4.1`
+
+- [styles] Fix global classnames being disabled in deserialized themes (#17345) @eps1lon
+- [styles] Support augmenting a default theme type (#16777) @merceyz
+
+### `@material-ui/lab@v4.0.0-alpha.26`
+
+- [lab] Generate proptypes from type definitions (#17300) @merceyz
+- [ToggleButton] Improve accessibility (#17290) @mbrookes
+- [ToggleButton] Update TypeScript class keys (#17278) @ljvanschie
+
+### Docs
+
+- [misc] Batch small changes (#17316) @oliviertassinari
+- [docs] Fix CHANGELOG.md (#17331) @skirunman
+- [docs] Add new synonyms for Material Icons (#17272) @mbrookes
+- [docs] Add script to merge MD icon tags with synonyms (#17312) @mbrookes
+- [docs] Batch small changes (#17268) @oliviertassinari
+- [docs] Fix more SEO issue report @oliviertassinari
+- [docs] Add typescript version of paperbase theme (#17213) @eps1lon
+- [docs] Improve /customization/typography/ (#17307) @meebix
+- [docs] Improve grammar in snackbars (#17296) @chaseholdren
+- [docs] Notification for v4.4.0 @oliviertassinari
+- [docs] Only server-side render the popular languages (#17249) @oliviertassinari
+- [docs] Reduce the use of "our", "We"... (#17347) @mbrookes
+- [docs] Remove section about modal performance (#17284) @eps1lon
+- [docs] Remove unnecessary any cast (#17292) @eps1lon
+- [docs] Remove wrong alternate languages (#17311) @oliviertassinari
+- [docs] Sync JavaScript version with TypeScript @oliviertassinari
+- [docs] Update translations (#17351) @mbrookes
+- [docs] Update translations.json (#17266) @mbrookes
+
+### Core
+
+- [core] Add ref type to every component (#17286) @eps1lon
+- [core] Fix typo contaniners -> containers (#17280) @charlax
+- [core] Fix various dependency issues (#17317) @eps1lon
+- [core] Generify props with component property (#16487) @ypresto
+- [core] Guard against bad Symbol polyfills (#17336) @briandelancey
+
+## 4.4.0
+###### *Aug 31, 2019*
+
+Big thanks to the 29 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- ✨ Add fixed Table header Support (#17139) @egerardus.
+- 🌳 Accept any label in TreeView (#17080) @oliviertassinari.
+- 🏝 Add standalone ToggleButton mode (#17187) @simshaun.
+- And many more 🐛 bug fixes and 📚 improvements.
+
+### `@material-ui/core@v4.4.0`
+
+- [Backdrop] Render children inside div (#17115) @dominictwlee
+- [Button] Fix typo in demo text (#17230) @jasonkylefrank
+- [Button] Remove code leftover from < v4 (#17232) @sakulstra
+- [ButtonGroup] Fix border color when disabled and contained (#17109) @ryanburr
+- [CardActionArea] Fix 'border-radius' (#17221) @stasiukanya
+- [CircularProgress] Document String format for size prop (#17081) @devsumanmdn
+- [Drawer] Include ref when variant=persistent (#17090) (#17091) @ZachStoltz
+- [Menu] Include 'list' in class key (#17205) @rbrishabh
+- [MenuItem] Add missing dense classkey (#17103) @JapuDCret
+- [Popover] Fix anchorEl positioning within popup window (#17128) @zekehernandez
+- [Popover] Fix update position action (#17097) @netochaves
+- [RadioGroup] Make value accept any (#17132) @cmeeren
+- [Slider] Avoid mutating user's value prop (#17085) @elmeerr
+- [Switch] Fix rendering in IE 11 and Safari (#17095) @rbrishabh
+- [Table] Add sticky header support (#17139) @egerardus
+- [TextField] Specs alignment (#17192) @elmeerr
+- [TextField] Update outlined label when prop changes (#17217) @Shubhamchinda
+- [Tooltip] Fix interactive + enterDelay combination (#17174) @kiransiluveru
+- [Typography] noWrap requires display block (#17206) @rbrishabh
+- [Badge] Add alignment options to badges (#17204) @ahtcx
+- [LinearProgress] Make color adapt to theme type (#17219) @ahtcx
+
+### `@material-ui/lab@v4.0.0-alpha.25`
+
+- [ToggleButton] Improve customizability (#17187) @simshaun
+- [TreeView] Support node label (#17080) @oliviertassinari
+- [Rating] Add Custom prop-type to prop name (#17078) @netochaves
+- [Rating] Improve signature in docs (#17093) @cmeeren
+
+### Docs
+
+- [docs] Better document the ref props in the API (#17198) @oliviertassinari
+- [docs] Fix edit dependencies extraction (#17120) @Shubhamchinda
+- [docs] Fix page rendering on Crowdin (#17135) @mbrookes
+- [docs] Fix popover demo event.target is null (#17104) @spaceexperiment
+- [docs] Fix typo in modal demo (#17122) @Shubhamchinda
+- [docs] Implement in-context translation (#17040) @mbrookes
+- [docs] Improve custom styles of the demos (#17118) @uxitten
+- [docs] Improve enhanced table variable name (#17141) @keiohtani
+- [docs] Improve style of the demos (#17218) @uxitten
+- [docs] Minor Update to remove "n°" notations (#17200) @skube
+- [docs] Missing degree/option symbol (#17189) @skube
+- [docs] New translations (#17134) @mbrookes
+- [docs] Remove unecessary createStyles in TypeScript Tabs demo (#17164) @Imballinst
+- [docs] Require less strict tsconfig (#17214) @eps1lon
+- [examples] Fix warning in next.js example (#17133) @Janpot
+- [examples] Fix warnings Container in _app.js with Next.js (#17181) @saltyshiomix
+
+## 4.3.3
+###### *Aug 21, 2019*
+
+Big thanks to the 22 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 🔍 Introduce a [material icons search](https://material-ui.com/components/material-icons/) (#16956).
+- And many more 🐛 bug fixes and 📚 improvements.
+
+### `@material-ui/core@v4.3.3`
+
+- [AppBar] Add back to top demo (#17062) @oliviertassinari
+- [CardHeader] Remove mention of children from API docs (#17045) @cmeeren
+- [Dialog] Add support for a Dialog without a DialogTitle (#16980) @megos
+- [Divider] Add vertical support (#17063) @oliviertassinari
+- [Grid] Better support custom theme spacing values (#17005) @Workvictor
+- [Modal] Add transition documentation (#17059) @oliviertassinari
+- [Select] Hide SVG icon for native multiple select (#16992) @craigmjackson
+- [Slider] Fix mouse enter edge case for Firefox (#16986) @Astrantia
+- [Slider] Hide mark labels to screen readers (#17024) @Patil2099
+- [Tabs] Fix issue where scrollable tabs auto move to selected tab (#16961) @wereHamster
+- [TextareaAutosize] Export component in barrel index.js (#17003) @Shubhamchinda
+- [TextareaAutosize] Update spelling in props (umber to number) (#16982) @melwyn001
+- [Tooltip] Fix word wrapping (#17020) @pranshuchittora
+- [Tooltip] Improve arrow demo (#17058) @Patil2099
+
+### `@material-ui/lab@v4.0.0-alpha.24`
+
+- [Rating] Improve rendering of arbitrary precision (#17013) @Patil2099
+- [TreeView] Lazy render the tree items (#17046) @Shubhamchinda
+- [Skeleton] Add missing exports from the barrel (#16960) @mejackreed
+
+### `@material-ui/styles@v4.3.3`
+
+- [styles] Better support right-to-left (#17019) @AminZibayi
+
+### Docs
+
+- [docs] Add Typescript example for switch label position (#16959) @nowNick
+- [docs] Adjust React + Material-UI + Firebase for v2.0 (#16988) @Phoqe
+- [docs] Improve instructions for Babel import plugins (#16993) @lookfirst
+- [docs] Make it easier to find material icons (#16956) @oliviertassinari
+- [docs] Add synonyms for Material icons (#17021) @mbrookes
+- [docs] Migration guide to v4: include change to dense Lists (#17074) @zekehernandez
+- [docs] Prefer SVG over font icons in the demos (#17056) @troussos
+- [docs] Small changes (#17060) @oliviertassinari
+- [example] Remove unused MuiLink declaration (#16991) @colemars
+
+### Core
+
+- [core] Classes to hooks (#17061) @oliviertassinari
+- [core] Upgrade the dependencies (#16990) @oliviertassinari
+- [core] yarn docs:export support for Windows (#17009) @vabole
+
+## 4.3.2
+###### *Aug 10, 2019*
+
+Big thanks to the 22 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 🦴 Introduce a new Skeleton component in the lab (#16786).
+- 📦 Reduce bundle size by -10%,-20% of the small helpers like useMediaQuery, Portal, and TextareaAutosize (#16842) @NMinhNguyen.
+- And many more 🐛 bug fixes and 📚 improvements.
+
+### `@material-ui/core@v4.3.2`
+
+- [Box] Forward props into cloned element (#16882) @RostyslavKravchenko
+- [ButtonGroup] Allow override of the variant prop (#16946) @nvwebd
+- [ButtonGroup] Separate button colors (#16876) @CyanoFresh
+- [CssBaseline] Add backdrop base styles (#16880) @yordis
+- [Fab] Accept FabProps in theme.props (#16877) @aditya1906
+- [FormControl] Warn if rendered mulitple inputs (#16923) @lemes
+- [Popper] Fix ScrollPlayground.js demo (#16948) @pinktig
+- [Slider] Update TypeScript demo to cast types to values (#16957) @allypally
+- [Stepper] Improve the description of the icon prop (#16916) @mbrookes
+- [TextField] How to leverage CSS input validation (#16903) @jonkelling
+- [Textfield] Add left property to prevent scrollbars on IE 11 (#16936) @beaudry
+- [ToggleButton] Fix horizontal shift (#16861) @wereHamster
+- [Transition] Forward isAppearing to onEnter, onEntering, onEntered (#16917) @millerrafi
+
+### `@material-ui/lab@v4.0.0-alpha.23`
+
+- [TreeView] Fix the height of the customization demo (#16874) @mbrookes
+- [Skeleton] New component (#16786) @oliviertassinari
+
+### `@material-ui/system@v4.3.3`
+
+- [system] Avoid `!important` in `borderColor` prop (#16875) @rogerclotet
+
+### Docs
+
+- [blog] July 2019 update (#16872) @oliviertassinari
+- [docs] Add Material-UI with React course in learning (#16869) @deekshasharma
+- [docs] Add error boundary to demos (#16871) @oliviertassinari
+- [docs] Add react compatibility in supported platforms (#16863) @pranshuchittora
+- [docs] Batch small changes (#16951) @oliviertassinari
+- [docs] Fix build on windows (#16870) @merceyz
+- [docs] Fix grammatical error in components docs (#16886) @Dasbachc
+- [docs] Hide header in DefaultTheme demo (#16937) @rogerclotet
+- [docs] Migrate WithTheme demo to Typescript (#16941) @rogerclotet
+- [docs] Batch small changes (#16864) @oliviertassinari
+- [docs] Batch small changes (#16883) @oliviertassinari
+
+### Core
+
+- [benchmark] Fix not running (#16900) @ypresto
+- [ci] Ignore dependabot branches (#16893) @eps1lon
+- [core] Generate PropTypes from type definitions (#16642) @merceyz
+- [core] Optimise destructuring for useState, useReducer (#16842) @NMinhNguyen
+- yarn docs:api @oliviertassinari
+
+## 4.3.1
+###### *Aug 03, 2019*
+
+Big thanks to the 18 contributors who made this release possible!
+
+### `@material-ui/core@v4.3.1`
+
+- [Container] Add missing class key to overrides interface (#16783) @Und3Rdo9
+- [Dialog] Test with testing-library (#16780) @eps1lon
+- [Grid] Add 'root' to GridClassKey typing (#16799) @hendrikskevin
+- [Modal] Fix Modal default open with disablePortal behavior (#16850) @lmuller18
+- [Popper] Fix handlePopperRefRef.current is not a function (#16807) @darkowic
+- [Radio][Switch][Checkbox] Document the `required` prop (#16809) @pranshuchittora
+- [Slider] Fix small typo (#16825) @ninjaPixel
+- [TextareaAutosize] Add missing export for TextareaAutosize (#16815) @tuxracer
+- [Tooltip] Fix tooltips's demo arrow dimensions (#16838) @fillipe-ramos
+- [Tooltip] Remove the title attribute when open (#16804) @jamesgeorge007
+- [Transition] Change the default behavior, 0ms duration if prop missing (#16839) @jamesgeorge007
+
+### `@material-ui/lab@v4.0.0-alpha.22`
+
+- [TreeView] Iterate on the component (#16814) @mbrookes
+- [TreeView] Add customization demo (#16785) @oliviertassinari
+
+### Docs
+
+- [docs] Add missing `(` to withStyle docs (#16816) @SneakyFish5
+- [docs] Fix typo in description of Slider (#16824) @LorenzHenk
+- [docs] Improve the issue template (#16836) @pranshuchittora
+- [docs] Link react-most-wanted (#16856) @TarikHuber
+- [docs] Migrate all public class component to function components (#16693) @bpas247
+- [docs] Small fix for box.md and migration.md (#16806) @DDDDDanica
+- [docs] Update `@material-ui/pickers` (#16823) @eps1lon
+
+## 4.3.0
+###### *July 28, 2019*
+
+Big thanks to the 23 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 🌳 Introduce a new Tree View component in the (#14827) @joshwooding.
+
+ This is a first step toward a feature rich tree view component.
+ We will keep iterate on it to add customization demos, filter, drag and drop, and checkboxes.
+ You can find the documentation under [this URL](https://material-ui.com/components/tree-view/).
+- 💄 Support vertical tabs (#16628) @josephpung.
+
+ You can learn more about it following [this URL](https://material-ui.com/components/tabs/#vertical-tabs).
+- 📚 Remove the prop-types from TypeScript demos (#16521) @merceyz.
+
+ The runtime prop-types are often redundant with the static type checks.
+ We have removed them from the TypeScript demos.
+- ⚛️ Add two codemods to improve the imports (#16192) @jedwards1211.
+
+ If you are not familiar with codemods, [check the library out](https://github.com/facebook/codemod). This is a tool tool to assist you with large-scale codebase refactors.
+ We introduce two new codemods in this release:
+
+ - `optimal-imports`: Material-UI supports tree shaking for modules at 1 level depth maximum.
+ You shouldn't import any module at a higher level depth.
+
+ ```diff
+ -import createMuiTheme from '@material-ui/core/styles/createMuiTheme';
+ +import { createMuiTheme } from '@material-ui/core/styles';
+ ```
+ - `top-level-imports`: Converts all @material-ui/core submodule imports to the root module.
+
+ ```diff
+ -import createMuiTheme from '@material-ui/core/styles/createMuiTheme';
+ +import { createMuiTheme } from '@material-ui/core';
+ ```
+
+- 💄 Support small switch (#16620) @darkowic.
+
+ You can learn more about it following [this URL](https://material-ui.com/components/switches/#sizes).
+- And many more 🐛 bug fixes and 📚 improvements.
+
+### `@material-ui/core@v4.3.0`
+
+- [FilledInput] Add hiddenLabel prop (#16671) @oliviertassinari
+- [Menu] Use strict mode compatible testing API (#16582) @eps1lon
+- [Modal] Fix focus not being contained (#16585) @eps1lon
+- [Modal] Prevent backdrop to stay open (#16694) @ValentinH
+- [Popper] Fix scroll jump when content contains autofocus input (#16740) (#16751) @alirezamirian
+- [Portal] Prepare deprecation of onRendered (#16597) @oliviertassinari
+- [SelectInput] Fix layout issue with displayEmpty (#16743) @ypresto
+- [Select] Implement WAI-ARIA dropdown without label (#16739) @eps1lon
+- [useMediaQuery] Improve useWidth demo (#16611) @siriwatknp
+- [Step] Add `completed` class key to TypeScript definitions (#16662) @pranshuchittora
+- [Stepper] Add cutomization example (#16769) @oliviertassinari
+- [Switch] Support small size (#16620) @darkowic
+- [Tabs] Improve accessibility (#16384) @mbrookes
+- [Tabs] Support vertical tabs (#16628) @josephpung
+- [TextField] Rename interface FormControl to FormControlState (#16748) @B3zo0
+- [TextareaAutosize] Fix infinite render loop (#16635) @oliviertassinari
+- [TextareaAutosize] Fix infinite render loop (#16708) @mcdougal
+
+### `@material-ui/lab@v4.0.0-alpha.21`
+
+- [TreeView] Add new component (#14827) @joshwooding
+
+### `@material-ui/styles@@4.3.0`
+
+- [styles] Add typings for font-face (#16639) @merceyz
+
+### `@material-ui/codemod@v4.3.0`
+
+- [codemod] Add codemods for optimal tree-shakeable imports (#16192) @jedwards1211
+
+### `@material-ui/system@v4.3.2`
+
+- [core] Import esm babel helpers (#16701) @TrySound
+
+### Docs
+
+- [docs] Add CSS to api for TextField (#16659) @m2mathew
+- [docs] Apply v1 redirection first @oliviertassinari
+- [docs] Batch changes (#16621) @oliviertassinari
+- [docs] Display correct version of Material-UI (#16680) @eps1lon
+- [docs] Document the global class names (#16770) @oliviertassinari
+- [docs] Fix SEO reported by Ahrefs (#16765) @oliviertassinari
+- [docs] Fix Typo in modal.md (#16744) @jeffshek
+- [docs] Fix dependabot badge (#16725) @eps1lon
+- [docs] Fix reset colors crashing app (#16750) @eps1lon
+- [docs] Fix typo in typography.md (#16654) @hexium310
+- [docs] Generate prop-types from TypeScript demos (#16521) @merceyz
+- [docs] Grammar fix for global class names docs (#16778) @joshwooding
+- [docs] Improve SEO (#16724) @oliviertassinari
+- [docs] Improve favicon (#16632) @oliviertassinari
+- [docs] Improve generated markdown (#16771) @merceyz
+- [docs] Link page layouts to premium themes (#16690) @mbrookes
+- [docs] Move dependencies/scripts from root into workspace (#16640) @eps1lon
+- [docs] Prevent password field blur when adornment clicked (#16672) @ee92
+- [docs] Redirects old v1.5.0 url to v1 subdomain (#16658) @m2mathew
+- [docs] Reduce bundle size (#16046) @eps1lon
+- [docs] Remove bbb from showcase (#16687) @mbrookes
+- [docs] Remove unused imports (#16623) @merceyz
+- [docs] Reword unsupported material components notes (#16660) @m2mathew
+- [docs] Solve docs 301 redirections (#16705) @oliviertassinari
+- [docs] Update translations (#16684) @mbrookes
+- [docs] Upgrade next to v9 (#16546) @eps1lon
+- [docs] Revert upgrade to next 9 (#16755) @eps1lon
+- [docs] Workaround to describe aria-sort (#16767) @mbrookes
+- [examples] Remove version next version from the description (#16678) @straxico
+
+## Core
+
+- [test] Fix empty visual rergression screenshots (#16702) @eps1lon
+- [test] Fix failing test_browser in edge (#16688) @eps1lon
+- [core] Batch changes (#16691) @oliviertassinari
+- [core] Batch small changes (#16766) @oliviertassinari
+- [core] Deduplicate packages (#16608) @merceyz
+- [core] Fix type definition for createMuiTheme SpacingOptions (#16624) @dominictwlee
+- [core] Import esm babel helpers (#16701) @TrySound
+- [core] Introduce dependabot (#16679) @eps1lon
+- [core] Remove old JSS v9 animationName property (#16779) @merceyz
+- [core] Upgrade babel-plugin-optimize-clsx (#16636) @merceyz
+- [core] Upgrade dependencies from yarn audit (#16625) @merceyz
+- [core] Upgrade jss (#16668) @TrySound
+- [core] Bump babel dependencies to latest (#16699) @eps1lon
+- [ci] Merge test_browser and test_production (#16731) @eps1lon
+- [ci] Use custom frozen lockfile check (#16677) @eps1lon
+
+## 4.2.1
+###### *July 17, 2019*
+
+Big thanks to the 25 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- ♿️ Improve Dialog header accessibility (#16576) @dayander.
+- ⚛️ Fix more strict mode warnings (#16525) @eps1lon.
+- 🐛 Fix menu dense support (#16510) @sumedhan.
+- ⭐️ Introduce a new Rating component in the lab.
+- And many more 🐛 bug fixes and 📚 improvements.
+
+### `@material-ui/core@v4.2.1`
+
+- [Autocomplete] Use placeholder prop (#16568) @himanshupathakpwd
+- [DialogTitle] Update default element from h6 to h2 (#16576) @dayander
+- [Grid] Generify props with component property (#16590) @JipingWang
+- [InputBase] Fix inconsistent filled state (#16526) @eps1lon
+- [InputBase] Improve documentation for custom `inputComponent` (#16399) @eps1lon
+- [Input] Add missing class keys in TypeScript (#16529) @dskiba
+- [MenuItem] Fix dense prop support (#16510) @sumedhan
+- [Modal] Use computed key to restore style (#16540) @neeschit
+- [Popper] Refactor to more commonly known react patterns (#16613) @eps1lon
+- [Ripple] Use custom transition logic (#16525) @eps1lon
+- [Slide] Remove gutter (#16533) @User195
+- [TouchRipple] Convert to function component (#16522) @joshwooding
+- [Transition] The ref forwarding works (#16531) @oliviertassinari
+- [useMediaQuery] Accept function as argument & more (#16343) @merceyz
+
+### `@material-ui/styles@v4.2.1`
+
+- [styles] Make theme optional for `styled` components (#16379) (#16478) @akomm
+- [core] Upgrade deepmerge (#16520) @TrySound
+
+### `@material-ui/system@v4.3.1`
+
+- [core] Upgrade deepmerge (#16520) @TrySound
+
+### `@material-ui/lab@v4.0.0-alpha.20`
+
+- [Rating] Add a new component (#16455) @oliviertassinari
+- [SpeedDialAction] Convert to hook (#16386) @adeelibr
+
+### Docs
+
+- [docs] Add density guide to customizations (#16410) @eps1lon
+- [docs] Add sidebar alias to Drawer demo description (#16535) @mbrookes
+- [docs] Fix dead link (#16567) @sharils
+- [docs] Fix typo (#16561) @siowyisheng
+- [docs] Fix typo in advanced styles guide (#16593) @elquimista
+- [docs] Fix typo: change lakes to lacks (#16553) @davinakano
+- [docs] Remove from nextjs-with-typescript example (#16555) @virzak
+- [docs] Remove duplicate alts (#16564) @williammalone
+- [docs] Update migration v3 guide, slider in core (#16589) @elquimista
+- [docs] Update typo in docs - portals (#16592) @siowyisheng
+- [docs] Use LinkProps from next in examples (#16583) @Janpot
+- [example] Fix "@zeit/next-typescript" dependency missing (#16603) @nb256
+- [examples] Update to support Next.js v9 (#16519) @Janpot
+- [blog] June 2019 Update (#16516) @oliviertassinari
+
+### Core
+
+- [core] Fix docs:typescript:check (#16607) @merceyz
+- [core] Fix incorrect usage of HtmlHTMLAttributes (#16579) @whitneyit
+- [core] Re-export missing typings (#16490) @merceyz
+- [core] Remove all .defaultProps usages (#16542) @joshwooding
+- [core] Restrict setRef usage to ref callback (#16539) @eps1lon
+- [core] Upgrade convert-css-length (#16530) @TrySound
+- [core] Upgrade deepmerge (#16520) @TrySound
+- [core] Use useFormControl instead of withFormControlState (#16503) @eps1lon
+- [core] Batch small changes (#16532) @oliviertassinari
+- [test] Run queries on document.body (#16538) @eps1lon
+- [test] react-test-renderer coverage (#16523) @dondi
+- [ci] Create canaries (#16587) @eps1lon
+
+## 4.2.0
+###### *July 6, 2019*
+
+Big thanks to the 24 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- ♿️ Fix the persisting aria-hidden logic of the Modal (#16392) @eps1lon.
+- 💄 Move the Slider component to the core (#16416).
+- 💄 Introduce a new TextareaAutosize component (#16362).
+- ⚛️ Migrate a few components to testing-library.
+- 🚀 Remove two dependencies (react-event-listener and debounce).
+- And many more 🐛 bug fixes and 📚 improvements.
+
+### `@material-ui/core@v4.2.0`
+
+- [Tabs] Use the correct window reference (#16497) @NMinhNguyen
+- [Breadcrumbs] Add li to BreadcrumbsClassKey type (#16425) @le0nik
+- [ButtonBase] Fix anchors with href having a button role (#16397) @eps1lon
+- [ButtonBase] Improve test coverage (#16361) @eps1lon
+- [CardMedia] Change prop requirements to conform html picture semantics (#16396) @maeertin
+- [ClickAwayListener] Don't miss any click away events (#16446) @NMinhNguyen
+- [FormControl] Add useFormControlState (#16467) @eps1lon
+- [ListItemIcon] Add margin to line up when using flex-start (#16398) @slim-hmidi
+- [ListItemSecondaryAction] Add missing types for props spread (#16411) @nsams
+- [MenuItem] Fix type deceleration not using MenuItemClassKey (#16358) @merceyz
+- [Menu] Fix autoFocus to work correctly with keepMounted (#16450) @ryancogswell
+- [Modal] Fix persisting aria-hidden (#16392) @eps1lon
+- [Modal] Make the modal demo style more "agnostic" (#16385) @oliviertassinari
+- [Select] Fix node reference (#16401) @ffjanhoeck
+- [Slider] Fix small step regression (#16395) @alitaheri
+- [Slider] Fix textAlign prop affecting Slider rail (#16440) @mohan-cao
+- [Slider] Move to core (#16416) @oliviertassinari
+- [Tabs] Migrate to hooks (#16427) @oliviertassinari
+- [TextareaAutosize] Fix one possible case of infinite render loop (#16387) @ZYinMD
+- [TextareaAutosize] New public component (#16362) @oliviertassinari
+- [Tooltip] Fix arrow demos (#16412) @Favna
+
+### `@material-ui/styles@v4.2.0`
+
+- [styles] Add test for removing styles via `overrides` (#16420) @eps1lon
+- [styles] Handle props of type any in styled (#16356) @merceyz
+- [styles] Support augmenting CSS properties (#16333) @merceyz
+
+### `@material-ui/lab@v4.0.0-alpha.19`
+
+- [Slider] Move to core (#16416) @oliviertassinari
+
+### Docs
+
+- [docs] Fix typo in TypeScript doc (#16365) @DDDDDanica
+- [docs] Add missing page title for translations (#16375) @jaironalves
+- [docs] Correct spelling imporant -> important (#16388) @rlfarman
+- [docs] Fix typo in customizing components (#16404) @YipinXiong
+- [docs] Fix typo in docs server (#16406) @thanasis00
+- [docs] Fixed link to Button API in FAQ (#16370) @kxlow
+- [docs] Improve example of Custom Pagination Actions Table (#16472) @bigtone1284
+- [docs] Minor improvements (#16423) @eps1lon
+- [docs] Reduce the headers font-size (#16433) @oliviertassinari
+- [docs] Remove compose helper (#16429) @oliviertassinari
+- [docs] Remove outdated references to the @next release (#16428) @davidoffyuy
+- [docs] Replace hardcoded content with translation (#16380) @eps1lon
+- [docs] Small ad information icon (#16438) @oliviertassinari
+- [docs] Update displayEmpty prop description in Select API docs (#16376) @bigtone1284
+- [docs] Update testing guide (#16368) @eps1lon
+- [docs] Use full text of the code of conduct (#16417) @mbrookes
+- [docs] [TableCell] Fix padding and size property descriptions (#16378) @the-question
+
+### Core
+
+- [test] Simpler createClientRender (#16461) @eps1lon
+- [ci] Move TypeScript tests into separate job (#16405) @eps1lon
+- [ci] Persist/Report only if previous steps succeeded (#16432) @eps1lon
+- [core] Improve test coverage (#16453) @eps1lon
+- [core] Speed-up typechecking (#16413) @merceyz
+
+## 4.1.3
+
+###### *June 25, 2019*
+
+Big thanks to the 4 contributors who made this release possible!
+This is a quick release after a regression that occurred in 4.1.2.
+
+### `@material-ui/core@v4.1.3`
+
+- [core] Revert strict mode compatible transition components (#16348) @eps1lon
+- [theme] Validate fontSize in createTypography (#16321) @merceyz
+
+### `@material-ui/lab@v4.0.0-alpha.18`
+
+- [Slider] Fix label contrast color (#16350) @oliviertassinari
+
+### Docs
+
+- [docs] Improve colors reliably (#16324) @oliviertassinari
+- [docs] Migrate batch of demos to hooks/typescript (#16334) @merceyz
+- [docs] Some fixes to the Link component page (#16345) @kyarik
+- [docs] Use latest size snapshot from master (#16342) @eps1lon
+
+## 4.1.2
+###### *June 23, 2019*
+
+Big thanks to the 30 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- ♿️ Fix Select and Menu keyboard behavior (#16323).
+- 🚀 Reduce the Modal bundle size by -22% (5 kB) (#15839, #16254, #16262).
+- 💄 Remove noise from the material.io generated icons (#16258).
+- ⚛️ Extend StrictMode compatiblity to 25 more components (#16283).
+- And many more 🐛 bug fixes and 📚 improvements.
+
+### `@material-ui/core@v4.1.2`
+
+- [ButtonBase] Fix dragging issue (#16250) @LukasMirbt
+- [Dialog] Prepare deprecation of withMobileDialog (#14992) @oliviertassinari
+- [Divider] Add aria role if it's not implicit (#16256) @eps1lon
+- [Grow][Zoom] Remove transform value when entered (#16297) @gijsbotje
+- [MenuList] Fix keyboard a11y when no item is focused when opening (#16323) @eps1lon
+- [Menu] Add missing `autoFocus` TypeScript types (#16289) @BassT
+- [Modal] Fix aria-hidden restore logic (#15839) @mackersD
+- [Modal] Migrate to hooks (#16254) @oliviertassinari
+- [Modal] Refactor tests to remove internal accesses (#16262) @oliviertassinari
+- [Select] Fix autowidth not working with open controlled (#16214) @jobpaardekooper
+- [Select] Fix display when no value is selected (#16294) @ianschmitz
+- [Select] Fix forward ref logic (#16296) @ffjanhoeck
+- [Select] Fix specificity issue (#16137) @aditya1906
+- [Slide] Remove the transform property once open (#16281) @gijsbotje
+- [Snackbar] Fix type definition of autoHideDuration prop (#16257) @brunomonteirosud
+- [TextField] Fix media hover specificity issue (#16266) @arminydy
+- [TextField] Reduce specificity of notchedOutline (#16304) @romanr
+- [Textarea] Update height when maxRows prop changes (#16298) @tasinet
+- [TouchRipple] Fix ripple staying on fast updates (#16291) @eps1lon
+
+### `@material-ui/icons@v4.2.1`
+
+- [icons] Remove noise from Google source (#16258) @oliviertassinari
+
+### `@material-ui/system@v4.3.0`
+
+- [system] Add support for marginX, marginY, paddingX, and paddingY (#16169) @dimitropoulos
+- [system] Add visibility property to display (#16231) @aditya1906
+
+### `@material-ui/lab@v4.0.0-alpha.17`
+
+- [Slider] Fix onChangeCommitted firing on mouseenter (#16329) @cdcasey
+- [Slider] Fix various tick mark issues (#16275) @eps1lon
+- [Slider] Mitigate floating point errors (#16252) @joaosilvalopes
+
+### `@material-ui/styles@v4.1.2`
+
+- [styles] Make StyleRules backwards compatible (#16200) @merceyz
+- [styles] Only run the check on the client-side (#16284) @oliviertassinari
+- [styles] Remove withTheme type from makeStyles options (#16217) @merceyz
+
+### Docs
+
+- [docs] Add docs for Overflow, TextOverflow, WhiteSpace (#16170) @aditya1906
+- [docs] Batch of fixes (#16229) @oliviertassinari
+- [docs] Better react-router-dom version comment (#16335) @kyarik
+- [docs] Convert SideEffects to hooks (#16197) @eps1lon
+- [docs] Fix IE 11 rendering issue on the pickers page (#16246) @oliviertassinari
+- [docs] Fix code example (#16279) @maslowproject
+- [docs] Fix links that point to the next branch (#16326) @Maxim-Mazurok
+- [docs] Fix outdated react-transition-group docs link (#16274) @eps1lon
+- [docs] Improve codevariant switch perf (#16211) @eps1lon
+- [docs] Include and explain value type change in migration guide (#16226) @eps1lon
+- [docs] Instapaper, fix contained+secondary button border (#16236) @patelnav
+- [docs] Material Sense is only using v3 (#16267) @josiahbryan
+- [docs] Migrate batch of demos to hooks/typescript (#16322) @merceyz
+- [docs] Remove import if there are no specifiers left (#16199) @merceyz
+- [docs] Fix a typo emooji -> emoji (#16286) @sabrinaluo
+- [example] Hooks are standards now, no need to mention it (#16288) @obedparla
+- [examples] Fix the styled-jsx integration of the Next.js examples (#16268) @lifeiscontent
+
+### Core
+
+- [types] Explicitly use react types (#16230) @kdy1
+- [test] Introduce @testing-library/react (#15732) @eps1lon
+- [core] Add MuiCardActionArea prop (#16235) @aditya1906
+- [core] Add missing MuiTableHead and MuiTableBody type to theme.props (#16220) @merceyz
+- [core] Add missing exports from styles in core (#16311) @fzaninotto
+- [core] Change <> to (#16225) @aditya1906
+- [core] Extend StrictMode compatiblity (#16283) @eps1lon
+- [core] Move size tracking to azure pipelines (#16182) @eps1lon
+- [core] Remove string from SpacingArgument in theme.spacing (#16290) @merceyz
+- [ci] Build packages in parallel for size snapshot (#16261) @eps1lon
+- [ci] Run azure on master (#16207) @eps1lon
+- [ci] Use sinon browser build (#16208) @eps1lon
+
+## 4.1.1
+###### *June 13, 2019*
+
+Big thanks to the 10 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 🐛 Fix react-hot-loader regression (#16195).
+- 🐛 Fix TypeScript icons regression (#16139) @MayhemYDG.
+- 🐛 Fix withWidth regression (#16196).
+- 💄 Add Slider range support (#15703).
+- And many more 📚 improvements.
+
+### `@material-ui/core@v4.1.1`
+
+- [ButtonBase] Fix riple not stoping on mouse up (#16142) @joaosilvalopes
+- [useMediaQuery] Defensive logic against matchMedia not available (#16196) @oliviertassinari
+- [Typography] Fix variantMapping rejecting partial type (#16187) @eps1lon
+
+### `@material-ui/styles@v4.1.1`
+
+- [styles] Fix react-hot-loader regression (#16195) @oliviertassinari
+
+### `@material-ui/icons@v4.2.0`
+
+- [icons] Fix generated index.d.ts (#16139) @MayhemYDG
+- [icons] Update and clean the icons (#16166) @oliviertassinari
+
+### `@material-ui/lab@v4.0.0-alpha.16`
+
+- [Slider] Support range (#15703) @oliviertassinari
+
+### `@material-ui/system@v4.2.0`
+
+- [system] Add overflow, textOverflow, whiteSpace properties (#16129) @aditya1906
+- [system] Add remaining flexbox properties (#16164) @aditya1906
+
+### Docs
+
+- [docs] Add 700 font weight support (#16141) @aditya1906
+- [docs] Change http to https part 2 (#16171) @aditya1906
+- [docs] Fix build on windows (#16154) @merceyz
+- [docs] Fix small typos in v3->v4 migration guide (#16174) @charlax
+- [docs] Improve the CssBaseline description (#16148) @levigunz
+- [docs] Lowercase text to demo text-transform (#16160) @blmoore
+- [docs] Pseudo-class: the style rules that require an increase of specificity (#16120) @oliviertassinari
+- [docs] Remove `CSS to MUI webpack Loader` (#16175) @sabrinaluo
+- [docs] import Omit Type from @material-ui/types (#16157) @aditya1906
+
+### Core
+
+- [core] Add TypeScript types for styled (#16133) @merceyz
+- [core] Fix withStyles not including props (#16134) @merceyz
+- [core] Fix yarn docs:api removing tags on windows (#16165) @merceyz
+- [core] Remove bootstrap v4-alpha (#16177) @aditya1906
+
+## 4.1.0
+###### *June 10, 2019*
+
+A big thanks to the 26 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 💄 A new ButtonGroup component (#15744) @mbrookes.
+- 💄 New system props (flex, fontStyle, letterSpacing, lineHeight) (#16045, #16109) @ljvanschie, @aditya1906.
+- 📚 Fix the documentation notification spam (#16070).
+- 💄 A new fontWeightBold typography theme value (#16036) @aditya1906.
+- 🚀 Reduce TypeScript compile time when using the icons (#16083) @phryneas.
+- And many more 🐛 bug fixes and 📚 improvements.
+
+### `@material-ui/core@v4.1.0`
+
+- [ButtonGroup] New component (#15744) @mbrookes
+- [TextField] Improve dense height to better match the specification (#16087) @Ritorna
+- [Popper] Add popperRef prop (#16069) @oliviertassinari
+- [theme] Add fontWeightBold to theme.typography (#16036) @aditya1906
+- [LinearProgress] Fix direction issue in RTL (#16009) @mkermani144
+- [Dialog] Fix double scroll issue (#16108) @williamsdyyz
+- [Popper] Fix anchorEl prop types (#16004) @dan8f
+- [Snackbar] Fix wrong event call (#16070) @oliviertassinari
+- [SwipeableDrawer] Convert to function component (#15947) @joshwooding
+- [Tab] Improve the textColor description (#16085) @sPaCeMoNk3yIam
+- [withWidth] Migrate to hooks (#15678) @jacobbogers
+
+### `@material-ui/system@v4.1.0`
+
+- [system] Add flex to FlexboxProps type definitions (#16045) @ljvanschie
+- [system] Add fontStyle, letterSpacing, lineHeight props (#16109) @aditya1906
+- [system] Fix breakpoints TypeScript types (#15720) @Kujawadl
+
+### `@material-ui/styles@v4.1.0`
+
+- [styles] Allow CSS properties to be functions (#15546) @merceyz
+- [styles] Fix styled type definition not including properties (#15548) @merceyz
+- [styles] Upgrade jss (#16121) @eps1lon
+
+### `@material-ui/icons@v4.1.0`
+
+- [icons] Simplify generated index.d.ts to reduce TS compile time (#16083) @phryneas
+
+### Docs
+
+- [blog] May 2019 Update (#16117) @oliviertassinari
+- [docs] Minor typo correction (#16115) @tonytino
+- [docs] Add AdaptingHook TypeScript demo (#16131) @merceyz
+- [docs] Add global override demos (#16067) @oliviertassinari
+- [docs] Add redirect for typography migration (#16077) @eps1lon
+- [docs] Add system example for prop + theme key (#16099) @peteruithoven
+- [docs] Batch of small fixes (#16061) @oliviertassinari
+- [docs] Bump material-table and @material-ui/pickers versions (#16039) @eps1lon
+- [docs] Change http to https (#16056) @aditya1906
+- [docs] Fix bundle doc typos (#16054) @DDDDDanica
+- [docs] Fix chip array removal (#16086) @joaosilvalopes
+- [docs] Fix grammar in migration doc (#16064) @DDDDDanica
+- [docs] Fix some warnings/regressions (#16106) @eps1lon
+- [docs] Fix spelling and usage of MuiCssBaseline (#16098) @tschaub
+- [docs] Fix typo in the Gatsby example (#16130) @bernardwang
+- [docs] Make demos linkable (#16063) @eps1lon
+- [docs] Migrate Popover demo to Hooks (#16074) @nikhilem
+- [docs] Migrate batch of demos to hooks/typescript (#16003) @merceyz
+- [docs] Move the themes to themes.material-ui.com (#15983) @oliviertassinari
+- [docs] Remove duplicate font icons instruction (#16066) @hubgit
+- [docs] Remove extraneous link to migration helper (#16082) @charlax
+- [docs] Remove unsupported textDense styles (#16057) @sadika9
+- [docs] Revert unreleased changes to the useMediaQuery API (#16127) @oliviertassinari
+- [docs] Update translations (#16125) @mbrookes
+- [docs] Upgrade notistack and migrate the demo to hooks (#16124) @merceyz
+- [docs] Use immediate export in MenuAppBar.js (#16032) @aditya1906
+- [docs] Use immediate export when there is no HOC part 2 (#16038) @merceyz
+
+### Core
+
+- [core] Fix incorrect typings for hexToRgb (#16059) @whitneyit
+- [core] Fix type definition for theme.spacing (#16031) @merceyz
+- [core] Remove direct type dependency to jss/csstype (#16071) @eps1lon
+- [core] Remove export of describeConformance (#16048) @eps1lon
+- [core] Use only up to second level path imports (#16002) @eps1lon
+- [test] Bump karma-webpack (#16119) @eps1lon
+
+## 4.0.2
+###### *June 3, 2019*
+
+A big thanks to the 30 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 🐛 A second stability release after the release of v4.0.0.
+- 💄 Add a new size="small" prop to the Chip component (#15751) @mbrookes.
+- 🐛 Fix three IE 11 issues (#15921, #15952, #15967) @eps1lon, @rupert-ong, @ryancogswell
+- And many more 📚 improvements.
+
+### `@material-ui/core@v4.0.2`
+
+- [Box] Fix prop-types and TypeScript warnings (#15884) @eps1lon
+- [Breadcrumbs] Add theme props and override TypeScript definitions (#15950) @chrislambe
+- [Chip] Add size prop for small option (#15751) @mbrookes
+- [Container] Document the classes API (#15919) @divyanshutomar
+- [Dialog] Improve scroll=body CSS logic (#15896) @DominikSerafin
+- [Link] Better support of component="button" (#15863) @ianschmitz
+- [Popover] Convert to function component (#15623) @joshwooding
+- [Portal] Synchronously call onRendered (#15943) @Arlevoy
+- [Radio] Fix dot misalignment in IE11 (#15952) @rupert-ong
+- [theme] Return default value for spacing when no args provided (#15891) @mbrookes
+- [TrapFocus] Fix error restoring focus when activeElement is null (#15967) @ryancogswell
+- [core] Export useMediaQuery & useScrollTrigger in index.js (#15958) @adeelibr
+- [core] Migrate extend ButtonBaseProps typings (#15869) @joshwooding
+
+### `@material-ui/styles@v4.0.2`
+
+- [styles] Remove warning when component with no displayName is provided (#15913) @eps1lon
+- [styles] Fix createStyles for TypeScript v3.5 (#15990) @merceyz
+
+### `@material-ui/system@v4.0.2`
+
+- [system] Fix typing for flexDirection prop (#15987) @rhmoller
+
+### `@material-ui/lab@v4.0.0-alpha.15`
+
+- [lab] Consume correct core utils in lab (#15995) @TrySound
+
+### `@material-ui/codemod@v4.0.2`
+
+- [codemod] Improve theme codemod to handle destructured theme.spacing (#15916) @sviande
+
+### Docs
+
+- [docs] Add React + Material-UI + Firebase as an example project (#15915) @Phoqe
+- [docs] Batch of fixes (#15996) @oliviertassinari
+- [docs] Fix a typo within pricing page layout example (#15978) @sdornan
+- [docs] Fix broken JSS links (#15972) @timkindberg
+- [docs] Fix most lighthouse a11y issues in input demos (#15780) @eps1lon
+- [docs] Fix typo (#15975) @rick-software
+- [docs] Fix wrong variable name (styles => useStyles) (#15908) @hiromoon
+- [docs] Icon TypeScript demos (#15965) @goldins
+- [docs] Improve dark mode (#15944) @eps1lon
+- [docs] Improve interactive performance (#15874) @eps1lon
+- [docs] Improve lighthouse a11y score in demos (#15901) @eps1lon
+- [docs] Mention Virtuoso as a possible virtualization integration (#15934) @petyosi
+- [docs] Migrate Grid demos to hooks (#15970) @merceyz
+- [docs] Migrate Hidden demos to hooks (#15989) @merceyz
+- [docs] SignIn -> SignUp typo (#15966) @Hatko
+- [docs] Update FUNDING.yml with Tidelift string (#15981) @jeffstern
+- [docs] Update the translations (#15991) @mbrookes
+- [docs] v4 Migration doc slight clean up (#15886) @mlenser
+- [example] Fix ssr example to work on Windows (#15949) @petervaldesii
+- [example] Fix theme palette value (#15977) @vaidehi27
+- [docs] Fix syntax error in v3 migration guide (#16010) @zhuangya
+- [docs] Use immediate export when there is no HOC (#16005) @merceyz
+
+### Core
+
+- [core] Add dependency react>=16.3.0 requested by @emotion/core and react-js (#15982) @marco-silva0000
+- [core] Fix IE 11 crashes related to Object.assign (#15921) @eps1lon
+- [core] Minor fixes (#15875) @joshwooding
+- [core] Remove export of internal test-utils (#15895) @eps1lon
+- [core] Update babel-plugin-optimize-clsx (#15894) @merceyz
+- [core] Upgrade rollup and related plugins (#15939) @merceyz
+- [ci] Move static tests into separate job (#15890) @eps1lon
+- [core] Upgrade dependencies with esm support (#16000) @TrySound
+
+## 4.0.1
+###### *May 27, 2019*
+
+A big thanks to the 23 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 🐛 A stability release after the release of v4.0.0.
+- 🤖 A new codemod to migrate the theme.spacing.unit API (#15782) @joshwooding.
+- 🐛 Fix IE 11 crash (#15856) @aditya1906.
+- 📚 Clean up the documentation after the next -> master migration.
+
+### `@material-ui/core@v4.0.1`
+
+- [Buttons] Consolidate ripple props type declarations (#15843) @lychyi
+- [IconButton] Add disable ripple props (#15864) @lychyi
+- [ListItemText] Update classes type definitions (#15822) @davjo664
+- [Tabs] Hide scrollbar on MacOS (#15762) @Umerbhat
+- [Tooltip] Fix alignment issues (#15811) @pkmnct
+- [styles] Add MuiLink to ComponentsPropsList (#15814) @stuartgrigg
+
+### `@material-ui/icons@v4.0.1`
+
+- [icons] Fix the TypeScript definition of createSvgIcon (#15861) @alexkirsz
+
+### `@material-ui/codemod@v4.0.1`
+
+- [codemod] Create spacing api codemod (#15782) @joshwooding
+
+### `@material-ui/styles@v4.0.1`
+
+- [styles] Fix Symbol() usage in IE11 (#15856) @aditya1906
+
+### `@material-ui/lab@v4.0.0-alpha.14`
+
+- [lab] Add missing clsx calls (#15809) @merceyz
+
+### Docs
+
+- [docs] Add SECURITY.md (#15804) @oliviertassinari
+- [docs] Add Transitions header in the dialogs page (#15847) @prasook-jain
+- [docs] Add extendedFab migration (#15866) @chanand
+- [docs] Add missing Breadcrumbs CSS API (#15813) @joshwooding
+- [docs] Correctly fix the Google Ad issue @oliviertassinari
+- [docs] Fix Boolan -> Boolean (#15880) @jaironalves
+- [docs] Fix Link import (#15871) @bennyn
+- [docs] Fix deploy command @oliviertassinari
+- [docs] Fix empty v4 blog post link (#15831) @drac
+- [docs] Fix typo in styles advanced guide (#15844) @mgvparas
+- [docs] Follow the documentation, my bad @oliviertassinari
+- [docs] Global at rule is called font-face (#15865) @aditya1906
+- [docs] Hide the Ad fallback to Google (#15815) @oliviertassinari
+- [docs] Improve SEO structure @oliviertassinari
+- [docs] Improve lighthouse performance score (#15758) @eps1lon
+- [docs] Let's take our time, we don't need to rush v5 (#15826) @oliviertassinari
+- [docs] Minor fixes (#15836) @mbrookes
+- [docs] Minor improvements to codesandbox demos and examples (#15857) @eps1lon
+- [docs] Move links to the master branch (#15830) @oliviertassinari
+- [docs] Redirect next.material-ui.com to material-ui.com (#15838) @mbrookes
+- [docs] Update Installation.md for v4.0.0 (#15818) @hinsxd
+- [docs] Update the translations (#15807) @mbrookes
+- [docs] Update the v4 blog post (#15862) @mbrookes
+- [docs] Update translations (#15841) @mbrookes
+- [docs] Use makeStyles from core in layout examples (#15845) @divyanshutomar
+- [docs] Fix typo in README (#15817) @ammaristotle
+- [example] Update gatsby-plugin-material-ui dependency (#15810) @hupe1980
+
+### Core
+
+- [core] Add cross-env to docs:size-why (#15816) @merceyz
+- [core] Change the top package name so we get the number of dependents packages @oliviertassinari
+- [core] Fix not appearing in github used/dependents (#15859) @eps1lon
+- [core] Prepare focus visible polyfill in ref phase (#15851) @eps1lon
+- [core] Remove babel-node for server/shared modules (#15764) @cvanem
+- [core] Remove dependency on workspace (#15849) @eps1lon
+- Create FUNDING.yml @oliviertassinari
+- [test] Remove FontAwesome from screenshot tests (#15853) @eps1lon
+
+## 4.0.0
+###### *May 23, 2019*
+
+[Material-UI v4 is out 🎉](https://medium.com/material-ui/material-ui-v4-is-out-4b7587d1e701)
+
+Some statistics with v4 compared to the release of v1 one year ago:
+
+- From 300k downloads/month to 2M downloads/month on npm
+- From 90k users/month to 350k users/month on the documentation
+
+### `@material-ui/lab@v4.0.0-alpha.13`
+
+- [ToggleButtonGroup] Added missing size prop to type declarations (#15785) @CoolCyberBrain
+
+### `@material-ui/system@v4.0.0`
+
+- [system] Add missing TypeScript types for flexbox and shadows (#15781) @willbamford
+
+### Docs
+
+- [docs] Add remaining TypeScript component demos (#15755) @eps1lon
+- [docs] Fix Nav components subsections to be open by default (#15749) @mbrookes
+- [docs] Fix some gramma in testing doc (#15776) @DDDDDanica
+- [docs] Fix some grammar in right to left guide (#15789) @DDDDDanica
+- [docs] Fix typo (#15792) @retyui
+- [docs] Material-UI v4 is out (#15766) @oliviertassinari
+- [docs] Reference the article with it's full name in icon doc (#15796) @DDDDDanica
+- [docs] Revert the marked change (#15797) @oliviertassinari
+
+### Core
+
+- [core] Change cssutils responsiveProperty unit type (#15783) @eddiemonge
+
+## 4.0.0-rc.0
+###### *May 20, 2019*
+
+A big thanks to the 17 contributors who made this release possible!
+
+We have done the very last breaking changes (nothing significant).
+The release of v4 is imminent, stay tuned!
+
+### `@material-ui/core@v4.0.0-rc.0`
+
+### Breaking changes
+
+- [ClickAwayListener] Fix scrollbar interaction (#15743) @Umerbhat
+
+ ```diff
+ -
+ +
+ ```
+
+ We recommend the default value since `mouseup` will be triggered by clicks
+ on scrollbars.
+
+- [Tabs] Hide scrollbar buttons when possible (#15676) @whitneymarkov
+
+ ```diff
+ -
+ +
+ ```
+
+- [Tabs] Remove deprecated fullWidth and scrollable props (#15670) @mbrookes
+
+ ```diff
+ -
+ +
+ ```
+
+### Changes
+
+- [ButtonBase] Convert to function component (#15716) @eps1lon
+- [CssBaseline] Fix wrong default font weight (#15747) @oliviertassinari
+- [InputBase] Convert to function component (#15446) @adeelibr
+- [Popups] Allow Element as anchor el (#15707) @eps1lon
+- [Portal] Fix disablePortal not working (#15701) @imdaveead
+- [Radio] Animate the check state change (#15671) @imdaveead
+- [Tabs] Remove deprecated fullWidth and scrollable props (#15670) @mbrookes
+- [Tabs] Update rendering of auto-scrollable buttons (#15676) @whitneymarkov
+- [Tabs] Update onChange docs to match types (#15672) @jharrilim
+- [ToggleButtonGroup] Add size prop (#15644) @isaacblinder
+
+### `@material-ui/icons@v4.0.0-rc.0`
+
+- [icons] Forward ref (#15683) @eps1lon
+
+### `@material-ui/lab@v4.0.0-alpha.12`
+
+- [SpeedDial] Convert to function component (#15737) @jeongsd
+
+### Docs
+
+- [docs] Add showcase criteria (#15686) @cvanem
+- [docs] Document if a component is StrictMode compatible (#15718) @eps1lon
+- [docs] Fix "enebles" typo on Palette page (#15719) @sbward
+- [docs] Fix a typo (#15709) @designorant
+- [docs] Fix Algolia top level duplication (#15738) @oliviertassinari
+- [docs] Fix typo and formatting in app-bar demo (#15723) @flying-sheep
+- [docs] Overhaul bundle size guide (#15739) @eps1lon
+- [docs] Persist the side nav scroll (#15704) @oliviertassinari
+- [docs] Port blog to next (#15711) @mbrookes
+- [docs] Simplify /related-projects (#15702) @pinturic
+- [docs] Use pickers from material-ui namespace (#15691) @eps1lon
+- [docs] Warn about ButtonBase#disableRipple and a11y (#15740) @eps1lon
+- [docs] Add ClickAwayListener breaking change (#15753) @eps1lon
+- [docs] Core a11y improvements (#15748) @eps1lon
+- [docs] Fix some apostrophe in TypeScript doc (#15757) @DDDDDanica
+
+### Core
+
+- [test] Colocate shadow root test for focus visible with implementation (#15712) @eps1lon
+- [test] Extend StrictMode tests (#15714) @eps1lon
+- [core] Add missing fontStyle type to TypographyStyle (#15733) @merceyz
+
+## 4.0.0-beta.2
+###### *May 13, 2019*
+
+A big thanks to the 13 contributors who made this release possible!
+
+This is a stability release preparing v4.
+
+### `@material-ui/core@v4.0.0-beta.2`
+
+- [Box] Add export to barrel (index.js) (#15602) @ljvanschie
+- [ButtonBase] Extend error message for invalid `component` prop (#15627) @eps1lon
+- [Select] Add to docs that options must be direct descendants (#15619) @bh1505
+- [SwipeableDrawer] Remove internal accesses in the tests (#15469) @joshwooding
+- [Tabs] scrollButtons have an empty button error in compliance tools (#15646) @elnikolinho
+- [useScrollTrigger] Enhance trigger, improve tests (#15634) @cvanem
+
+### `@material-ui/styles@v4.0.0-beta.2`
+
+- [styles] Fix warning false positive (#15595) @oliviertassinari
+- [styles] Keep MuiThemeProvider for backward compatibility (#15650) @oliviertassinari
+
+### `@material-ui/system@v4.0.0-beta.2`
+
+- [system] Fix css function rejecting certain prop types (#15611) @eps1lon
+
+### `@material-ui/lab@v4.0.0-alpha.11`
+
+- [SpeedDial] Fix classname override logic (#15652) @janhesters
+
+### Docs
+
+- [docs] Add custom default props handler (#15473) @eps1lon
+- [docs] Add next page link (#15656) @mbrookes
+- [docs] Add QuintoAndar in the showcase (#15622) @oliviertassinari
+- [docs] Fix dead David DM badges in README (#15667) @mbrookes
+- [docs] Fix few grammar issues (#15643) @DDDDDanica
+- [docs] Fix plural spelling (#15613) @cvanem
+- [docs] Fix some dev-only warnings (#15640) @eps1lon
+- [docs] Fix the adapting makeStyles based on props example syntax (#15621) @devarsh
+- [docs] Improve installation instructions for running the docs locally (#15608) @andreawaxman
+- [docs] Improve v3 migration guide (#15615) @eps1lon
+- [docs] Link edit page button to github editor (#15659) @mbrookes
+- [docs] Miscellaneous polish (#15665) @eps1lon
+- [docs] Reorganize the structure (#15603) @mbrookes
+- [docs] Update the translations (#15653) @mbrookes
+
+### Core
+
+- [core] Drop partial chrome 41 support (#15630) @eps1lon
+- [core] Optimize clsx usage (#15589) @merceyz
+- [core] Remove react-event-listener from function components (#15633) @joshwooding
+- [core] Upgrade the dev dependencies (#15590) @oliviertassinari
+
+## 4.0.0-beta.1
+###### *May 5, 2019*
+
+A big thanks to the 19 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 🐛 Many bug fixes based on people migrating from v3 to v4.
+- 💄 Responsive font sizes (#14573) @n-batalha.
+- 💄 AppBar scroll behavior (#15522) @cvanem.
+- ♿️ Better Button and Tooltip keyboard behavior (#15398, #15484) @eps1lon.
+- And many more 🔍 TypeScript fixes and 📚 documentation improvements.
+
+### `@material-ui/core@v4.0.0-beta.1`
+
+### Bug fixes / Breaking changes
+
+- [ListItem][ExpansionPanel] Follow the style convention (#15534) @oliviertassinari
+ Fix a CSS override issue.
+- [Tooltip] Display only on keyboard focus (#15398) @eps1lon
+ Fix an accessibility issue.
+
+### Changes
+
+- [AppBar] Hide and Elevate on Scroll (#15522) @cvanem
+- [Box] Add to core index TypeScript definitions (#15576) @ljvanschie
+- [ButtonBase] Use fork of focus-visible polyfill (#15484) @eps1lon
+- [Menu] Add 'variant' prop TypeScript declaration (#15556) @kunimart
+- [MenuList] Ignore disableListWrap for text focus navigation (#15555) @ryancogswell
+- [Portal] Migrate to React hooks (#15399) @gautam-pahuja
+- [TableCell] Fix TypeScript declaration of the 'padding' prop (#15516) @kunimart
+- [TableCell] Update TypeScript definitions (#15541) @ljvanschie
+- [TablePagination] Use OverridableComponent in TypeScript declarations (#15517) @kunimart
+- [Tabs] Fix aria-label issue on the demos (#15507) @amangalvedhekar
+- [theme] Responsive font sizes (#14573) @n-batalha
+- [Transition] Fix false-positive ref warning (#15526) @eps1lon
+- [Badge] Handle undefined badgeContent rendering empty bubble (#15581) @Naismith
+
+### `@material-ui/styles@v4.0.0-beta.1`
+
+- [styles] Create a new JSS instance with injectFirst (#15560) @oliviertassinari
+- [core] Set default theme type for makeStyles (#15549) @merceyz
+- [core] Set default theme type for useTheme (#15538) @merceyz
+
+### `@material-ui/types@v4.0.0-beta.2`
+
+- [types] Add @material-ui/types package (#15577) @eps1lon
+
+### `@material-ui/system@v4.0.0-beta.1`
+
+- [system] Test types (#15575) @eps1lon
+
+### `@material-ui/lab@v4.0.0-alpha.10`
+
+- [Slider] Save focus after click (#15439) @jztang
+
+### Docs
+
+- [example] Fix TypeScript compilation error (#15550) @emmtqg
+- [docs] Add DelayingApperance TypeScript demo (#15551) @merceyz
+- [docs] Convert react-autosuggest demo to TypeScript (#15485) @nareshbhatia
+- [docs] Document v4 theme.spacing.unit deprecation (#15571) @cvanem
+- [docs] Extract inherited component from test (#15562) @eps1lon
+- [docs] Fix Draggable Dialog interactions with the content (#15552) @devdanco
+- [docs] Fix outdated links & demos (#15521) @oliviertassinari
+- [docs] Fix typechecking (#15501) @merceyz
+- [docs] Fix typography demo in dark mode (#15591) @jztang
+- [docs] Improve v3 migration guide (#15527) @janhesters
+- [docs] Migrate more demos to hooks (#15494) @merceyz
+- [docs] Remove NoSsr where possible (#15510) @oliviertassinari
+- [docs] Simplify wording for customization demo descriptions (#15539) @mbrookes
+- [docs] Update Changelog (#15567) @oliviertassinari
+- [docs] Updated v3 Migration guide (#15518) @vkasraj
+
+### Core
+
+- [core] Add additional warnings when attaching ref to function elements (#15519) @eps1lon
+- [core] Add ref prop to transition components (#15520) @eps1lon
+- [core] Better handle theme.overrides pseudo-classes (#15578) @oliviertassinari
+- [core] Fix createStyles not being defined (#15547) @pvdstel
+
+## 4.0.0-beta.0
+###### *Apr 28, 2019*
+
+A big thanks to the 21 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- ♿️ Significantly improve the keyboard behavior of the menu (#15360, #15495) @ryancogswell.
+- 💅 Generate global class names (#15140) @oliviertassinari.
+- 📦 Add example integration with Preact (#15401).
+- 🔥 Continue the TypeScript and hook demos migration @merceyz, @bh1505, @donigianrp, @eluchsinger, @eps1lon, @lksilva.
+- 🎀 4 more core components migrated from Classes to Hooks @joshwooding.
+- 📦 Reduce the cost of using the Modal by -74% standalone (#15466).
+- And many more 🐛 bug fixes and 💄 improvements.
+
+The library has entered the beta phase of v4.
+We are grateful to all the contributors that have helped us so far.
+We will focus or effort on the stability of the library for the next two weeks.
+We don't plan more breaking changes, at the exception of changes that are required to fix bugs or that have minor impacts.
+We hope we can release v4 on May 15th, one year after v1.
+
+Please try the beta out! You can find an [upgrade guide](https://material-ui.com/guides/migration-v3/) to ease the transition.
+You will learn more about v4 in the final release blog post and our plans for the future.
+
+### `@material-ui/core@v4.0.0-beta.0`
+
+#### Breaking Changes
+
+- [styles] Generate global class names (#15140) @oliviertassinari
+ Remove the dangerouslyUseGlobalCSS options (makes it the default behavior).
+- [Modal] -74% bundle size reduction when used standalone (#15466) @oliviertassinari
+ Remove the classes customization API for the Modal component.
+- [core] Remove RootRef usage (#15347) @joshwooding
+ The Modal and Dialog child needs to be able to hold a ref.
+
+ ```diff
+ class Component extends React.Component {
+ render() {
+ return
+ }
+ }
+ -const MyComponent = props =>
+ +const MyComponent = React.forwardRef((props, ref) => );
+
+
+
+ ```
+
+- [ClickAwayListener] Hide react-event-listener (#15420) @oliviertassinari
+- [Slide] Convert to function component (#15344) @joshwooding
+ The child needs to be able to hold a ref.
+
+ ```diff
+ class Component extends React.Component {
+ render() {
+ return
+ }
+ }
+ -const MyComponent = props =>
+ +const MyComponent = React.forwardRef((props, ref) => );
+
+
+
+ ```
+
+#### Changes
+
+- [TextField] Update labelWidth for outline variant if required is updated (#15386) @dmiller9911
+- [Breadcrumbs] Fix types and enable component generic props (#15414) @Atralbus
+- [TextField] Pass rowsMin prop to underlying abstractions (#15411) @pachuka
+- [SelectInput] Convert to function component (#15410) @joshwooding
+- [Link] Improve TypeScript integration with react-router (#15412) @pachuka
+- [ButtonBase] Remove dead style (#15503) @koshea
+- [Menu] Improve performance and add support for variants (#15360) @ryancogswell
+- [MenuList] Add text keyboard focus navigation (#15495) @ryancogswell
+- [Modal] -74% bundle size reduction (#15466) @oliviertassinari
+- [Paper] Fix color inheritance issue using nested themes (#15465) @mustafahlvc
+- [Popper] Convert to function component (#15405) @joshwooding
+- [Radio][Checkbox] Revert breaking changes (#15483) @oliviertassinari
+- [Select] Display 0 as a valid value, fix a propType warning (#15468) @Princezhm
+- [Slider] Add Customized Slider Demo (#15478) @bh1505
+- [Snackbar] Convert to function component (#15504) @adeelibr
+- [Textarea] Fix cursor jump (#15436) @oliviertassinari
+- [Textarea] Remove rowsMin prop (#15430) @pachuka
+
+### `@material-ui/styles@v4.0.0-beta.0`
+
+- [styles] Add type test for withStyles + ref (#15383) @eps1lon
+- [styles] Warn if @material-ui/styles is duplicated (#15422) @oliviertassinari
+- [styles] Generate global class names (#15140) @oliviertassinari
+
+### Docs
+
+- [docs] Add Button + react-router TypeScript demo (#15382) @eps1lon
+- [docs] Add CustomizedSwitches TypeScript demo (#15424) @donigianrp
+- [docs] Add Interactive List TypeScript demos (#15416) @lksilva
+- [docs] Add Nested List and Switch List Secondary TypeScript demos (#15493) @bh1505
+- [docs] Add ref vs dom node prop explanation (#15458) @eps1lon
+- [docs] Add Selected List Item to TypeScript demos (#15417) @lksilva
+- [docs] Add SkipNav (#15409) @mbrookes
+- [docs] Add some Selection-Controls TypeScript demos (#15408) @bh1505
+- [docs] Add switches TypeScript demo (#15384) @JarkEMones
+- [docs] Add TypeScript demo for hook+props based styling (#15459) @eps1lon
+- [docs] Document Tooltip breaking changes (#15403) @joshwooding
+- [docs] Fix modal demo jumping on cursor move (#15462) @eps1lon
+- [docs] Improve CSS Grid documentation (#15477) @dmwyatt
+- [docs] Improved demo transpiling (#15438) @merceyz
+- [docs] material-table demo: persist the changes (#15392) @mbrn
+- [docs] Migrate Divider demos to hooks (#15490) @merceyz
+- [docs] Migrate Drawer demos to hooks (#15487) @merceyz
+- [docs] Migrate List demos to hooks (#15488) @merceyz
+- [docs] Migrate Paper demos to hooks (#15489) @merceyz
+- [docs] Migrate picker demos to hooks (#15390) @merceyz
+- [docs] Migrate Table demos to hooks (#15486) @merceyz
+- [docs] Migrate TextField demos to hooks (#15434) @merceyz
+- [docs] Remove unused imports and declarations (#15479) @merceyz
+- [docs] Separate out selection controls to own pages (#15427) @mbrookes
+- [docs] Small grammar fix for Menu (#15475) @mbrookes
+- [docs] Transfer List TypeScript Demo (#15419) @eluchsinger
+- [example] Add preact-next example (#15401) @oliviertassinari
+- [example] Fix gatsby-next (#15406) @TheHolyWaffle
+
+### Core
+
+- [core] Fix the CI fail (#15428) @oliviertassinari
+- [ci] Fail when demos are only available in TS (#15460) @eps1lon
+- [core] Fix useLayoutEffect warnings on the server (#15463) @eps1lon
+- [core] Minor nitpicks (#15432) @joshwooding
+- [core] Use terser for minification in umd bundle (#15491) @eps1lon
+- [test] Conform components forward ref to root component (#15425) @eps1lon
+- [test] Fix a flaky test (#15445) @oliviertassinari
+- [test] Keep track of the bundle size of TrapFocus (#15453) @oliviertassinari
+
+## 4.0.0-alpha.8
+###### *Apr 17, 2019*
+
+A big thanks to the 27 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 🔥 Many new TypeScript & hook demos @donigianrp, @sperry94, @jasondashwang, @cahilfoley, @bh1505 and @kenzhemir
+- 🎀 5 more core components migrated from Classes to Hooks @joshwooding, @oliviertassiari.
+- 📐 Update the List to better match the Material Design specification.
+- 🎁 Add new TransferList component @mbrookes.
+- And many more 🐛 bug fixes and 💄 improvements.
+
+We hope the next release can be 4.0.0-beta.0.
+Here are the last breaking changes we want to introduce:
+
+- Remove the `dangerouslyUseGlobalCSS` option (make it the default behavior) (#15140)
+- Require the Slide and Modal child element to be able to hold a ref (#15344, #15347)
+- Hide the EventListener dependency of ClickAwayListener (#15126)
+
+We have done a lot of changes in the alpha phase.
+The beta phase will be used to stabilize the library, we might have introduced bugs.
+We will encourage people to try the beta out. We hope the migration will be smooth [with the upgrade guide](https://material-ui.com/guides/migration-v3/).
+
+We hope 2-3 weeks of beta will be enough. We plan on releasing v4 stable in May.
+
+### `@material-ui/core@v4.0.0-alpha.8`
+
+#### Breaking Changes
+
+- [Paper] Reduce the default elevation (#15243) @oliviertassinari
+ Change the default Paper elevation to match the Card and the Expansion Panel:
+
+ ```diff
+ -
+ +
+ ```
+
+- [List] Update to match the specification (#15339) @oliviertassinari
+ Rework the list components to match the specification:
+
+ - The usage of the `ListItemAvatar` component is required when using an avatar
+ - The usage of the `ListItemIcon` component is required when using a left checkbox
+ - The `edge` property should be set on the icon buttons.
+
+- [actions] Rename disableActionSpacing to disableSpacing (#15355) @oliviertassinari
+
+ - [CardActions] Rename the `disableActionSpacing` prop `disableSpacing`.
+ - [CardActions] Remove the `disableActionSpacing` CSS class.
+ - [CardActions] Rename the `action` CSS class `spacing`.
+ - [DialogActions] Rename the `disableActionSpacing` prop `disableSpacing`.
+ - [DialogActions] Rename the `action` CSS class `spacing`.
+ - [ExpansionPanelActions] Rename the `action` CSS class `spacing`.
+
+- [Tooltip] Convert to function component (#15291) @joshwooding
+ The child of the `Tooltip` needs to be able to hold a ref
+
+ ```diff
+ class Component extends React.Component {
+ render() {
+ return
+ }
+ }
+ -const MyComponent = props =>
+ +const MyComponent = React.forwardRef((props, ref) => );
+
+
+
+ ```
+
+#### Changes
+
+- [ScrollbarSize] Convert to function component (#15233) @joshwooding
+- [InputBase] Fix placeholder bug in Edge (#15267) @rodrigolabs
+- [TransferList] Add new component (#15232) @mbrookes
+- [withMobileDialog] Improve types (#15276) @eps1lon
+- [Collapse] Convert to function component (#15248) @joshwooding
+- [DialogContent] Add divider prop type for TypeScript (#15273) @sperry94
+- [Tab] Remove outdated classes from the definitions (#15297) @zheeeng
+- [Tooltip] Suppress disabled button warning when controlled (#15304) @tasinet
+- [typescript] Generic props for FormControl, FormLabel, List (#15292)
+- [Select] Fix incorrect event.target type in onChange (#15272) @sperry94
+- [Popper] Fix to defer setting of exited state to Transition component (#15250) @Sharakai
+- [Modal] Fix to defer setting of exited state to Transition component (#15266) @Sharakai
+- [InputBase] Fix onFilled/onEmpty being called during render (#15319) @eps1lon
+- [Tooltip] Convert to function component (#15291) @joshwooding
+- [Ripple] Convert to function component (#15345) @joshwooding
+- [Textarea] Refactor the implementation (#15331) @oliviertassinari
+- [Modal] Add reason parameter to onClose function signature (#15373) @JarkEMones
+- [Box] Test props to attributes forwarding (#15365) @eps1lon
+- [Container] Add component prop for TypeScript (#15369) @Amere
+- [Popper] Fix popperOptions prop (#15359) @jaipe
+
+### `@material-ui/styles@v4.0.0-alpha.8`
+
+- Fix dependency duplication issue @oliviertassinari
+- [styles] Improve typings for makeStyles (#15366) @geirsagberg
+
+### `@material-ui/system@v4.0.0-alpha.8`
+
+- [system] Add types (#15357) @eps1lon
+
+### `@material-ui/docs@v4.0.0-alpha.8`
+
+- [NProgressBar] Add types (#15380) @eps1lon
+
+### Docs
+
+- [docs] Fix layout glitch when changing sort-by in showcases (#15255) @thomasnordquist
+- [docs] Add Checkbox TypeScript demo (#15222) @donigianrp
+- [docs] Add CheckboxLabel TypeScript demo (#15237) @donigianrp
+- [docs] Adding Most Stepper TypeScript Demos (#15223) @sperry94
+- [docs] Add CustomInputBase TypeScript demo (#15209) @jasondashwang
+- [docs] Add most Drawer TypeScript demos (#15119) @cahilfoley
+- [docs] Slight grammar changes to color.md (#15257) @raybooysen
+- [docs] Document sharing makeStyles between components (#15234) @johnraz
+- [docs] Improve the @material-ui/styles documentation (#15236) @oliviertassinari
+- [docs] Add CheckboxesGroup TypeScript demo (#15228) @donigianrp
+- [docs] Delete legacy lab/layout (#15285) @mbrookes
+- [docs] Proof the Styles section (#15268) @mbrookes
+- [docs] Enable react profiling in production (#15282) @eps1lon
+- [docs] Improve table demos (#15281) @eps1lon
+- [docs] Add ClippedDrawer TypeScript demo (#15284) @cahilfoley
+- [docs] Add most Dialog TypeScript demos (#15271) @sperry94
+- [docs] Who's using Material-UI? (#15301) @mbrookes
+- [examples] Fix HTML end tag (#15293) @raybooysen
+- [docs] Update version filter (#15307) @mbrookes
+- [docs] Removed styled-components in gatsby-next dependencies (#15313) @tatchi
+- [docs] Improve ServerStyleSheets documentation (#15287) @raymondsze
+- [docs] Add Select TypeScript demos (#15288) @cahilfoley
+- [docs] Fix placeholder position in react-select demo (#15332) @merceyz
+- [docs] Add some List TypeScript demos (#15323) @bh1505
+- [docs] Disable the table of content on a few pages (#15338) @oliviertassinari
+- [docs] Document ref forwarding (requirements) (#15298) @eps1lon
+- [example] Add Reason example (#15340) @Tevinthuku
+- [docs] Migrate docs' breadcrumbs page to hooks (#15349) @kenzhemir
+- [docs] Provide a definition to root element and component (#15337) @oliviertassinari
+- [docs] update FAQ doc (#15356) @gautam-pahuja
+- [docs] Expand demo by default instead of duplicating the code (#15364) @eps1lon
+- [docs] Promote material-table (#15367) @oliviertassinari
+- [docs] Improve the customization demos (#15368) @oliviertassinari
+- [docs] Use tsx syntax highlighting (#15385) @eps1lon
+
+### Core
+
+- [core] Allow docs:dev access over local network (#15259) @eps1lon
+- [core] Type ref for components (#15199) @eps1lon
+- [core] Dedupe lockfile (#15260) @eps1lon
+- [core] Ref cleanup (#15261) @eps1lon
+- [test] Add undesired withStyles + generic props component behavior (#15215) @eps1lon
+- [Transition] Update transition tests (#15249) @joshwooding
+- [core] Switch from buttonRef to ref usage (#15296) @eps1lon
+- [core] Synchronise value and checked prop typing (#15245) @joshwooding
+- [test] Use skip instead of testComponentPropWith: false (#15309) @eps1lon
+- [core] Reduce calls to actions props (#15312) @eps1lon
+- [test] Use actual React.memo (#15321) @eps1lon
+- [core] Add `strict` option to createMount (#15317) @eps1lon
+- [core] Use implicit children spread (#15354) @oliviertassinari
+- [core] Reduce calls to actions prop (#15370) @eps1lon
+- [core] Upgrade react-transition-group (#15375) @eps1lon
+- [test] Add missing styles tests (#15376) @ellisio
+- [test] Add hoc + overrideable component workaround (#15381) @ellisio
+- [utils] Fix lazy and memo components issuing forward ref warnings (#15322) @eps1lon
+
+## 4.0.0-alpha.7
+###### *Apr 8, 2019*
+
+A big thanks to the 24 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 🔥 Many new TypeScript & hook demos @Dudrie, @jasondashwang, @sperry94, @Adherentman, @gabrielgene and @Tevinthuku
+- 🎀 6 more core components migrated from Classes to Hooks @joshwooding.
+- 📐 Update the selection controls and Snackbar to better match the Material Design specification.
+- And many more 🐛 bug fixes and 💄 improvements.
+
+### `@material-ui/core@v4.0.0-alpha.7`
+
+#### Breaking Changes
+
+- [Switch][Radio][Checkbox] Improve specification compliance (#15097) @oliviertassinari
+
+ Refactore the implementation to make it easier to override the styles.
+ Rename the class names to match the specification wording:
+
+ ```diff
+ -icon
+ -bar
+ +thumb
+ +track
+ ```
+
+- [Snackbar] Match the new specification (#15122) @oliviertassinari
+
+ - Change the dimensions
+ - Change the default transition to from `Slide` to `Grow`.
+
+- [TextField] Fix height inconsistency (#15217) @gautam-relayr
+
+ Remove the `inputType` class from `InputBase`.
+
+#### Changes
+
+- [Box] Add remaining props to type declaration (#15101) @iamsoorena
+- [theme] Prepare the deprecation of theme.mixins.gutters (#15124) @oliviertassinari
+- [Switch] Add demo for labels on both sides (#14900) @s7dhansh
+- [Zoom] Convert to function component (#15133) @joshwooding
+- [Tab] Remove internal indicator prop types (#15143) @sperry94
+- [Grid] Add root class (#15163) @eps1lon
+- [Grow] Convert to function component (#15134) @joshwooding
+- [CardMedia] Move object-fit to the core (#15166) @gebigoma
+- [core] Forward ref in Collapse, Popper and SwipeableDrawer (#15170) @eps1lon
+- [Popover] Fix the warning when anchorReference="anchorPosition" (#15182) @xaviergonz
+- [styles] Fix getLuminance for hsl (#14391) @strayiker
+- [Select] Trigger the open callbacks even when uncontrolled (#15176) @rreznichenko
+- [Popover] Add warning when non-ref-holding component is used in Paper (#15181) @eps1lon
+- [TablePaginationActions] Convert to function component (#15189) @joshwooding
+- [TextField] Add links to Input and Select (#15148) @MrHen
+- [CardMedia] Allow generic component in TypeScript (#15098) @Domino987
+- [Button] Improve types with regard to react-router (#15193) @eps1lon
+- [NoSsr] Convert to function component (#15167) @joshwooding
+- [ClickAwayListener] Remove findDOMNode usage (#15179) @eps1lon
+- [FormControl] Convert to function component (#15208) @joshwooding
+- [SwitchBase] Convert to function component (#15188) @joshwooding
+
+### `@material-ui/styles@v4.0.0-alpha.7`
+
+- [styles] Fix types of ServerStyleSheets.collect (#15156) @evenchange4
+- [styles] Add injectFirst to StylesOptions interface (#15192) @stefanorie
+- [styles] Memoize theme to prevent re-rendering (#15201) @jhrdina
+
+### Docs
+
+- [docs] SimplePortal example using Hooks (#15125) @ralvs
+- [example] Simplify ssr examples (#15127) @oliviertassinari
+- [docs] Add Grid List TypeScript demos (#15118) @Dudrie
+- [docs] Polish Snackbar demos (#15129) @eps1lon
+- [docs] More Table TypeScript demos (#15086) @jasondashwang
+- [docs] Add most Progress TypeScript demos (#15104) @sperry94
+- [docs] Flatten /layout/layout (#15120) @oliviertassinari
+- [docs] Migrate docs' App Bar page to hooks (#15121) @gabrielgene
+- [docs] Migrate docs' Tooltips page to hooks (#15137) @gabrielgene
+- [docs] Use Date type instead of any for MUI pickers demo (#15144) @gabrielgene
+- [docs] Add virtualized List example (#15149) @joshwooding
+- [docs] Update Style Library Interoperability + Container forwardRef (#15147) @oliviertassinari
+- [docs] Run the TypeScript demos (#15159) @oliviertassinari
+- [docs] Add Breadcrumbs TypeScript demos (#15139) @Adherentman
+- [docs] Fix anchor link (#15174) @eps1lon
+- [docs] Convert customized select component to use hooks (#15177) @Tevinthuku
+- [docs] Add ExpansionPanels TypeScript Demo (#15162) @Adherentman
+- [docs] Add ref forwarding to API docs (#15135) @eps1lon
+- [docs] Add ImgMediaCard TypeScript demo (#15130) @jasondashwang
+- [docs] Link 'React Material-UI Cookbook' (#15211) @oliviertassinari
+- [docs] Fix the docs in dev mode for IE 11 (#15230) @oliviertassinari
+- [docs] New translations (#15235) @mbrookes
+- [examples] Update all the examples + page layout examples (#15219) @nareshbhatia
+- [docs] Tidy up moved / deleted translations and update the Crowdin config (#15247) @mbrookes
+
+### Core
+
+- [test] Forward ref behavior (#15131) @eps1lon
+- [core] Use explicit html entity (#15132) @eps1lon
+- [test] Decouple root class from root component (#15168) @eps1lon
+- [core] Polish `type` type of button related components (#15158) @eps1lon
+- [DialogContentText] Test conformance (#15206) @eps1lon
+
+## 4.0.0-alpha.6
+###### *Mar 30, 2019*
+
+A big thanks to the 20 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 🔥 Many new TypeScript & hook demos @eluchsinger, @sperry94, @Dudrie.
+- 🎀 5 more core components migrated from Classes to Hooks @joshwooding.
+- ⚛️ A simpler server-side rendering API (#15030).
+- 💅 Better typography defaults (#15100) @oliviertassinari
+- And many more 🐛 bug fixes and 💄 improvements.
+
+### `@material-ui/core@v4.0.0-alpha.6`
+
+#### Breaking Changes
+
+- [Typography] Better defaults (#15100) @oliviertassinari
+
+ - Change the default variant from `body2` to `body1`.
+ A font size of 16px is a better default than 14px.
+ Bootstrap, material.io or even our documentation use 16px as a default font size.
+ 14px like Ant Design is understandable as Chinese users have a different alphabet.
+ We document 12px as the default font size for Japanese.
+ - Remove the default color from the typography variants.
+ The color should inherit most of the time. It's the default behavior of the web.
+ - Rename `color="default"` to `color="initial"` following the logic of #13028.
+ The usage of *default* should be avoided, it lakes semantic.
+
+- [Container] Move to the core (#15062) @oliviertassinari
+
+#### Changes
+
+- [Box] Use the default theme (#15019) @apanizo
+- [SwipeableDrawer] Ignore open swipe if it didn't start on the swipe area (#15045) @leMaik
+- [Divider] Enable component generic props (#15040) @StevenGodin
+- [ListItem] Add type test for button prop (#15049) @eps1lon
+- [Button] Fix typing for type-attribute (#15077) @karlbohlmark
+- [RadioGroup] Remove cloneElement, use the context (#15069) @oliviertassinari
+- [Popover] Add warning to Popover if anchorRef is not visible (#15090) @alexmironof
+- [MobileStepper] Support variant "text" (#15108) @AcidRaZor
+- [Tabs] Update so that tabs keep equal widths (#15114) @sosaucily
+
+### `@material-ui/styles@v4.0.0-alpha.6`
+
+- [styles] Fix IE 11 issue (#15034) @oliviertassinari
+- [styles] Use the hook directly in styled() (#15029) @oliviertassinari
+- [styles] Add a new injectFirst prop (#15028) @oliviertassinari
+- [styles] Go back to index counter (#15044) @oliviertassinari
+- [styles] Server-side rendering API (#15030) @oliviertassinari
+- [styled] Correct doc and typings for styled with theme (#15004) @sveyret
+
+### `@material-ui/lab@v4.0.0-alpha.6`
+
+- [Slider] Fix onChange not being fired on single touch (#14998) @ahockersten
+
+### Docs
+
+- [docs] Add keyframes in the v3 -> v4 upgrade guide (#15039) @oliviertassinari
+- [docs] Migrate one demo to the hooks (#15031) @oliviertassinari
+- [docs] Add TypeScript demos for Dividers (#15037) @eluchsinger
+- [docs] Add Chip TypeScript demo for Chip array (#15050) @sperry94
+- [docs] Add MQTT Explorer to showcases (#15033) @thomasnordquist
+- [docs] Fix CustomizedTabs demo (#15065) @HaNdTriX
+- [docs] Add a new site to showcase (learnseeker) (#15064) @ravishwetha
+- [docs] Add Tabs TypeScript demo (#15053) @sperry94
+- [docs] Migrate docs' badge page to hooks (#15109) @apanizo
+- [docs] Migrate docs' buttons page to hooks (#15110) @apanizo
+- [docs] Add Pickers TypeScript demos (#15103) @sperry94
+- [docs] Migrate Avatar demo page to the hooks (#15116) @rick-mo
+- [docs] Add Snackbars TypeScript Demos (#15087) @sperry94
+- [docs] Add Tooltip TypeScript demos (#15061) @Dudrie
+
+### Core
+
+- [ToggleButtonGroup] Convert to function component (#15025) @joshwooding
+- [ToggleButton] Convert to function component (#14965) @joshwooding
+- [Fade] Convert to function component (#15027) @joshwooding
+- [performance] Add live pages (#15046) @oliviertassinari
+- [ExpansionPanelSummary] Convert to function component (#15043) @joshwooding
+- [test] Add conformance suite (#14958) @eps1lon
+- [Menu] Convert to function component (#15068) @joshwooding
+- [test] Update enzyme (#14987) @eps1lon
+- [core] Batch of fixes (#15115) @oliviertassinari
+
+## 3.9.3
+###### *Mar 28, 2019*
+
+Big thanks to the 11 contributors who made this release possible!
+
+This release fixes an important regression with TypeScript: https://github.com/mui-org/material-ui/issues/15076.
+
+### `@material-ui/core@v3.9.3`
+
+- [Select] Open select when focused with enter (#14452) @oknechirik
+- [Tooltip] Fix children focus detection (#14496) @codeheroics
+- [SwipeableDrawer] Ignore open swipe if it didn't start on the swipe area (#15038) @leMaik
+- [Button] Narrow type for `type` prop (#15096) @karlbohlmark
+
+### Docs
+
+- [docs] Fix hooks codesandbox broken (#14553) @Abbo44
+- [docs] Fix typo in simple breadcrumbs example (#14575) @AndrewUsher
+- [blog] Material-UI Developer Survey 2019 (#14614) @oliviertassinari
+- [docs] Change Gitter to Spectrum (#14668) @mbrookes
+- [docs] Update link to http://cssinjs.org/jss-api/ (#14788) @monicatie
+- [docs] Add Algolia metadata (#14835) @oliviertassinari
+- [docs] Improve overrides.md wording (#14403) @i0
+- [docs] Grammar fix (#14960) @nateq314
+
+### Core
+
+N/A
+
+## 4.0.0-alpha.5
+###### *Mar 23, 2019*
+
+A big thanks to the 23 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 📝 A new ROADMAP (#14923).
+- 📝 Many new TypeScript demos @vitkon, @cojennin, @Dudrie, @rahmatrhd, @jasondashwang.
+- And many more 🐛 bug fixes and 💄 improvements.
+
+### `@material-ui/core@v4.0.0-alpha.5`
+
+#### Breaking Changes
+
+- [TextField] Prevent fullwidth textfield expanding the screen (#14988) @FMcIntosh
+
+ Change the default box sizing model of the `InputBase`. It uses the following CSS now:
+ ```css
+ box-sizing: border-box;
+ ```
+ It solves issues with the `fullWidth` prop.
+- [Modal] Ignore event.defaultPrevented (#14991) @oliviertassinari
+
+ The new logic closes the Modal even if `event.preventDefault()` is called on the key down escape event.
+ `event.preventDefault()` is meant to stop default behaviors like clicking a checkbox to check it, hitting a button to submit a form, and hitting left arrow to move the cursor in a text input etc.
+ Only special HTML elements have these default behaviors.
+ You should use `event.stopPropagation()` if you don't want to trigger an `onClose` event on the modal.
+
+#### Changes
+
+- [Popover] Correct warning for tall component (#14925) @vitkon
+- [List] Memoize context value (#14934) @mkermani144
+- [Typography] Add a custom, self-hosted font demo (#14928) @johnrichter
+- [RadioGroup] Warn for uncontrolled <-> controlled switch (#14878) @manonthemat
+- [Slide] Attach ref to child instead of Transition (#14847) @eps1lon
+- [Grid] Fix zeroMinWidth proptype warning (#14967) @pmacom
+- [TextField] Reduce the specificity (#14953) @oliviertassinari
+- [MenuList] Convert to a function component (#14865) @ryancogswell
+- [Popper] Add ClickAwayListener documentation (#14986) @charlax
+- [RadioGroup] Convert to a function component (#14964) @joshwooding
+- [Tab] Enable generic props (#15003) @caroe233
+- [Tooltip] Make enterTouchDelay match the specification (#15008) @devsumanmdn
+- [Chip] Support pressing delete to delete a chip (#14978) @keeslinp
+- [Box] Improve TypeScript definitions (#15024) @pheuter
+
+### `@material-ui/styles@v4.0.0-alpha.5`
+
+- [test] Remove test-only class wrappers for higher-order components (#15017) @eps1lon
+
+### Docs
+
+- [docs] Remove flow examples as outdated (#14919) @oliviertassinari
+- [docs] Enable German (#14927) @mbrookes
+- [docs] Add react-basket to related projects (#14941) @mbrn
+- [docs] Update the ROADMAP (#14923) @oliviertassinari
+- [docs] Take advantage of the default theme (#14945) @oliviertassinari
+- [docs] Improve the styles interpolation documentation (#14940) @oliviertassinari
+- [docs] Add Avatar TypeScript demos (#14954) @cojennin
+- [docs] Add PaperSheet TypeScript demo (#14952) @vitkon
+- [docs] Remove all the .hooks.js files (#14947) @oliviertassinari
+- [docs] Add Badge TypeScript demo (#14969) @vitkon
+- [docs] Grammar fix in FAQ (#14974) @rtalvarez
+- [docs] Document how to nest style selectors (#14957) @cojennin
+- [docs] BottomNavigation TypeScript docs (#14979) @vitkon
+- [docs] Add some Card TypeScript demos (#15011) @Dudrie
+- [docs] Add Badge TypeScript demo for Maximum Value (#15013) @rahmatrhd
+- [docs] Add TypeScript demos for Simple and Spanning Table (#14985) @jasondashwang
+- [docs] Add note to docs README regarding translations (#15020) @mbrookes
+- [docs] Content's max width changed for large displays (#15014) @kenzhemir
+
+### Core
+
+- [core] Refactor a subset of components from classes to functions (#14854) @mbrookes
+- [benchmark] Use deterministic version tags (#14968) @eps1lon
+- [test] Remove test-only class wrappers for higher-order components (#15017) @eps1lon
+
+## 4.0.0-alpha.4
+###### *Mar 17, 2019*
+
+A big thanks to the 17 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- Improve the TypeScript definitions of @material-ui/styles @VincentLanglet.
+- Prepare the migration of more TypeScript demos (#14896) @eps1lon.
+- Complete the i18n support for the documentation (#14838) @oliviertassinari.
+- And many more 🐛 bug fixes and 📝 documentation improvements.
+
+### `@material-ui/core@v4.0.0-alpha.4`
+
+#### Breaking Changes
+
+- [ButtonBase] Require host or ref forwarding components (#13664) @eps1lon
+- [SvgIcon] Rename nativeColor -> htmlColor (#14863) @oliviertassinari
+
+ React solved the same problem with the `for` HTML attribute, they have decided to call the prop `htmlFor`. This change follows the same reasoning.
+
+ ```diff
+ -
+ +
+ ```
+
+- [Divider] Remove the deprecated inset prop (#14826) @joshwooding
+
+ ```diff
+ -
+ +
+ ```
+
+- [Box] Remove the unstable prefix & import the right version (#14845) @pheuter
+
+ ```diff
+ -import { unstable_Box as Box } from '@material-ui/core/Box';
+ +import Box from '@material-ui/core/Box';
+ ```
+
+#### Changes
+
+- [Grid] Adding missing 'spacing-xs-*' to TypeScript definition (#14859) @scott-martin
+- [Tabs] Fix an infinite loop (#14664) @caroe233
+- [NoSsr] Add missing defer prop to TypeScript definition (#14869) @DaleJefferson
+- [core] Remove dom-helpers dependency (#14877) @oliviertassinari
+- [TextField] Add typing for theme wide props override (#14879) @C-Rodg
+- [Autocomplete] Add a downshift variant demo (#14881) @ekoeditaa
+- [Popover][Popper] Warn when `anchorEl` is invalid (#13468) @Andarist
+- [LinearProgress] Improve customization capability (#14882) @giuliogallerini
+- [Popover] Fix PaperProps classname concat (#14902) @vitkon
+- [MenuItem] Add buttonRef (and other button props) type (#14772) @VincentLanglet
+- [TouchRipple] Remove findDOMNode usage (#14825) @eps1lon
+- [ExpansionPanelSummary] Simplify overrides (#14828) @TroySchmidt
+- [Popper] Use refs instead of findDOMNode (#14829) @eps1lon
+- [Tab] Fix alignment when using multiple children (#14844) @HaNdTriX
+- [TextField] Convert to function component (#14833) @eps1lon
+- [Table] Fix demo parse rowsPerPage value as an integer (#14848) @SimplyAhmazing
+
+### `@material-ui/styles@v4.0.0-alpha.4`
+
+- [styles] Change material-ui/styles folder structure (#14868) @VincentLanglet
+- [styles] Add WithThemeCreator typing (#14856) @VincentLanglet
+- [styles] Add types for defaultTheme option in makeStyles (#14862) @vitkon
+- [styles] Make CSSProperties public (#14802) @VincentLanglet
+
+### `@material-ui/lab@v4.0.0-alpha.4`
+
+- [Slider] Fix possible touchstart leak (#14837) @eps1lon
+
+### Docs
+
+- [docs] Prepare full TypeScript demos (#14896) @eps1lon
+- [docs] Improve documentation for new component + ref behavior (#14883) @eps1lon
+- [docs] Add perf section to ExpansionPanel (#14903) @eps1lon
+- [docs] Simplify the /examples (#14822) @oliviertassinari
+- [docs] Add ssr-next example (#14823) @oliviertassinari
+- [docs] Add missing breaking changes from #14795 (#14824) @eps1lon
+- [docs] Minor fixes to system demos (#14831) @jo shwooding
+- Complete the i18n support for the documentation] Enable the i18n search (#14838) @oliviertassinari
+- [docs] Fix babel generator extra line (#14849) @VincentLanglet
+- [docs] Remove unnecessary findDOMNode usage (#14836) @eps1lon
+
+### Core
+
+- [core] Only import from top or 2nd level (#14888) @eps1lon
+- [test] Leaner eslint config (#14901) @eps1lon
+- [core] Upgrade the dev dependencies (#14911) @oliviertassinari
+- [core] Stop using @types/jss (#14852) @VincentLanglet
+- [core] Babel plugin unwrap createStyles now handle material-ui/styles package (#14850) @VincentLanglet
+- [test] Fix unwrapCreateStyles tests for windows (#14832) @ryancogswell
+
+## 4.0.0-alpha.3
+###### *Mar 10, 2019*
+
+A big thanks to the 14 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- ⚛️ Increase the usage of `React.forwardRef()` (#14714, #14737, #14738, #14775) @eps1lon.
+- 💅 Remove the old styles modules (#14767) @oliviertassinari.
+- 📝 Migrate many demos to use the hooks API (#14805) @adeelibr.
+- And many more 🐛 bug fixes and 📝 documentation improvements.
+
+### `@material-ui/core@v4.0.0-alpha.3`
+
+#### Breaking Changes
+
+- [useMediaQuery] Remove unstable prefix (#14593)
+
+ ```diff
+ -import { unstable_useMediaQuery as useMediaQuery } from '@material-ui/core/useMediaQuery';
+ +import useMediaQuery from '@material-ui/core/useMediaQuery';
+ ```
+- [DialogActions] `action` CSS class is applied to root element if `disableActionSpacing={false}` instead of children (#14795)
+- [DialogContentText] Use typography variant `body1` instead of `subtitle1` (#14795)
+
+- [MenuItem] Remove fixed height (#14799) @KyruCabading
+ Remove the fixed height of the MenuItem.
+ The padding and line-height are used by the browser to compute the height.
+
+#### Changes
+
+- [Tabs] Forward refs (#14714) @eps1lon
+- [TextField] New filled variant override example (#14725) @oliviertassinari
+- [FilledInput] Simplify border overrides (#14719) @C-Rodg
+- [CssBaseline] Apply body2 styling to the body element (#14729) @joshwooding
+- [IconButton] Add a size prop (#14649) @leMaik
+- [Popover] Forward refs (#14737) @eps1lon
+- [Modal] Forward refs (#14738) @eps1lon
+- [createSpacing] Narrow return type (#14745) @eps1lon
+- [Chip] Correct Chip TypeScript Definition Class Keys (#14750) @cvanem
+- [MenuList] Remove focus method and test dependencies on instance methods (#14757) @ryancogswell
+- [Dialog] Forward refs (#14775) @eps1lon
+- [IconButton] Implement a new edge prop (#14758) @jedwards1211
+- [Dialog] Add a dividers boolean prop (#14795) @oliviertassinari
+
+### `@material-ui/styles@v4.0.0-alpha.3`
+
+#### Breaking Changes
+
+- [styles] Remove the old styles modules (#14767) @oliviertassinari
+ Isolation of the styling solution of the core components in a dedicated package.
+ - Remove the `MuiThemeProvider` component:
+
+ ```diff
+ -import { MuiThemeProvider } from '@material-ui/core/styles';
+ +import { ThemeProvider } from '@material-ui/styles';
+ ```
+
+ - Remove the `@material-ui/styles/install` module.
+ ```diff
+ -import { install } from '@material-ui/styles';
+ -install();
+ ```
+
+#### Changes
+
+- [styles] Improve ref forwarding (#13676) @eps1lon
+- [styles] Use hoist-non-react-statics (#14722) @oliviertassinari
+
+### `@material-ui/lab@v4.0.0-alpha.3`
+
+- [SpeedDial] Change actions background color (#14640) @hburrows
+- [SpeedDialAction] Pass onTouchEnd event onto called onClick handler (#14641) @hburrows
+
+### Docs
+
+- [docs] Fix Drawer demos accessibility (#14728) @tiagodreis
+- [docs] Add "Portals" to the styled components documentation (#14720) @C-Rodg
+- [docs] Specify PaletteIntention syntax (#14727) @ozydingo
+- [docs] Add button demos in ts (#14739) @eps1lon
+- [docs] Document the migration from v3 to v4 (#14741) @oliviertassinari
+- [docs] before() is Mocha; beforeEach() is Jest (#14743) @masaok
+- [docs] Fix IE 11 build (#14781) @oliviertassinari
+- [docs] Kill as many non hook demos as possible (#14805) @oliviertassinari
+- [docs] Prepare Google & Algolia i18n search + v3/v4 search (#14806) @oliviertassinari
+- [docs] Speed-up pull requests build (#14811) @oliviertassinari
+
+### Core
+
+- [test] Ignore the image load issue (#14723) @oliviertassinari
+- [icons] Fix builder failing on Windows (#14726) @joshwooding
+- [ci] Don't use -browser images (#14779) @eps1lon
+- [test] Increase the Codecov threshold (#14796) @oliviertassinari
+- [test] Disable the user sandbox security feature (#14804) @oliviertassinari
+- [core] Use hoist-non-react-statics (#14722) @oliviertassinari
+
+## 4.0.0-alpha.2
+###### *Mar 3, 2019*
+
+A big thanks to the 23 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- Keep working on accessibility (#14465, #14545, #14661) @eps1lon, @oliviertassinari.
+- Add the Table dense support (#14561) @leMaik.
+- Change the bundle size tracking strategy (copy React) (#14587) @eps1lon.
+- Introduce a new Container component & new full layout demos (#14499) @oliviertassinari.
+- Start removing the need for findDOMNode() (#14536) @eps1lon.
+- And many more 🐛 bug fixes and 📝 documentation improvements.
+
+### `@material-ui/core@v4.0.0-alpha.2`
+
+#### Breaking Changes
+
+- [Tabs] Simplify override (#14638) @oliviertassinari
+
+ We have removed the `labelContainer`, `label` and `labelWrapped` class keys.
+ We have removed 2 intermediary DOM elements.
+ You should be able to move the custom styles to the root class key.
+ 
+
+- [Table] Add dense support (#14561) @leMaik
+
+ - We have removed the deprecated numeric property.
+ ```diff
+ -{row.calories}
+ +{row.calories}
+ ```
+ - We have removed the fixed height property on the table row.
+ The cell height is computed by the browser using the padding and line-height.
+ - The `dense` mode was promoted to a different property:
+ ```diff
+ -
+ +
+ ```
+
+- Every component except `Dialog`, `MenuList`, `Modal`, `Popover` and `Tabs` forward
+ their `innerRef` (#14536).
+
+ This is implemented by using `React.forwardRef`. This affects the internal component
+ tree and display name and therefore might break shallow or snapshot tests.
+ `innerRef` will no longer return a ref to the instance
+ (or nothing if the inner component is a function component) but a ref to its root component.
+ The corresponding API docs list the root component.
+
+#### Changes
+
+- [core] Improve a11y for Collapse, ExpansionPanel and Grow (#14598) @eps1lon
+- [Transitions] Increase minimal version of react-transition-group to 2.5.3 (#14612) @wilcoschoneveld
+- [ExpansionPanelSummary] Update docs (#14606) @ifndefdeadmau5
+- [ExpansionPanel] Add TransitionComponent prop (#14617) @ptbrowne
+- [Link] Color property is defined with a wrong type (#14631) @akellan
+- [Tooltip] Improve legibility (#14651) @leMaik
+- [Tabs] Fix variant missing in Tabs.d.ts (#14659) @Deturium
+- [Autocomplete] Improve demo (#14657) @tjmcewan
+- [Dialog] Support for print (#14660) @emildatcu
+- [TableSortLabel] Increase size and show on hover (#14650) @leMaik
+- [Modal] Fix autoFocus support (#14661) @oliviertassinari
+- [InputLabel] display: block as default (#14676) @johnloven
+- [InputBase] Add missing TypeScript class keys (#14684) @dmtrKovalenko
+- [ListItem] Fix listItem focus (#14680) @xs9627
+- [ExpansionPanel] Improve a11y (#14682) @eps1lon
+
+### `@material-ui/styles@v4.0.0-alpha.2`
+
+- [styles] Fix the theme update support (#14697) @oliviertassinari
+
+### `@material-ui/lab@v4.0.0-alpha.2`
+
+- [Slider] Pass current value to onDragStart/onDragEnd callback (#14475) @rejas
+- [Slider] Fix thumb creating scroll overflow (#14689) @xaviergonz
+- [Layout] New Container component (#14499) @oliviertassinari
+- [Container] Fix two exceptions (#14715) @oliviertassinari
+
+### `@material-ui/utils@v4.0.0-alpha.2`
+
+- [utils] Drop componentPropType in favor of PropTypes.elementType (#14602) @eps1lon
+
+## Docs
+
+- [MobileStepper] Remove unused classname in example (#14597) @charlax
+- [docs] Update the Team (#14613) @oliviertassinari
+- [docs] Solve Firefox middle click issue (#14623) @paol
+- [docs] Update ScrollDialog Demo for 4k (#14622) @AndrewUsher
+- [docs] Fix broken hash link in css-in-js (#14633) @furkle
+- [docs] Improve demo source discoverability (#14635) @eps1lon
+- [docs] Improve Grid limitations description (#14637) @ryancogswell
+- [docs] Fix minor issues with demo action tooltips (#14652) @eps1lon
+- [docs] Upgrade react-docgen (#14666) @eps1lon
+- [docs] Update bundle size strategy (#14662) @eps1lon
+- [docs] Minor next adjustments (#14679) @eps1lon
+- [docs] A grammar modification suggestion (#14671) @mataxxx5
+- [docs] Link the mui-tables project in the documentation (#14701) @parkerself22
+- [docs] Generate unique hash (#14703) @oliviertassinari
+- [docs] Add simple list TypeScript demo (#14485) @eps1lon
+- [docs] Fix wrong source code URLs (#14716) @oliviertassinari
+
+## Core
+
+- [core] Fix webstorm autocompletion (#14599) @eps1lon
+- [ci] Use dangerJS to report bundle size changes (#14587) @eps1lon
+- [ci] Various size snapshot enhancements (#14620) @eps1lon
+- [core] Solve Babel dependency issue (#14621) @AndrewUsher
+- [core] Add eslint-plugin-react-hooks (#14629) @eps1lon
+- [test] Fix size snapshot including peer dependencies (#14636) @eps1lon
+- [ci] Speedup and cleanup (#14643) @eps1lon
+- [test] Fix how menu items are found in MenuList integration tests (#14654) @ryancogswell
+- [core] Add tslint deprecation rule (#14675) @eps1lon
+- [typescript] Add regression test for popular hoc interop (#14688) @eps1lon
+- [core] Fix .yarnrc syntax (#14704) @joshwooding
+- [core] forward innerRef for certain components (#14536) @eps1lon
+- [core] Use official prop-type cache invalidation (#14699) @eps1lon
+
+## 4.0.0-alpha.1
+###### *Feb 20, 2019*
+
+A big thanks to the 16 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- Important accessibility fixes (#14465, #14545) @eps1lon, @oliviertassinari
+- Improve the Gastby integration (we will continue working on it to get something awesome) (#14552)
+- Remove the deprecated Typography variants (#14562) @joshwooding
+- And many more 🐛 bug fixes and 📝 documentation improvements.
+
+### `@material-ui/core@v4.0.0-alpha.1`
+
+#### Breaking Changes
+
+- [Typography] Remove deprecated Typography variants (#14562) @joshwooding
+
+ - Remove the deprecated typography variants. You can upgrade by performing the following replacements:
+ - display4 => h1
+ - display3 => h2
+ - display2 => h3
+ - display1 => h4
+ - headline => h5
+ - title => h6
+ - subheading => subtitle1
+ - body2 => body1
+ - body1 (default) => body2 (default)
+ - Remove the opinionated `display: block` default typograpghy style.
+ You can use the new `display?: 'initial' | 'inline' | 'block';` property.
+ - Rename the `headlineMapping` property to better align with its purpose.
+ ```diff
+ -
+ +
+ ```
+
+- [InputLabel] Remove FormLabelClasses in favor of asterisk class (#14504) @umairfarooq44
+
+You should be able to override all the styles of the FormLabel component using the css API of the InputLabel component. We do no longer need the `FormLabelClasses` property.
+```diff
+
+ Foo
+
+```
+
+- [TablePagination] Only raise a warning when the page is out of range (#14534) @leMaik
+
+The `TablePagination` component does no longer try to fix invalid (`page`, `count`, `rowsPerPage`) property combinations. It raises a warning instead.
+
+### Changes
+
+- [typescript] Fix theme.spacing to accept up to 4 arguments (#14539) @toshi1127
+- [Transition] Fix hidden children appearing in a11y tree (#14465) @eps1lon
+- [TablePagination] Fix style issue with rpp select (#14547) @antokara
+- [Modal] Improve the focus logic (#14545) @oliviertassinari
+
+### `@material-ui/styles@v4.0.0-alpha.1`
+
+#### Breaking Changes
+
+- [styles] Change the withTheme API (#14565) @oliviertassinari
+
+Remove the first option argument of `withTheme()`. The first argument was a placeholder for a potential future option. We have never found a need for it. It's time to remove this argument. It matches the emotion and styled-components API.
+```diff
+-const DeepChild = withTheme()(DeepChildRaw);
++const DeepChild = withTheme(DeepChildRaw);
+```
+
+#### Changes
+
+- [styles] Type ThemeProvider and getThemeProps generic (#14489) @igorbt
+- [styles] 100% test coverage (#14566) @oliviertassinari
+- [styles] Follow react docs for firstRender flag (#13607) @eps1lon
+- [styles] Add react-hot-loader support (#14583) @oliviertassinari
+- [styles] Warn if missing ThemeProvider (#14581) @oliviertassinari
+
+### `@material-ui/icons@v4.0.0-alpha.1`
+
+- [icons] Remove es folder (#14518) @mgansler
+
+### Docs
+
+- [docs] yarn command to add @material-ui/icons (#14502) @Inambe
+- [docs] Update CHANGELOG.md (#14516) @saculbr
+- [examples] Add lib to tsconfig (#14507) @eps1lon
+- [docs] Enable es, fr, pt & ru (#14537) @oliviertassinari
+- [docs] Add ts demos for menus, fixes ClickAwayListener onClickAway type (#14535) @eps1lon
+- [docs] Update the styling of the TOC (#14520) @mbrookes
+- [docs] Update breakpoints.md for clarity (#14527) @matthewjwhitney
+- [docs] Fix Horizontal Non-linear Stepper demo (#14551) @SVTerziev
+- [docs] Update the branch for Crowdin (#14550) @mbrookes
+- [docs] Fix hooks codesandbox broken (#14553) @Abbo44
+- [docs] Fix css anchor link (#14554) @umairfarooq44
+- [examples] Improve the Gastby integration (#14552) @oliviertassinari
+- [docs] Add examples of global class names (#14563) @n-batalha
+- [docs] Change Gitter to Spectrum (#14558) @mbrookes
+- [docs] Add sections about translation contributions (#14571) @eps1lon
+- [docs] Localize the table of contents (#14548) @mbrookes
+
+### Core
+
+- [core] Convert remaining classNames usage (#14506) @eps1lon
+- [core] Fix Prettier on next branch (#14524) @joshwooding
+- [core] Fix some peer dependency warnings (#14572) @eps1lon
+
+## 4.0.0-alpha.0
+###### *Feb 12, 2019*
+
+This is our first unstable release toward Material-UI v4.0.0. We try to release a major every 6-12 months.
+This gives us the opportunity to remove deprecated APIs, upgrade our peer dependencies and more importantly, keep up with the direction the community is taking.
+
+- You can find the documentation following this URL: https://material-ui.com/.
+- You can track our progress following this URL: https://github.com/mui-org/material-ui/milestone/25.
+
+A big thanks to the 28 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- Increase React peer dependency to v16.8.0 (#14432) @oliviertassinari
+- Improve the spacing API (#14099) @ifndefdeadmau5
+- Improve ES modules tree shake-ability (#13391) @eps1lon
+- Remove recompose dependency (#14479)
+- And many more 🐛 bug fixes and 📝 documentation improvements.
+
+### `@material-ui/core@v4.0.0-alpha.0`
+
+#### Breaking Changes
+
+- [core] Increase React peer dependency to v16.8.0 (#14432) @oliviertassinari
+
+ The upgrade path to React 16.8.0 should be pretty easy for our users.
+ Introducing this breaking change in v4 enables the following:
+ - We can remove the recompose dependency and use the new `React.memo()` API.
+ - Before or after v4 is out, we can gradually migrate the core components to use the Hook API.
+
+- [Grid] Use a unitless spacing API (#14099) @ifndefdeadmau5
+
+In order to support arbitrary spacing values and to remove the need to mentally count by 8, we are changing the spacing API:
+```diff
+ /**
+ * Defines the space between the type `item` component.
+ * It can only be used on a type `container` component.
+ */
+- spacing: PropTypes.oneOf([0, 8, 16, 24, 32, 40]),
++ spacing: PropTypes.oneOf([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]),
+```
+Going forward, you can use the theme to implement a custom Grid spacing transformation function: https://material-ui.com/system/spacing/#transformation.
+
+- [theme] Make theme.palette.augmentColor() pure (#13899) @ryancogswell
+
+The `theme.palette.augmentColor()` method no longer performs a side effect on its input color.
+In order to use it correctly, you have to use the output of this function.
+
+```diff
+-const background = { main: color };
+-theme.palette.augmentColor(background);
++const background = theme.palette.augmentColor({ main: color });
+
+console.log({ background });
+```
+
+- [core] Change UMD output name to 'MaterialUI' (#13142) @tkrotoff
+
+ This change eases the use of Material-UI with a CDN:
+ ```diff
+ const {
+ Button,
+ TextField,
+ -} = window['material-ui'];
+ +} = MaterialUI;
+ ```
+
+ It's consistent with the other projects:
+ - material-ui => MaterialUI
+ - react-dom => ReactDOM
+ - prop-types => PropTypes
+
+- [Button] Remove deprecated props and styles (#14383) @mbrookes
+
+Remove the deprecated button flat, raised and fab variants:
+
+```diff
+-
++
+```
+
+```diff
+-
++
+```
+
+```diff
+-import Button from '@material-ui/core/Button';
+-
++import Fab from '@material-ui/core/Fab';
++
+```
+
+- [core] Drop official node 6 support (#14379) @eps1lon
+
+### Deprecation
+
+- `theme.spacing.unit` usage is deprecated, you can use the new API (#14099) @ifndefdeadmau5:
+
+```diff
+ [theme.breakpoints.up('sm')]: {
+- paddingTop: theme.spacing.unit * 12,
++ paddingTop: theme.spacing(12),
+ },
+```
+
+*Tip: you can provide more than one argument: `theme.spacing(1, 2) // = '8px 16px'`*
+
+#### Changes
+
+- [ListItem] Improve phrasing of error message (#14437) @netzwerg
+- [styles] Replace classnames with clsx (#14152) @TrySound
+- [Modal] Make children property required (#14444) @erichodges
+- [Select] Open select when focused with enter (#14452) @oknechirik
+- [Popper] Add hook API demo (#14464) @oliviertassinari
+- [Breadcrumbs] Fix wrong aria label property (#14486) @MalignantShadow
+- [Tooltip] Fix children focus detection (#14496) @codeheroics
+- [MenuItem] Improve note about using ellipsis (#14371) @charlax
+- [Tabs] Fix scrollbar appearing briefly on scroller (#14384) @ekoeditaa
+- [Chip] Fix role prop when not clickable (#14365) @pandaiolo
+- [Box] Add typings (#14397) @eps1lon
+- [Dialog] Fix inconsistencies with scroll="body" (#14398) @TomiCake
+- [TextField] Allow overriding default TextField props from the theme (#14252) @janowsiany
+- [Drawer] Add 'root' to class declaration (#14408) @sowings13
+- [theme] Improve the state warning (#14412) @oliviertassinari
+- [InputBase] Provide input adornments with FormControlContext (#14364) @mtidei
+
+### `@material-ui/styles@v4.0.0-alpha.0`
+
+- [core] Increase React peer dependency to v16.8.0 (#14432) @oliviertassinari
+
+### `@material-ui/system@v4.0.0-alpha.0`
+
+- [core] Increase React peer dependency to v16.8.0 (#14432) @oliviertassinari
+
+### `@material-ui/icons@v4.0.0-alpha.0`
+
+- [core] Increase React peer dependency to v16.8.0 (#14432) @oliviertassinari
+
+### `@material-ui/docs@v4.0.0-alpha.0`
+
+- [core] Increase React peer dependency to v16.8.0 (#14432) @oliviertassinari
+
+### `@material-ui/lab@v4.0.0-alpha.0`
+
+#### Breaking Changes
+
+- [Breadcrumbs] Move to the core (#14436) @oliviertassinari
+```diff
+-import Breadcrumbs from '@material-ui/lab/Breadcrumbs';
++import Breadcrumbs from '@material-ui/core/Breadcrumbs';
+```
+- [ToggleButton] Update styles for Material v2 (#14278) @mbrookes
+
+⚠️ The height has changed - it might break your layout.
+
+#### Changes
+
+- [core] Increase React peer dependency to v16.8.0 (#14432) @oliviertassinari
+- [Slider] Fix a11y issues with the handle (#14461) @eps1lon
+
+### Docs
+
+- [docs] Improve overrides.md wording (#14403) @i0
+- [docs] Remove unneeded input from select docs (#14443) @eladmotola
+- [docs] Fix broken font-awesome icons in documentation (#14454) @EndiM
+- [docs] Reword certain phrases to improve i10n (#14457) @eps1lon
+- [docs] Fix IE11 crash on demo pages (#14466) @eps1lon
+- [docs] Add french translation (#14467) @zek0faws
+- [docs] Standardise compose util usage (#14472) @mbrookes
+- [docs] Additional tweaks to English l10n strings (#14471) @mbrookes
+- [examples] Improve the v3/v4 distinction (#14476) @oliviertassinari
+- [docs] Change interpolation library (#14481) @mbrookes
+- [docs] Fix showcase (#14494) @oliviertassinari
+- [docs] New translations (#14501) @mbrookes
+- [examples] Fix download link in example README (#14372) @clk1006
+- [docs] Revise the wrapping components guide wording (#14381) @mbrookes
+- [README] Fix the underscored space on hover, rearrange thanks (#14388) @mbrookes
+- [docs] Update use-media-query.md (#14389) @edwin32
+- [docs] Fix the SW cache between updates (#14390) @oliviertassinari
+- [docs] Add analytics to language notifications (#14402) @mbrookes
+- [docs] Targeted edit button URL (#14395) @mbrookes
+- [docs] Remove recompose/compose (#14421) @mbrookes
+- [docs] Generalize non-markdown I18n (#14413) @mbrookes
+- [docs] Fix the css-in-js styled section to match currying implementation (#14418) @gutofoletto
+
+### Core
+
+- [core] Use frozen-lockfile by default (#14433) @eps1lon
+- [utils] Add support for forwardRef components in getDisplayName (#14429) @eps1lon
+- [test] Back to 100% test coverage (#14458, #14460) @oliviertassinari
+- [core] Upgrade the dev dependencies (#14463, #14385) @oliviertassinari
+- [core] Prepare next versions (#14473) @oliviertassinari
+- [typescript] Enable generic props for certain components (#13868) @pelotom
+- [core] Remove recompose (#14479) @oliviertassinari
+- [typescript] Add type test for style lib interopability (#14482) @eps1lon
+- [core] Upgrade to Next.js 8 (#14493)
+- [core] Improve tree-shakeability (#13391) @eps1lon
+- [core] Use common copy-files script (#14406) @eps1lon
+- [core] Enable innerRef on ListItem and MenuItem (#14423) @eps1lon
+- [core] Remove typings for `/es` build (#14422) @eps1lon
+- [core] Enable innerRef on Backdrop, List, MenuList and Paper (#13722) @eps1lon
+
+## 3.9.2
+###### *Feb 03, 2019*
+
+Big thanks to the 16 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- ⚛️ Add a new Breadcrumb component to the lab (#14084) @mbrookes
+https://material-ui.com/lab/breadcrumbs
+- 📝 AppBar and Textfield demos in TypeScript (#13229) @eps1lon
+- 📝 Prepare support for 5 new documentation languages
+https://translate.material-ui.com/project/material-ui-docs
+- And many more 🐛 bug fixes and 📝 documentation improvements.
+
+### `@material-ui/core@v3.9.2`
+
+- [Portal] Fix onRendered being called before child componentDidUpdate (#14305) @joshwooding
+- [Select] Id should not be set from name if missing (#14322) @aericson
+- [ListItem] Add alignItems prop to ListItem.d.ts (#14334) @EndiM
+- [useMediaQuery] Fix typings for options object (#14339) @johannwagner`
+- [NativeSelect] Fix option background for dark theme (#14340) @ryancogswell
+- [Button] Add color inherit to outlined variant of button component (#14332) @EndiM
+- [ListItem] Improve ListItemSecondaryAction DX (#14350) @eps1lon
+- [ExpansionPanel] Fix userAgent check (#14361) @Floriferous
+
+### `@material-ui/styles@v3.0.0-alpha.10`
+
+- [styles] Export StyleRules as public type #14362 @VincentLanglet
+
+### `@material-ui/lab@v3.0.0-alpha.30`
+
+- [Slider] Added valueReducer prop (#12665) @aseem191
+- [lab] Add a Breadcrumb component (#14084) @mbrookes
+
+### Docs
+
+- [docs] Add CloudHealth to showcase, reorder based on latest pageviews (#14307) @mbrookes
+- [docs] New translations (#14308) @oliviertassinari
+- [docs] New Crowdin translations (#14315) @muibot
+- [docs] Fix i18n logic (#14316) @oliviertassinari
+- [docs] Translate the key wordings (#14317) @oliviertassinari
+- [docs] Add sorting to Showcase (#14312) @mbrookes
+- [docs] Link ignore target blank (807bab8) @oliviertassinari
+- [docs] Reset Table page number (#14354) @rafaelmarinids
+- [docs] Explain bootstrap issue for nextjs-hooks (#14353) @avetisk
+- [docs] Improve wrapping docs (#14351) @eps1lon
+- [docs] AppBar and Textfield demos in TypeScript (#13229) @eps1lon
+- [docs] Minor Hook Demo fixes (#14367) @joshwooding
+- [docs] Enable the i18n help messages (#14356) @oliviertassinari
+- [docs] Fix SW cache invalidation (242bff9) @oliviertassinari
+
+### Core
+
+- [README] Add all the products sponsoring open source (#14311) @oliviertassinari
+- [core] Disable CircleCI on l10n (#14314) @oliviertassinari
+- [test] Fix CDN test (#14324) @oliviertassinari
+- [core] Fix innerRef being considered injected with certain HOCs (#14333) @eps1lon
+- [test] Update test/README.md section (#14355) @Dynogic
+
+## 3.9.1
+###### *Jan 26, 2019*
+
+Big thanks to the 30 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 🐛 Fix many Dialog issues (#13789, #14240, #14288) @joshwooding, @zharris6
+- 📝 Promote material-ui-pickers (#14277)
+- 🚀 Remove the keycode dependency (#14248)
+- And many more 🐛 bug fixes and 📝 documentation improvements.
+
+### `@material-ui/core@v3.9.1`
+
+- [Tooltip] Add example using node (#14182) @Varad25
+- [Badge] Make badgeContent optional in ts too (#14186) @kLabz
+- [CircularProgress] Fix animation jumps on indeterminate variant (#14198) @rfbotto
+- [Textarea] Fix line height visibility issue on SSR (#14197) @rfbotto
+- [Link] Fix type declaration for props (#14193) @lunaryorn
+- [useMediaQuery] Synchronize TypeScript definition with js one (#14214) @sthenault
+- [MenuList] Add `home` and `end` key support (#14212) @dallin-christensen
+- [InputAdornment] Automatically inherit the variant (#14023) @joshwooding
+- [Dialog] Add missing PaperComponent property in the definition (#14240) @zharris6
+- [Dialog] Check target has not changed before closing (#13789) @joshwooding
+- [TextField] Fix to expose helperText for accessibility (#14266) @mlenser
+- [Modal] Hide the manager property (#14273) @oliviertassinari
+- [GridListTileBar] Add missing titleWrap key (#14275) @nroot86vml
+- [Pickers] Promote material-ui-pickers (#14277) @oliviertassinari
+- [Select] Add customization demo (#14281) @bemineni
+- [ExpansionPanel] Fix square support (#14282) @brandonvilla21
+- [Dialog] Fix scrollbar (#14288) @joshwooding
+- [LinearProgress] Remove dead bar2Determinate CSS class (#14298) @lmcarreiro
+- [Select] Help automated UI testing (#14289) @oumaima1234
+- [MobileStepper] Fix typo CSS API (#14300) @DenrizSusam
+- [Link] Add ts test and distinguish from react-router link test (#14304) @rosskevin
+
+### `@material-ui/styles@v3.0.0-alpha.9`
+
+- [styles] Better warning message (#14290) @oliviertassinari
+- [styles] Document the right react-jss version for legacy style modules (#14237) @mrmedicine
+
+### `@material-ui/lab@v3.0.0-alpha.29`
+
+- [Slider] Support multitouch for dragging multiple sliders (#13320) @Pajn
+
+### `@material-ui/system@v3.0.0-alpha.2`
+
+- [system] Add fractions support (#14209) @oliviertassinari
+- [system] Better zindex documentation (#14229) @oliviertassinari
+
+### Docs
+
+- [docs] Update supported components page (#13905) @MidnightDesign
+- [docs] Fix componentPropType display (#14194) @eps1lon
+- [docs] Fix fade transition visual bug on codesandbox (#14200) @rfbotto
+- [docs] Handle missing errors more gracefully (#14210) @oliviertassinari
+- [docs] Fix grammar in related-projects.md (#14227) @jasonkylefrank
+- [docs] Add Portuguese translation notification (#14230) @mbrookes
+- [docs] New Crowdin translations (#14223) @muibot
+- [docs] Minor fix of selection control labels doc (#14238) @ccesare
+- [docs] Correct Bethesda.net title in app list (#14242) @sbolel
+- [docs] Change ponyfill to polyfill in use-media-query.md (#14215) @MathiasKandelborg
+- [docs] Fix typos on the links for the JSS docs (#14235) @viniciusCamargo
+- [docs] Improve the performance (#14250) @oliviertassinari
+- [docs] Notification by locale (#14256) @oliviertassinari
+- [docs] Add component prop and React Router usage to TypeScript guide (#14170) @hedgerh
+- [docs] Tiny fixes (#14259) @mbrookes
+- [docs] Better server-side rendering example (#14269) @unalterable
+- [docs] Add Misheneye to the showcase (#14262) @gdub01
+
+### Core
+
+- [core] Upgrade the dependencies (#14196) @oliviertassinari
+- [core] Remove keycode() (#14248) @oliviertassinari
+- [core] Update the dev dependencies (#14261) @oliviertassinari
+
+## 3.9.0
+###### *Jan 14, 2019*
+
+Big thanks to the 17 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 💄 Add a new Link component (#14093) @joshwooding
+- 💄 Important update of the Badge component (#14121) @joshwooding
+- And many more 🐛 bug fixes and 📝 documentation improvements.
+
+### `@material-ui/core@v3.9.0`
+
+- [ButtonBase] Reduce keyup timeout interval to 500ms (#14120) @rfbotto
+- [InputAdornment] Add disablePointerEvents prop (#14123) @rfbotto
+- [Chip] Fix wrong font color for default variant with secondary color (#14125) @bjm904
+- [IconButton] Warn when providing onClick to a child of a button (#14160) @oliviertassinari
+- [Link] Refinement (#14162) @oliviertassinari
+- [Modal] Change keydown handling to use synthetic event (#14134) @rfbotto
+- [Badge] Give Badge dynamic width and other improvements (#14121) @joshwooding
+
+### `@material-ui/styles@v3.0.0-alpha.8`
+
+- [styles] Add test case for class extension with classes prop (#14127) @eps1lon
+- [styles] Document the CSS prefixing strategy on the server (#14139) @eps1lon
+- [styles] Add missing dependency hoist-non-react-statics (#14164) @joglr
+
+### Docs
+
+- [docs] Fix select multiple prop description (#13923) @AkselsLedins
+- [docs] Reduce by /50 the website traffic (#14122) @oliviertassinari
+- [docs] Handle the exactProp usage in the API generation (#14130) @tallpants
+- [docs] Fix minor wording/typo issues (#14142) @eps1lon
+- [docs] Add gadr.io in the showcase (#14128) @clabbeaf
+- [docs] Fix deprecated Typography variants warning in demos (#14156) @joshwooding
+- [docs] Add 5 sites to Showcase, simplify image paths (#14154) @mbrookes
+- [docs] Add polyfill suggestion to ButtonBase (#14158) @ianschmitz
+- [docs] Add a new site to showcase (#14163) @ValleyZw
+- [docs] Update Tooltip info on prop spread (#14165) @e-x-wilson
+- [docs] Fix typo in click-anyway-listener-zh.md (#14118) @Wu-Qijun
+- [docs] Update example projects with Material Sense (#14168) @alexanmtz
+- [docs] Icon name consistency (#14171) @harvey56
+- [docs] Add notes about next branch (#14151) @eps1lon
+- [docs] Add Yakaz to homepage, backers & readme (#14180) @mbrookes
+
+### Core
+
+- [core] Remove unnecessary plugins in .eslintrc (#14161) @WebDeg-Brian
+- [core] Fix the CDN release (#14172) @oliviertassinari
+- [core] Remove unnecessary rules in .eslintrc (#14173) @WebDeg-Brian
+
+## 3.8.3
+###### *Jan 9, 2019*
+
+Big thanks to the 5 contributors who made this release possible!
+
+We are making a quick release to fix an important TypeScript regression.
+
+### `@material-ui/core@v3.8.3`
+
+- [InputBase] Fix the `InputBaseComponentProps` type (#14082) @franklixuefei
+- [Link] Add a Link component (#14093) @joshwooding
+- [core] Fix jss v10 types being used (#14117) @eps1lon
+
+### Docs
+
+- [themes] Fix typo on Onepirate Forgot Password page (#14112) @mbrookes
+- [docs] Fix codesandbox examples with React Hooks (#14116) @asokani
+
+## 3.8.2
+###### *Jan 7, 2019*
+
+Big thanks to the 20 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 📝 Add 36 new sites in the showcase (#14083) @mbrookes.
+- And many more 🐛 bug fixes and 📝 documentation improvements.
+
+### `@material-ui/core@v3.8.2`
+
+- [TableCell] Add align to the TypeScript definition (#14046) @rfbotto
+- [withWidth] Add TypeScript definitions for options (#14054) @anthotsang
+- [Button] Fix vertical alignment of text (#14051) @joshwooding
+- [Tabs] Update scrollable property description (#14059) @jmcpeak
+- [Tabs] Add standard variant (#14067) @oliviertassinari
+- [RadioGroup] Support defaultValue in uncontrolled mode (#14092) @Slessi
+- [core] Relax @babel/runtime version to ^7.2.0 (#14096) @NMinhNguyen
+- [MenuList] Wrap focus by default, add disableListWrap (#14100) @dallin-christensen
+
+### `@material-ui/icons@v3.0.2`
+
+- [core] Relax @babel/runtime version to ^7.2.0 (#14096) @NMinhNguyen
+
+### `@material-ui/lab@v3.0.0-alpha.28`
+
+- [core] Relax @babel/runtime version to ^7.2.0 (#14096) @NMinhNguyen
+
+### `@material-ui/styles@v3.0.0-alpha.7`
+
+- [styles] Add a note about the backward compatibility (#14047) @oliviertassinari
+- [styles] Change dangerouslyUseGlobalCSS to only affect static style sheets (#14089) @joshwooding
+- [styles] Upgrade JSS to 10.0.0-alpha.7 (#14090) @oliviertassinari
+- [core] Relax @babel/runtime version to ^7.2.0 (#14096) @NMinhNguyen
+
+### `@material-ui/system@v3.0.0-alpha.1`
+
+- [core] Relax @babel/runtime version to ^7.2.0 (#14096) @NMinhNguyen
+
+### `@material-ui/utils@v3.0.0-alpha.3`
+
+- [core] Relax @babel/runtime version to ^7.2.0 (#14096) @NMinhNguyen
+
+### `@material-ui/docs@v3.0.0-alpha.9`
+
+- [core] Relax @babel/runtime version to ^7.2.0 (#14096) @NMinhNguyen
+
+### Docs
+
+- [docs] Fix demo iframe styling in Firefox (#14056) @joshwooding
+- [docs] CSS to MUI loader documentation updated (#14060) @Kaliyani
+- [docs] Fix spelling mistake in Premium themes footer (#14071) @nikhilem
+- [docs] Update showcase with 36 new sites (#14083) @mbrookes
+- [docs] Update URL for @material-ui/system (#14043) @NMinhNguyen
+- [docs] Add complementary form building project (#14081) @skirunman
+- [docs] Update broken link to cssinjs.org in css-in-js (#14080) @valerieernst
+- [docs] Tweeper theme (#14034) @siriwatknp
+- [docs] Add Code Typing Tutor to Showcase (#14061) @kulakowka
+- [docs] Improve the system variant demo (#14091) @oliviertassinari
+- [docs] Add PhotoUtils to Showcase (#14098) @Maxim-Gurin
+- [docs] Add GovX to Showcase, move Onepixel (#14094) @mbrookes
+- [docs] Simplify the color documentation page (#14103) @oliviertassinari
+- [docs] Correct API typos (#14104) @nitayneeman
+- [docs] Add Tidelift security link to README (#14108) @mbrookes
+- [docs] Showcase, reorder based on SimilarWeb Global Rank (#14106) @mbrookes
+
+### Core
+
+- [core] Fix multiline deprecatedPropType (#14049) @joshwooding
+- [core] Remove opinionated will-change usage (#14036) @joshwooding
+- [core] Update benchmark (#14065) @GuillaumeCisco
+- [test] Use yarn frozen lockfile (#14050) @rosskevin
+
+## 3.8.1
+###### *Dec 30, 2018*
+
+### `@material-ui/core@v3.8.1`
+
+- Fix utils.chainPropTypes issue
+
+### `@material-ui/styles@v3.0.0-alpha.6`
+
+- Fix utils.chainPropTypes issue
+
+### `@material-ui/lab@v3.0.0-alpha.27`
+
+- Fix utils.chainPropTypes issue
+
+### `@material-ui/utils@v3.0.0-alpha.2`
+
+- Fix utils.chainPropTypes issue
+
+## 3.8.0
+###### *Dec 30, 2018*
+
+Big thanks to the 15 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- System package 💎 & Box component 🛠️
+- Demos 100% powered by React hooks ⚛️ (#13497) @adeelibr
+- Massive speed-up of the SSR performance 🚀
+- A new Instagram demo theme 💅 https://material-ui.com/premium-themes/instapaper/
+- And many more 🐛 bug fixes and 📝 documentation improvements.
+
+### `@material-ui/core@v3.8.0`
+
+#### Deprecations
+
+- [Tabs] Add variant prop and deprecate fullWidth and scrollable props (#13980)
+
+The Tabs `fullWidth` and `scrollable` properties can't be used at the same time. The API change prevents any awkward usage.
+
+```diff
+-
++
+```
+
+#### Changes
+
+- [Fab] Add styles to make size property work with extended property (#13973) @rfbotto
+- [CardHeader] Change action element to have a fixed right margin (#13992) @inv8der
+- [SvgIcon] Add createSvgIcon type definition (#13994) @yifei-fu
+- [ExpansionPanel] Add customized demo (#13998) @rfbotto
+- [Button] Fix vertical text alignment by reducing padding (#13931) @adipascu
+- [Card] Update the action spacing to better match the spec (#14005) @oliviertassinari
+- [LinearProgress] Change height from 5 to 4 pixels (#14009) @almondj
+- [Modal] Add cross references from Modal docs to other components (#14025) @ryancogswell
+- [Tabs] Fix infinite loop in the scroll button logic (#14033) @joshwooding
+- [styles] Fix component animations (#14035) @joshwooding
+
+### `@material-ui/system@v3.0.0-alpha.0`
+
+- @material-ui/system (#13632) @oliviertassinari
+- [system] Fix responsivePropType typo (#14011) @eps1lon
+- [styles] Add defaultTheme option for makeStyles (#14032) @joshwooding
+
+### `@material-ui/styles@v3.0.0-alpha.5`
+
+- [styles] Upgrade JSS to v10-alpha (#14006) @oliviertassinari
+- [styles] Hash the classnames (#14013) @oliviertassinari
+- [styles] Fix TypeScript throwing in makeStyles with no props required (#14019) @eps1lon
+
+### Docs
+
+- [examples] Add nextjs-hooks-with-typescript (#13981) @virzak
+- [docs] Theme usage with styled-components (#13999) @oliviertassinari
+- [docs] Update the emotion documentation (#14001) @oliviertassinari
+- [docs] Duplicate all the demos with the React Hooks API (#13497) @adeelibr
+- [docs] Set react-jss version in nextjs example (#14015) @goofiw
+- [docs] Fix fullWidth deprecation warnings (#14010) @oliviertassinari
+- [docs] Add note on archived components (#14000) @rudolfolah
+- [docs] Add Instagram theme (#14007) @siriwatknp
+- [docs] Removed focus outline on modal demo (#14022) @sebasrodriguez
+- [styles] Document withStyles defaultTheme option (#14029) @joshwooding
+- [docs] Update the CodeFund embed script (#14031) @oliviertassinari
+
+### Core
+
+- [core] Fix running docs:api on Windows and other minor spelling mistakes (#13989) @joshwooding
+- [core] Sanitize the benchmark (#14012) @oliviertassinari
+
+## 3.7.1
+###### *Dec 22, 2018*
+
+Big thanks to the 15 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- ⚛️ Introduce a new useMediaQuery hook (#13867) @joshwooding
+https://material-ui.com/layout/use-media-query
+- ⛄️ Support uncontrolled RadioGroup mode (#13929) @rfbotto
+- And many more 🐛 bug fixes and 📝 documentation improvements.
+
+### `@material-ui/core@v3.7.1`
+
+- [Slide] Remove direction from being passed on to children (#13930) @rfbotto
+- [Dialog] Allow use of custom className under PaperProps (#13935) @eladhayun
+- [Input] Check custom input inputRef implementation (#13934) @henrik1234
+- [BottomNavigation] Add component prop (#13960) @lychyi
+- [TextField] Add Solo Field demo (#13945) @joshwooding
+- [RadioGroup] Support uncontrolled mode (#13929) @rfbotto
+- [TextField] Reword solo textfield documentation (#13970) @joshwooding
+- [layout] Add new useMediaQuery hook (#13867) @joshwooding
+- [Tab] Remove font size change logic (#13969) @rfbotto
+- [Autocomplete] Update react-select demo to have isClearable set to true (#13975) @rfbotto
+
+### Docs
+
+- [docs] Fix Typo in BottomNavigationAction label (#13943) @ovidiumihaibelciug
+- [docs] Update album page-layout preview image album.png (#13946) @dvorwak
+- [docs] Add a next.js demo with hooks (#13920) @oliviertassinari
+- [docs] Fix select multiple prop description (91a95d38218459282b381a23653b722493392190) @AkselsLedins
+- [docs] Add AospExtended Download center to showcase (#13956) @ishubhamsingh
+- [docs] Fix i18n page transition (#13947) @unordered
+- [docs] Fix material-ui-pickers codesandbox demo (#13976) @rfbotto
+- [docs] Fix a typo, the word "the" was repeated in Layout Grid (#13983) @sgoldens
+- [docs] Improve demos loading (#13959) @adeelibr
+- [docs] Improve the service-worker logic (#13987) @oliviertassinari
+
+### Core
+
+- [CDN] Fix the UMD build (#13928) @oliviertassinari
+- [ci] Exit with non-zero if argos cli failed (#13954) @eps1lon
+- [core] Upgrade JSS to latest minor version (#13950) @doaboa
+
+## 3.7.0
+###### *Dec 17, 2018*
+
+Big thanks to the 11 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 💅 Update some components to better match the Material specification (#13788, #13827) @bdeloeste @joshwooding.
+- 📅 Add a material-ui-pickers live demo (#13697) @dmtrKovalenko.
+- ⚛️ A first step toward converting all the demos to React Hooks (#13873) @adeelibr.
+- And many more 🐛 bug fixes and 📝 documentation improvements.
+
+### `@material-ui/core@v3.7.0`
+
+#### Deprecations
+
+We are allowing more align variants (left, center, right, inherit, justify).
+Following our [API guideline](https://material-ui.com/guides/api/), we are using an enum over a boolean.
+Keep in mind that monetary or generally number fields **should be right aligned** as that allows
+you to add them up quickly in your head without having to worry about decimals.
+
+```diff
+-
++
+```
+
+- [TableCell] Add align property (#13860) @rfbotto
+
+#### Changes
+
+- [Card][List] Change sub-components to have fixed gutters (#13788) @joshwooding
+- [Button] Fix padding for Text Button variant to adhere to spec (#13827) @bdeloeste
+- [ButtonBase] Add stop ripple on context menu event (#13740) @joshwooding
+- [Menu] Add reason value and update documentation for on close reason (#13877) @rfbotto
+- [Dialog] Add a `PaperComponent ` property & draggable demo (#13879) @rfbotto
+- [Tabs] Correct typo in error message (#13902) @timmydoza
+- [Tooltip] Fix hover display issue (#13911) @oliviertassinari
+
+### `@material-ui/lab@v3.0.0-alpha.26`
+
+- [ToggleButton] Change the classes structure to match the core components convention (#13723) @DonBrody
+
+### `@material-ui/styles@v3.0.0-alpha.4`
+
+- [styles] Remove hoisting of static properties in HOCs (#13698) @eps1lon
+
+### `@material-ui/utils@v3.0.0-alpha.1`
+
+- [utils] Add component propType (#13816) @eps1lon
+
+### Docs
+
+- [docs] Fix search suggestions on dark mode (#13874) @rfbotto
+- [docs] Add accessibility section to selection-controls with demo (#13896) @wyseguyonline
+- [docs] Add support for multiple demo variants e.g JS or Hooks (#13873) @adeelibr
+- [docs] Remove the withRoot HOC (#13909) @oliviertassinari
+- [docs] Add material-ui-pickers in pickers page (#13697) @dmtrKovalenko
+- [docs] Continue #13806 and port back some fix from @system (#13917) @oliviertassinari
+- [docs] Notify that we will do core/MuiThemeProvider -> styles/ThemeProvider (#13910) @Skn0tt
+- [docs] Improve the state override story (#13919) @oliviertassinari
+
+### Core
+
+- [core] 100% remove the prop types (#13859) @oliviertassinari
+- [core] Prefix the errors with Material-UI (#13892) @oliviertassinari
+
+## 3.6.2
+###### *Dec 9, 2018*
+
+Big thanks to the 20 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 🎨 Add a new Onepirate theme demo (#13769) @oliviertassinari
+You can preview it following [this link](https://material-ui.com/premium-themes/paperbase/).
+- 📝 Add virtualized table demo (#13786) @joshwooding
+- 🚀 Avoid unnecessary Table re-rendering (#13832) @petrjaros
+- And many more 🐛 bug fixes and documentation improvements.
+
+### `@material-ui/core@v3.6.2`
+
+- [Tooltip] Supress warning if button is disabled and title is empty (#13785) @rfbotto
+- [Dialog] Warn if className in PaperProps is set (#13797) @eps1lon
+- [TextField] Fix textfield label position when empty (#13791) @Studio384
+- [Popper] Save 7 KB gzipped (for people only using it) (#13804) @oliviertassinari
+- [Modal] Handle modal mount interruption (#13778) @amensouissi
+- [Select] Make value prop required in TypeScript (#13810) @t49tran
+- [Popover] Fix onEntering event propagation (#13821) @ekoeditaa
+- [Input] Make CSS override a bit simpler (#13825) @euharrison
+- [LinearProgress] Add determinate and indeterminate classes to root element (#13828) @alxsnchez
+- [Select] Support native multiple value (#13830) @rfbotto
+- [BottomNavigation] Improve action padding (#13851) @rfbotto
+- [Dialog] Add dialog with close button to demos (#13845) @rfbotto
+- [Tabs] Reduce the bundle size (#13853) @oliviertassinari
+- [Dialog] Add missing TypeScript style rule (#13856) @garredow
+- [Table] Avoid unnecessary re-rendering (#13832) @petrjaros
+
+### `@material-ui/lab@v3.0.0-alpha.25`
+
+- [ToggleButtonGroup] Consider nullish instead of falsy value as no selected value (#13494) @ItamarShDev
+- [Slider] Update SliderClassKey types (#13826) @guiihlopes
+- [SpeedDialAction] Add TooltipClasses prop (#13848) @mbrookes
+- [ToggleButton] Change ToggleButtonGroup non-exclusive default value to an empty array (#13857) @joshwooding
+
+### `@material-ui/styles@v3.0.0-alpha.3`
+
+- [styles] Infer optional props argument for makeStyles in TypeScript (#13815) @oliviertassinari
+
+### Docs
+
+- [docs] Add @eps1lon to the team page (#13768) @oliviertassinari
+- [docs] Add a new onepirate theme (#13769) @oliviertassinari
+- [docs] Link tags HTML vs JSX (#13775) @benbowler
+- [docs] Missing text in docs (#13798) @Skn0tt
+- [docs] Add virtualized table demo (#13786) @joshwooding
+- [docs] Add OpenCollective gold sponsors manually (#13806) @mbrookes
+- [docs] Add example of globally disabling animations (#13805) @joshwooding
+- [docs] Fix KeyboardIcon import name (#13822) @bryantabaird
+- [docs] Force common hoist-non-react-statics version (#13818) @eps1lon
+- [docs] Improve the theme nesting documentation (#13843) @oliviertassinari
+- [docs] Add more details regarding installation of material-ui/styles (#13813) @wilcoschoneveld
+- [docs] Fix broken link anchor (#13862) @mvasin
+
+### Core
+
+- [typescript] Add test case for List type limitations (#13764) @eps1lon
+- [core] Remove unused lint directives (#13766) @eps1lon
+- [test] Fix running tests on Windows (#13852) @joshwooding
+- [core] Upgrade the dependencies (#13858) @oliviertassinari
+
+## 3.6.1
+###### *Dec 1, 2018*
+
+Big thanks to the 15 contributors who made this release possible!
+
+There are no fundamental changes in this version.
+It's a stability release after v3.6.0. It contains tons of bug fixes 🐛.
+
+### `@material-ui/core@v3.6.1`
+
+- [Dialog] Add xl maxWidth and demo component (#13694) @dispix
+- [Dialog] Add missing TypeScript style rule (ddfa8e0215bfe895efcb8da69f1ea3cc3b1370ff) @oliviertassinari
+- [ClickAwayListener] Ignore touchend after touchmove (#13689) @hsimah
+- [Tooltip] Hide native title when disableHoverListener is true (#13690) @joshwooding
+- [withTheme] Fix typography warning (#13707) @jmcpeak
+- [Fab] Add Fab type declaration to index and theme (#13715) @Naturalclar
+- [InputBase] Remove dead disableUnderline property (#13720) @PierreCapo
+- [FilledInput] Fix disableUnderline property (#13719) @ekoeditaa
+- [SwitchBase] Fix error not being thrown when controlled state is changed (#13726) @joshwooding
+- [TextField] Better support select object value (#13730) @yezhi780625
+- [TablePagination] Support native selection (#13737) @jsdev
+- [Modal] Fix concurrency regression (#13743) @oliviertassinari
+- [LinearProgress] Remove dead code (#13749) @ekoeditaa
+- [typescript] Add test case for FormControl type limitations (#13754) @eps1lon
+- [Popover] Handle resize close concurrency issue (#13758) @oliviertassinari
+- [Avatar] Remove truthiness check on childrenProp (#13759) @camilleryr
+
+### `@material-ui/styles@v3.0.0-alpha.2`
+
+- [styles] Add options definitions for makeStyles (#13721) @eps1lon
+- [styles] Loosen props consistency check in styled (#13755) @eps1lon
+
+### Docs
+
+- [docs] Add support for changing react version in codesandbox demos (#13686) @joshwooding
+- [CHANGELOG] Add deprecation notice for Divider (#13700) @eps1lon
+- [docs] Add notistack demo to the snackbar page (#13685) @iamhosseindhv
+- [docs] Remove Grid List dead code (#13731) @akhil-gautam
+- [docs] Reduce the no-results rate on Algolia (#13741) @oliviertassinari
+- [docs] Fix concurrency with Frame demos (#13747) @oliviertassinari
+
+### Core
+
+- [test] Correct the link to the example test (#13709) @mdcanham
+- [styles] Fix tslint false negative with outdated local builds (#13750) @eps1lon
+
+## 3.6.0
+###### *Nov 26, 2018*
+
+Big thanks to the 28 contributors who made this release possible!
+
+The last release was two weeks ago.
+Last weekend, we have missed the release train 🚃.
+As a consequence, this is a dense release.
+
+Here are some highlights ✨:
+
+- 🎨 Add a new Firebase theme demo (#13579) @siriwatknp.
+You can preview it following [this link](https://material-ui.com/premium-themes/paperbase/).
+- ⚛️ Introduce a new Fab component (#13573) @mbrookes.
+- ⛏ Fix more StrictMode warnings (#13590) @eps1lon.
+- And many more 🐛 bug fixes and 📝 documentation improvements.
+
+### `@material-ui/core@v3.6.0`
+
+#### Deprecations
+
+- [Fab] Extract from Button as new component (#13573) @mbrookes
+
+The floating action button doesn't share many styles with the default button component.
+We are extracting the variant into its own component.
+This way, we better isolate the concerns.
+We will remove the FAB styles from the button in v4, making the `Button` component more lightweight, a win for people overriding our styles.
+
+```diff
+-import Button from '@material-ui/core/Button';
++import Fab from '@material-ui/core/Fab';
+
+-
++
+
+-
++
+```
+
+- [Divider] Add support for middle divider by introducing a `variant` prop (#13574) @joshwooding
+
+We are introducing a new variant to the divider component: middle. Following our API guideline, we can no longer use a boolean property, it needs to be an enum, hence the introduction of the variant property.
+
+```diff
+import Divider from '@material-ui/core/Divider';
+
+-
++
+```
+
+#### Changes
+
+- [FormControlLabel] Fix documentation warnings (#13583) @dsbrutha777
+- [ExpansionPanelSummary] Fix event forwarding (#13582) @jmetev1
+- [Button] Move deprecated variants to the end of the list (#13584) @avetisk
+- [FormControl] Use stable context API (#13590) @eps1lon
+- [TablePagination] Improve TypeScript definition (#13601) @xiaoyu-tamu
+- [SwipeableDrawer] Add `SwipeAreaProps` property (#13592) @SerhiiBilyk
+- [ListItem] Add three-line support (#13553) @ntorion
+- [Grid] Fix the IE 11 issue in the demo (7d2070fb388295d38806ecc49717006f34393e74) @oliviertassinari
+- [Zoom] Correct transition delay value of the example (#13645) @t49tran
+- [Tabs] Improve the warning message (#13640) @oliviertassinari
+- [Grow] Condense the demo (#13665) @Thyix
+- [Tooltip] Fix the property forwarding priority (#13667) @oliviertassinari
+- [Modal] Fix the close jump on Windows (#13674) @oliviertassinari
+- [Select] Support object value (#13661) @yezhi780625
+- [Menu] Fix wrong condition (#13675) @dolezel
+
+### `@material-ui/lab@v3.0.0-alpha.24`
+
+- [Slider] Fix sticky slider when mousing off the window then back in (#13479) @gkjohnson
+- [Slider] Fix visual hover state on disabled slider (#13638) @eps1lon
+- [Slider] Add missing thumb TypeScript definition (#13650) @dhiroll
+
+### `@material-ui/styles@v3.0.0-alpha.1`
+
+- [styles] Add TypeScript declarations (#13612) @eps1lon
+
+### `@material-ui/docs@v3.0.0-alpha.8`
+
+- Fix the @material-ui/utils require error.
+
+### Docs
+
+- [docs] Add redirect rule for moved page layout examples (#13588) @mbrookes
+- [docs] Add the selfeducation.app showcase (#13620) @kulakowka
+- [docs] Warn about the Dynamic CSS alpha state (#13619) @WebDeg-Brian
+- [docs] Learn Material-UI (#13624) @oliviertassinari
+- [docs] Add a Firebase example in the premium-theme section (#13579) @siriwatknp
+- [docs] Increase clarity around the usage of font icons (#13628) @JosephMart
+- [docs] Add swimmy.io to showcase page (#13637) @uufish
+- [docs] Correct typo in comment of snackbar, children (#13651) @kobi
+- [docs] Improve Grid limitation description (#13668) @sshevlyagin
+- [docs] Fix theme menu link (#13669) @iamhosseindhv
+- [docs] Change "e; to ' (#13678) @wiktoriatomzik
+- [docs] Restructure the demo based on usage analytics (#13684) @oliviertassinari
+- [docs] Fix typo in URL (#13688) @Malvineous
+
+### Core
+
+- [core] Update dev dependencies (#13626) @oliviertassinari
+- [test] Fix codecov failing on merge commits (#13654) @eps1lon
+- [core] Make prettier run programmatically (#13621) @joshwooding
+- [test] Run unit/integration test on Chrome 41 (#13642) @eps1lon
+- [core] Move unit test commands to their package (#13604) @eps1lon
+
+## 3.5.1
+###### *Nov 13, 2018*
+
+Big thanks to the 13 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- Introduce a new `@material-ui/styles` package 💅 (#13503).
+
+The Material-UI's styling solution has pretty much stayed the same [for the last 12 months](https://github.com/oliviertassinari/a-journey-toward-better-style).
+Some interesting CSS-in-JS libraries like styled-components, emotion or linaria have emerged.
+This new package is a significant step forward. Some of the key features:
+
+ - Supports 4 different APIs: hooks, styled-components, higher-order components and render props.
+ - Allow accessing the component's props from within the style object.
+ - Replace the usage of the old React APIs with the new ones.
+ - 15.0 KB gzipped.
+
+Here is an example: https://codesandbox.io/s/vjzn5z4k77.
+
+```jsx
+import Button from '@material-ui/core/Button';
+import React from 'react';
+import { makeStyles } from '@material-ui/core/styles';
+
+// Like https://github.com/brunobertolini/styled-by
+const styledBy = (property, mapping) => props => mapping[props[property]];
+
+const useStyles = makeStyles({
+ root: {
+ background: styledBy('color', {
+ red: 'linear-gradient(45deg, #FE6B8B 30%, #FF8E53 90%)',
+ blue: 'linear-gradient(45deg, #2196F3 30%, #21CBF3 90%)',
+ }),
+ border: 0,
+ borderRadius: 3,
+ boxShadow: styledBy('color', {
+ red: '0 3px 5px 2px rgba(255, 105, 135, .3)',
+ blue: '0 3px 5px 2px rgba(33, 203, 243, .3)',
+ }),
+ color: 'white',
+ height: 48,
+ padding: '0 30px',
+ },
+});
+
+function MyButton(props) {
+ const { color, ...other } = props;
+ const classes = useStyles(props);
+ return ;
+}
+
+function AdaptingHook() {
+ return (
+
+ Red
+
+
+ Blue
+
+ );
+}
+
+export default AdaptingHook;
+```
+
+*Powered by [JSS](https://github.com/cssinjs/jss).*
+
+- Remove some usages of the old React's APIs (#13487, #13529, #13503) @eps1lon.
+- Add a language menu in the documentation and persist states between repeated visits (#13544, #13567) @mbrookes
+- And many more 🐛 bug fixes and 📝 documentation improvements.
+
+### `@material-ui/core@v3.5.1`
+
+- [OutlinedInput] Remove Firefox workaround (#13519) @Studio384
+- [TextField] Fix style focus issue on mobile (#13511) @ekoeditaa
+- [InputBase] Remove legacy lifecycle methods (#13487) @eps1lon
+- [Chip] Alignment fix (#13536) @izyb
+- [Badge] Add invisible property (#13534) @joshwooding
+- [Table] Use stable context API (#13529) @eps1lon
+- [TablePagination] Allow more rows per pages (#13524) @oliviertassinari
+- [LinearProgress] Fix TypeScript definition (#13562) @AdamMcquiff
+- Add missing brcast dependency @oliviertassinari
+
+### `@material-ui/styles@v3.0.0-alpha.0`
+
+- @material-ui/styles (#13503) @oliviertassinari
+
+### Docs
+
+- [docs] Advanced filter added to the documentation (#13528) @ashkank83
+- [docs] Save one component in the demo (#13537) @levelingup
+- [docs] Make the lab > core dependency more explicit (#13542) @Robindiddams
+- [docs] Remove redundant text (#13547) @EbiEbiEvidence
+- [docs] Add language menu (#13544) @mbrookes
+- [docs] Misc fixes (#13555) @oliviertassinari
+- [docs] Add cookie for persistant colors (#13567) @mbrookes
+
+### Core
+
+- [test] Improve tests related to lists (#13517) @eps1lon
+- [core] Remove recompose/wrapDisplayName usage (#13525) @oliviertassinari
+- [core] Fix the CDN release (#13540) @oliviertassinari
+- [core] Pass import filename through normalizePath function (#13565) @joshwooding
+
+## 3.5.0
+###### *Nov 12, 2018*
+
+*Corrupted, to not use.*
+
+## 3.4.0
+###### *Nov 5, 2018*
+
+Big thanks to the 16 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- ⚛️ Fix some React 16.6.0 warnings in StrictMode (#13498, #13477) @eps1lon.
+- 💅 Improve the customization of the outlined input (#13428) @oliviertassinari.
+- And many more bug fixes and documentation improvements.
+
+### `@material-ui/core@v3.4.0`
+
+- [Autocomplete] Fix react-select input overflow (#13413) @sayfulloev
+- [Drawer] Add a root style rule for consistency (#13418) @KirankumarAmbati
+- [Menu] Fix position regression (#13419) @oliviertassinari
+- [Menu] Add a visual regression test (#13420) @oliviertassinari
+- [Select] Fix focused text colour (#13423) @joshwooding
+- [Tabs] Fix misaligned tab (#13421) @Ang-YC
+- [OutlinedInput] Improve customization (#13428) @oliviertassinari
+- [CircularProgress] Introduce disableShrink property (#13430) @joshwooding
+- [Select] Improve the value comparison function (#13408) @nicolasiensen
+- [InputLabel] Fix InputLabelClassKey (#13445) @eps1lon
+- [createMixins] Use theme spacing unit in gutters (#13452) @zsalzbank
+- [ButtonBase] Update focusVisible ponyfill for shadowRoots (#13483) @jaipe
+- [Table] Add rowspan and colspan examples (#13490) @josgraha
+- [FormControlLabel] Add top and bottom `labelPlacement` property variants (#13499) @JulienMalige
+- [List] Use stable context API (#13498) @eps1lon
+- [SvgIcon] Add shapeRendering property description (#13509) @joshwooding
+
+### `@material-ui/lab@v3.0.0-alpha.23`
+
+- [Slider] Fix hover state not being registered (#13437) @eps1lon
+- [SpeedDial] Add default value to tooltipOpen property (#13458) @joshwooding
+
+### Docs
+
+- [examples] Fix Next.js warning "no title in _document.js" (#13415) @iamhosseindhv
+- [docs] Update misspelled "Interactive" in Tooltip Demo (#13427) @imjaroiswebdev
+- [docs] Fix the scroll functionality of the mini drawer demo (#13460) @nicolasiensen
+- [examples] Update create-react-app examples (#13453) @eps1lon
+- [docs] Add Google Analytics events (#13451) @goldins
+- [docs] Use stable context API (#13477) @eps1lon
+- [docs] Update CONTRIBUTING.md (#13478) @josgraha
+- [docs] Fix material-ui-popup-state IE 11 issue (#13474) @jedwards1211
+- [docs] Add Typography example for MenuItem (#13500) @joshwooding
+- [docs] Reword flexbox limitation (#13508) @joshwooding
+
+### Core
+
+- [core] Ponyfill global (#13426) @TrySound
+- [core] Upgrade dev dependencies (#13429) @oliviertassinari
+
+## 3.3.2
+###### *Oct 27, 2018*
+
+Big thanks to the 17 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 🐛 Fix some important issues with the Modal (#13378, #13389) @TomiCake.
+- 🐛 Fix a Dialog scroll issue (#13409) @Ang-YC.
+- 📝 Full IE 11 support (#13375, #13324) @eps1lon.
+- And many more bug fixes and documentation improvements.
+
+### `@material-ui/core@v3.3.2`
+
+- [Stepper] Fix visual issue on IE 11 (#13375) @oliviertassinari
+- [Modal] Reuse the same reference (#13378) @oliviertassinari
+- [MenuItem] Add disableGutters property (#13329) @adeelibr
+- [FormControl] Issue 13246 revert (#13380) @drkohlipk
+- [theme] Correct augmentColor TypeScript definition (#13376) @sveyret
+- [Table] Change divider color in dark theme (#13395) @Krijovnick
+- [TablePagination] Better color inheritance (#13393) @markselby9
+- [Modal] Fix aria and focus logic (#13389) @TomiCake
+- [Tooltip] Allow to interact with the tooltip (#13305) @jantimon
+- [Dialog] Fix unable to drag scrollbar when scroll="body" (#13409) @Ang-YC
+
+### `@material-ui/lab@v3.0.0-alpha.22`
+
+- [Slider] Improve performance of slider (#13325) @Pajn
+
+### Docs
+
+- [docs] Fix some issue with i18n (#13342) @GFwer
+- [docs] Add polyfill for IE 11 (#13324) @eps1lon
+- [docs] Correct title attribute for Paella recipe card (#13398) @vixmorrigan-redseven
+- [docs] CONTRIBUTING is not read by default (#13400) @eps1lon
+- [docs] Add missing for prop-type (#13401) @mvsmal
+- [docs] aria-owns accepts 'string | undefined' but we feed it 'null' (#13396) @Primajin
+- [docs] Let user know where coming from (#13405) @bekicot
+- [docs] Update Workbox to v3.6.3 (#13392) @msiadak
+- [docs] Better i18n capability (#13410) @oliviertassinari
+
+### Core
+
+- [core] Update overrides type declarations (#13379) @eps1lon
+- [core] Misc of improvements (#13381) @oliviertassinari
+
+## 3.3.1
+###### *Oct 24, 2018*
+
+Big thanks to the 8 contributors who made this release possible!
+
+This is a quick patch after an important regression with the Modal component.
+
+### `@material-ui/core@v3.3.1`
+
+- [Modal] Fix modalRef is null (#13351) @TomiCake
+- [Modal] Add a failling test case (#13350) @universalmind303
+- [Button] Fix styles classes isolation (#13352) @MECarmody
+- [Chip] Control clickable property (#13056) @vilvaathibanpb
+
+### Docs
+
+- [docs] Add material-ui-popup-state examples (#13044) @jedwards1211
+- [docs] Recommend yarn link to test local distribution (#13348) @nicolasiensen
+- [docs] Move the favicon to the root (#13362) @oliviertassinari
+
+## 3.3.0
+###### *Oct 21, 2018*
+
+Big thanks to the 26 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 🐛 Fix some important issues with the Modal (#13082, #13310) @J-Kallunki.
+- 📝 First translations of the documentation in Chinese (#13094) @mbrookes.
+- 📦 Make the Drawer demos usable outside of the box (#13314).
+- And many more bug fixes and documentation improvements.
+
+### `@material-ui/core@v3.3.0`
+
+- [FormHelperText] Error styles should override disabled styles (#13217) @matthewdordal
+- [InputBase] Add 'renderPrefix' and 'onFilled' signatures (#13282) @zheeeng
+- [Drawer] Fix right chevron in persistent demo (#13275) @fabriziocucci
+- [Tabs] Center text within tabs (#13258) @pelotom
+- [ModalManager] Fix aria-hidden of modal current node (#13082) @J-Kallunki
+- [Modal] Restore the focus as fast as possible (#13310) @oliviertassinari
+- [Select] Add a multiple placeholder demo (#13309) @rfbotto
+- [ListItem] Document how you can render a link (#13069) @JulienUsson
+- [Select] Fix NativeSelect's height in FF and Edge (#13326) @pinguinjkeke
+- [FormControl] Added zIndex of 0 to root style (#13327) @drkohlipk
+- [withStyle] Improve the dangerouslyUseGlobalCSS option (#13330) @oliviertassinari
+
+### `@material-ui/lab@v3.0.0-alpha.21`
+
+- [Slider] Fix Jest unmount issue (#13295) @mdartic
+
+### `@material-ui/docs@v3.0.0-alpha.7`
+
+- [withStyle] Improve the dangerouslyUseGlobalCSS option (#13330) @oliviertassinari
+
+### Docs
+
+- [docs] Adds documentation for Circular Progress component (#13266) @mxmcg
+- [docs] Remove usage of non-existent `listItem` jss class (#13269, #13268) @G-Rath
+- [examples] Extend the .gitignore files (#13270) @phiilu
+- [docs] Remove/annotate deprecated button variants (#13280) @eps1lon
+- [docs] Update RTL guide to be more clear (#13181) @wenduzer
+- [docs] Add checklist to PR template (#13225) @eps1lon
+- [docs] Fix markdown formatting (#13284) @rutsky
+- [docs] Fix typo (#13287) @NMinhNguyen
+- [docs] Fixes typos & formatting in GridListTile and GridListTileBar documentation (#13298) @rassek96
+- [docs] Reverse show password logic (#13301) @ShunnyBunny
+- [docs] Some improvements (#13308) @programistka
+- [docs] Clarify on how to use the local distribution in the CONTRIBUTING file (#13312) @nicolasiensen
+- [docs] Refactor CheckboxesGroup to support IE11 (#13316) @simjes
+- [docs] Set the infrastructure for a full page demo (#13314) @oliviertassinari
+- [docs] Fix typos & formatting in filled-input (#13317) @dskiba
+- [docs] Remove usage of non-existent `margin` jss class (#13318) @G-Rath
+- [docs] Fix ad display (#13321) @oliviertassinari
+- [docs] New Crowdin translations (#13094) @mbrookes
+
+### Core
+
+- [core] Fix defaultFontFamily misspelled in createTypography (#13260) @TheBear44
+- [core] Misc of improvements (#13271) @oliviertassinari
+- [core] Upgrade the dev dependencies (#13286) @oliviertassinari
+- [core] Disable the jss vendor plugin server-side (#13285) @oliviertassinari
+- [core] Work toward preventing Googlebot regressions (#13323) @oliviertassinari
+
+## 3.2.2
+###### *Oct 16, 2018*
+
+Big thanks to the 3 contributors who made this release possible!
+This is a quick patch after important regressions.
+
+### `@material-ui/core@v3.2.2`
+
+- [ButtonBase] Fix process is not defined (#13252) @eps1lon
+
+### Core
+
+- [core] Fix deprecated variant (#13254) @oliviertassinari
+- [core] Add a real life benchmark (#13244) @oliviertassinari
+- [core] Only use debounce client-side (#13255) @oliviertassinari
+
+## 3.2.1
+###### *Oct 14, 2018*
+
+Big thanks to the 19 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 🐛 A simpler Typography upgrade story
+- 🚀 Work on the performance server-side (x10) (#13233, #13236)
+- And many more bug fixes and 📝 documentation improvements.
+
+### `@material-ui/core@v3.2.1`
+
+- [DialogContentText] Fix typography deprecation warning with useNextVariants (#13148) @eps1lon
+- [SnackbarContent] Fix invalid dom (#13151) @eps1lon
+- [Autocomplete] Fix the Portal Downshift demo (#13166) @oliviertassinari
+- [SwitchBase] Fix type declarations (#13172) @eps1lon
+- [Switch] Fix stacking context (#13122) @skenbo0916
+- [Radio][Switch] Accept number & bool as value (#13173) @rassek96
+- [Collapse] Show overflow content once entered (#13117) @skenbo0916
+- [Stepper] Forward state properties to StepConnector (#13130) @jmaloon
+- [Typography] Add missing classkey for overline variant (#13187) @eps1lon
+- [Stepper] Prevent overriding Step's props (#13188) @nikhilem
+- [Stepper] We were too greedy, revert (#13192) @oliviertassinari
+- [withWidth] Document the render prop (#13074) @JulienUsson
+- [TextField] Fix/core/input label/declarations and refactor (#13200) @eps1lon
+- [CardActionArea] Fix overflow issue (#13213) @mdsadiq
+- [Typography] Improve the upgrade story (#13214) @oliviertassinari
+- [Snackbar] Remove non supported property `anchorOrigin.vertical=enter` (#13238) @iamhosseindhv
+- [Tabs] Fix IE 11 styling (#13230) @pography
+
+### `@material-ui/lab@v3.0.0-alpha.20`
+
+- [SpeedDialAction] Fix className prop being ignored (#13161) @eps1lon
+- [SpeedDial] Add missing class keys (#13228) @msenevir
+
+### Docs
+
+- [docs] Use typography v2 in examples (#13112) @eps1lon
+- [docs] Add formik-material-ui (#13149) @cliedeman
+- [examples] Fix codesandbox throwing Invalid comparator (#13153) @eps1lon
+- [docs] Keep working on the SEO issues (#13158) @oliviertassinari
+- [docs] Fix select outlined example (#13168) @RichardLindhout
+- [Grid] Refactor prop order for clarity (#13204) @dijonkitchen
+- [docs] Fix typo in Dialog (#13209) @rassek96
+- [Tabs] Remove the href form simple tab example (#13205) @menomanabdulla
+- [docs] Add demo for a bottom app bar (#13030) @adeelibr
+- [docs] Fix a typo in the content that Table normally takes (#13219) @eddiemonge
+- [docs] Change `filled-input` link text to `FilledInput` (#13223) @G-Rath
+- [docs] Add Onepixel to the showcase (#13227) @oliviertassinari
+- [docs] Fix API generation for i18n (#13237) @mbrookes
+- [docs] Keep SEO juice for the other pages (#13240) @oliviertassinari
+
+### Core
+
+- [test] Add visual regression test for SpeedDIal (#13140) @eps1lon
+- [test] Tidelift - skip checking nomnom & os-locale (#13157) @mbrookes
+- [core] Benchmark Material-UI (#13233) @oliviertassinari
+- [core] Introduce JSS caching (#13236) @oliviertassinari
+
+## 3.2.0
+###### *Oct 8, 2018*
+
+Big thanks to the 18 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 💅 Update the Typography implementation to better follow the specification (#12916) @eps1lon.
+- 📝 Enable [translating the documentation into Chinese](https://translate.material-ui.com) @mbrookes.
+- 📝 Fix many SEO issues of the docs.
+- And many more bug fixes 🐛 and documentation improvements.
+
+### `@material-ui/core@v3.2.0`
+
+#### Deprecations
+
+- [Typography] Add typography v2 variants (#12916) @eps1lon
+
+This is a backward compatible change.
+You can opt-in the usage of the new Material Design typography specification.
+To learn more about the upgrade path, follow https://material-ui.com/style/typography/#migration-to-typography-v2.
+
+- [Button] Deprecate flat and raised variant naming (#13113) @eps1lon
+
+This change updates the variant wording to match the one used in the Material Design specification.
+
+```diff
+-
++
+```
+
+```diff
+-
++
+```
+
+#### Changes
+
+- [TextField] Ensure labelWidth is set (#13077) @evanstern
+- [styles] Remove react-jss dependency (#12993) @oliviertassinari
+- [TextField] Fix ClassKey inference for outlined and filled variants (#13060) @eps1lon
+- [Select] Document the filled and outlined variants (#13071) @JulienUsson
+- [Typography] Support incomplete headlineMapping property (#13078) @oliviertassinari
+- [Stepper] Expose connector index to (#13079) @dannycochran
+- [ListItemIcon] Add wrapper `
` element to children (#13067) @izyb
+- [TextField] Fix of Uncaught TypeError: r.inputRef.focus is not a function (#13091) @MustD
+- [InputAdornment] Add missing "variant" prop to types (#13107) @cmfcmf
+- [Textarea] Merge style with calculated height (#13125) @daniel-rabe
+- [Typography] Small improvements (#13129) @oliviertassinari
+- [Typography] Run the e2e tests with the next variant (#13136) @oliviertassinari
+- [Tooltip] Forward the properties to the child element (#13138) @parulgupta26
+- [Tooltip] Prevent onOpen, onClose to pass through (#13139) @eps1lon
+
+### `@material-ui/lab@v3.0.0-alpha.19`
+
+- [SpeedDial] Improve hover intent between Dial and Actions (#13018) @eps1lon
+- [Slider] Fix thumb outline not matching spec (#12967) @eps1lon
+- [SpeedDial] Fix navigation between SpeedDialActions (#12725) @eps1lon
+- [Slider] Lowest value for vertical should be at the bottom (#13090) @eps1lon
+
+### Docs
+
+- [docs] Fix more SEO issues (#13050) @oliviertassinari
+- [docs] Fix even more 301 redirections (#13051) @oliviertassinari
+- [docs] Use typography v1 in examples (#13073) @mikhailsidorov
+- [docs] Add SFR Presse to the Showcase (#13092) @RyudoSynbios
+- [docs] Mark Text fields variants as supported (#13089) @KaRkY
+- [docs] Add internationalization (#13066) @mbrookes
+- [docs] Remove language code for default language for CrowdIn (#13093) @mbrookes
+- [docs] Update SwipeableTextMobileStepper in demos with AutoPlay (#13095) @JayathmaChathurangani
+- [docs] Fix broken link (#13096) @Hocdoc
+- [docs] Use the InputBase component for the AppBar demo (#13102) @oliviertassinari
+- [docs] Adds DropDownMenu to migration guide (#13110) @mxmcg
+- [docs] Warn about the number of inputs allowed in a FormControl (#13108) @matthewdordal
+- [docs] Repurpose page edit button as Chinese l10n call-to-action (#13115) @mbrookes
+- [docs] Fix a IE11 rendering issue (#13118) @oliviertassinari
+- [docs] Link the related projects where it's relevant (#13124) @oliviertassinari
+- [docs] Fix 404 edit button of the versions page (#13127) @oliviertassinari
+- [docs] Add a translation badge to readme, and update URLs (#13128) @mbrookes
+
+### Core
+
+- [core] Add integrity hashes to yarn.lock (#13055) @eps1lon
+- [test] Fail if coverage can't be push (#13084) @eps1lon
+- [core] Remove eslint-spellcheck (#13120) @oliviertassinari
+- [test] Add jsonlint to CI (#13126) @mbrookes
+
+## 3.1.2
+###### *Sep 30, 2018*
+
+Big thanks to the 16 contributors who made this release possible!
+It contains many bug fixes 🐛 and documentation improvements 📝.
+
+### `@material-ui/core@v3.1.2`
+
+- [FormControlLabel] Reverse margins values when labelPlacement="start" (#13007) @IvanoffDan
+- [InputBase] Fix cursor on disabled state (#13008) @itskibo
+- [InputLabel] Add `variant` property to InputLabel type definition (#13009) @chrislambe
+- [StepLabel] Introduce StepIconComponent property (#13003) @semos
+- [StepConnector] Customize connector based on internal states (#13023) @spirosikmd
+- [OutlinedInput] `notched` should be boolean type (#13038) @zheeeng
+- [TextField] Add "pointerEvents: none" to outline and filled variants (#13040) @byronluk
+- [TextField] Fix the recent regressions (#13017) @slipo
+- [Portal] container should allow being 'null' type (#13043) @zheeeng
+
+### `@material-ui/lab@v3.0.0-alpha.18`
+
+#### Breaking Changes
+
+- [Slider] Replace reversed with rtl support on horizontal sliders (#12972)
+
+### `@material-ui/docs@v3.0.0-alpha.6`
+
+- [docs] Defer NProgressBar rendering to the client (e5d757dc8fec9dd6a0951b865dec531528b7f1d0) @oliviertassinari
+
+### Docs
+
+- [docs] Fix typo in grid.md (#12978) @jschnurr
+- [examples] Clean up create-react-app-with-typescript (#12992) @eps1lon
+- [docs] Small spelling correction (#13012) @innovade
+- [docs] Add closing tag in the Popover snippet (#13026) @liesislukas
+- [docs] The Grammar Nazi (#13031) @maciej-gurban
+- [docs] Improve the Gatsby demo (#13041) @oliviertassinari
+- [docs] Fix 3xx and 4xx HTTP statuses (#13046) @oliviertassinari
+- [docs] Fix issues spotted by ahrefs.com (#13047) @oliviertassinari
+
+### Core
+
+- [core] Upgrade the @types/jss dependency to 9.5.6 (#12982) @qvxqvx
+- [core] Upgrade the dev dependencies (#13016) @oliviertassinari
+- [core] Remove redundant class field initializers, save 1% of bundle size (#13022) @RobertPurcea
+- [core] Better assertion (#13035) @oliviertassinari
+
+## 3.1.1
+###### *Sep 24, 2018*
+
+Big thanks to the 21 contributors who made this release possible!
+It contains many bug fixes 🐛 and documentation improvements 📝.
+
+### `@material-ui/core@v3.1.1`
+
+- [TextField] Fix alignment bug in Safari (#12906) @shcherbyakdev
+- [InputLabel] Fix Chrome's autofill (#12926) @PutziSan
+- [Tooltip] Fix unwanted tooltip opening (#12929) @ayubov
+- [TextField] Fix RTL support of outlined (#12939) @RobertPurcea
+- [Button] Make the outlined button border grey when disabled (#12933) @dispix
+- [RootRef] Keep track of the DOM node changes (#12953) @oliviertassinari
+- [Grid] Fix rounding errors (#12952) @RobertPurcea
+- [Tooltip] Back to 100% test coverage (#12954) @oliviertassinari
+- [SwipableDrawer] Don't break when backdrop is null (#12969) @spirosikmd
+- [InputAdornment] Fix flexbox alignment bug for IE (#12975) @oliviertassinari
+- [FilledInput] Update the background color to match the spec (#12977) @adeelibr
+- [ListItem] Fix background color bug on mobile (#12976) @ryusaka
+
+### `@material-ui/lab@v3.0.0-alpha.17`
+
+- [Slider] Remove touchend event listener (#12923) @brian-growratio
+- [SpeedDialAction] Add missing TypeScript property (#12959) @KarimFereidooni
+
+### Docs
+
+- [docs] Make jss insertion point reference the same as html comment (#12896) @emattias
+- [docs] Small fixes (#12904) @oliviertassinari
+- [docs] Add reference to material-ui-theme-editor (#12888) @jdrouet
+- [docs] Add another case to check when SSR fails (#12908) @oliviertassinari
+- [docs] Correct misspelling (dasboard => dashboard) (#12910) @seishan
+- [docs] Use core package for (peer-)dependency badges (#12911) @eps1lon
+- [docs] Display the backers avatars correctly (3057f970a385fc0cf43e6c978c373b847d0d341e) @oliviertassinari
+- [docs] Update themes.md (#12942) @brucegl
+- [docs] Fix documentation error in (#12955) @lukePeavey
+- [docs] Minor style update of the tabs demos (#12958) @dotku
+- [docs] Glamorous is deprecated for emotion (#12963) @oliviertassinari
+- [docs] Add Emotion to style interoperability guide (#12966) @lukePeavey
+- [docs] Fix IconButton Snackbar demos (#12964) @bhalahariharan
+- [docs] Show how to combine OutlinedInput and FilledInput (#12968) @oliviertassinari
+- [docs] Fix Typo in PaymentForm.js (#12971) @n3n
+- [docs] Fix Typo in page-layout-examples (#12974) @n3n
+
+### Core
+
+- [typescript] Improve definitions with strictNullChecks disabled (#12895) @eps1lon
+- [typescript] Remove unused isMuiComponent definition (#12903) @eps1lon
+- [core] Add setRef helper (#12901) @eps1lon
+- [core] Fix umd bundle (#12905) @oliviertassinari
+- [core] Use .browserlistrc as single point of thruth for target env §#12912) @eps1lon
+- [typescript] Add missing `MuiFilledInput` to 'Overrides' (#12938) @marcel-ernst
+
+## 3.1.0
+###### *Sep 16, 2018*
+
+Big thanks to the 24 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- 💅 Add outlined and filled text field variants (#12076) @enagy27.
+- ♿️ Document how to make the icons accessible (#12822).
+- 🐛 Fix a class name generation regression (#12844).
+- And many more bug fixes 🐛 and documentation improvements 📝.
+
+### `@material-ui/core@v3.1.0`
+
+- [Checkbox] Add indeterminateIcon type definition (#12815) @cvanem
+- [Popover] Change to offsetWidth and offsetHeight (#12816) @akaxiaok
+- [styles] Use the same class name generator (#12818) @oliviertassinari
+- [styles] Revert packageId as default option (#12823) @oliviertassinari
+- [withStyles] Fix JSS issues in IE11 in development (#12826) @novascreen
+- [autocomplete] Fix incorrect input font in react-select autocomplete demo (#12828) @wijwoj
+- [withWidth] Prevent Rerendering (#12825) @junhyukee
+- [SvgIcon] Improve accessibility (#12822) @oliviertassinari
+- [CircularProgress] Update missing type definitions (#12835) @gsalisi
+- [styles] Remove the packageId (#12844) @oliviertassinari
+- [Typography] Add inherit and screen reader only (#12837) @oliviertassinari
+- [Select] Test if child passed to onChange handler (#12852) @akaxiaok
+- [TableSortLabel] Remove sort icon when not active (#12874) @markselby9
+- [icons] Add `fontSize` small and large (#12865) @JoshuaLicense
+- [Chip] Add an icon property (#12881) @aretheregods
+- [TextField] Add outlined and filled variants (#12076) @enagy27
+
+### `@material-ui/lab@v3.0.0-alpha.16`
+
+- [Slider] Don't pass component props down to root div (#12842) @mbrookes
+- [Slider] Faster transitions (#12843) @mbrookes
+- [SpeedDial] Fix ARIA & fix duplicate id in docs example (#12846) @mbrookes
+- [SpeedDial] Remove redundant aria-labelledby (#12847) @mbrookes
+- [SpeedDial] Fix not opening on first tap in mobile (#12771) @hashwin
+- [Slider] Feature Custom Icon (#12600) @adeelibr
+
+### Docs
+
+- [docs] Fix the gatsby example (#12817) @oliviertassinari
+- [docs] Fix Typo in Pricing.js (#12821) @enducker
+- [docs] Fix Typo in Checkout.js (#12820) @enducker
+- [docs] Fix typo in popover.md (#12832) @amacleay
+- [docs] Add documentation for css-to-mui-loader (#12841) @mcdougal
+- [docs] Fix ToggleButtons example typography variant (#12845) @mbrookes
+- [docs] Fix very minor typo (Docs - page layout examples) (#12849) @bcapinski
+- [SvgIcon] Fix minor typo in docs (#12848) @iamhosseindhv
+- [docs] Fix typo in blog page layout README (#12868) @sethduncan
+- [docs] Update comparison.md (#12877) @GideonShils
+- [docs] Split test ad networks (#12878) @mbrookes
+- [docs] Customize LinearProgress color (#12883) @mbrn
+
+### Core
+
+- [typescript] Update createGenerateClassName.d.ts (#12824) @Qeneke
+- [github] Make issue templates version agnostic (#12839) @mbrookes
+- [typescript] Fix with* injectors ignoring defaultProps (#12673) @eps1lon
+- [core] Set required yarn version (#12864) @eps1lon
+- [core] Upgrade dev dependencies (#12884) @oliviertassinari
+
+## 3.0.3
+###### *Sep 9, 2018*
+
+Big thanks to the 13 contributors who made this release possible!
+
+### `@material-ui/core@v3.0.3`
+
+- [typescript] Fix ModalClasses prop type on popover (#12761) @YuriiOstapchuk
+- [AppBar] Add position="relative" (#12790) @jgoux
+- [Checkbox] Revert input indeterminate support (#12803) @eps1lon
+- [Checkbox] Indeterminate CSS & DOM helpers (#12804) @oliviertassinari
+- [Chip] Add verticalAlign: 'middle' (#12809) @akaxiaok
+- [autocomplete] Fix delete chip not working on mobile (#12813) @aretheregods
+- [styles] Support multiple withStyles instances (#12814) @oliviertassinari
+
+### `@material-ui/lab@v3.0.0-alpha.15`
+
+- [SpeedDialAction] Update tooltipPlacement propTypes (#12758) @Primajin
+- [ToggleButtons] normalize onChange api (#12549) @eps1lon
+
+### Docs
+
+- [docs] Remove function call from onChange handler (#12785) @snikobonyadrad
+- [docs] Unescapes character in markdown (#12778) @schalkventer
+- [docs] Enable service worker by default as the latest CRA (#12775) @sharils
+- [docs] New DataTable component (#12799) @mbrn
+- [docs] Add AppBar demos with exapandable & primary search fields (#12695) @adeelibr
+- [docs] Simpler AppBar search demos (#12806) @oliviertassinari
+- [docs] Document the shrink status input limitation (#12769) @racingrebel
+
+### Core
+
+- [test] Use yarn offline mirror (#12763) @eps1lon
+- [core] Small changes investigating issues (#12812) @oliviertassinari
+
+## 3.0.2
+###### *Sep 3, 2018*
+
+Big thanks to the 16 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- A documented release strategy (#12752).
+- And many more bug fixes 🐛 and documentation improvements 📝.
+
+### `@material-ui/core@v3.0.2`
+
+- [Tab] Ability change font size of tab (#12706) @adeelibr
+- [typescript] Set default for withStyles' Options generic (#12698) @nmchaves
+- [Dialog] Remove dialog margin when fullScreen=true and scroll=body (#12718) @akaxiaok
+- [Table] Improved sorting in table for demo EnhancedTable (#12736) @adeelibr
+- [Snackbar] Add `ClickAwayListenerProps` property (#12735) @tendermario
+- [IconButton] Fix border radius cutting of badges on IE11 (#12743) @novascreen
+- [Select] Pass child to onChange handler (#12747) @akaxiaok
+- [Input] Fix Input passing inputRef to intrinsic elements (#12719) @eps1lon
+- [withStyles] Better theme.props support (#12750) @oliviertassinari
+- [SwipeableDrawer] Add hysteresis and velocity property (#12722) @jniclas
+
+### `@material-ui/lab@v3.0.0-alpha.14`
+
+#### Breaking Changes
+
+- [ToggleButton] Fix ToggleButtonGroup exports (#12733) @mbrookes
+
+```diff
+-import { ToggleButtonGroup } from '@material-ui/lab/ToggleButton';
++import ToggleButtonGroup from '@material-ui/lab/ToggleButtonGroup';
+```
+
+#### Component Fixes / Enhancements
+
+- [SpeedDialAction] Update tooltipPlacement propTypes (#12730) @Primajin
+- [Slider] Add missing packages (#12745) @GermanBluefox
+- [SpeedDial] Allow tooltip to always be displayed (#12590) @hashwin
+
+### Docs
+
+- [docs] Fix typo in Overrides chapter (#12705) @sanderpost
+- [docs] Improve the Downshift demo (#12703) @oliviertassinari
+- [examples] Fix typing of `withRoot` to accept props (#12712) @mattmccutchen
+- [docs] Fix class name in overrides example (#12717) @manuelkiessling
+- [examples] Fix withRoot accepting any props (#12713) @eps1lon
+- [typescript] Illustrate issue with ambiguous css class names (#12724) @eps1lon
+- [docs] Fix Typo in Page Layout Examples (#12734) @mblodorn
+- [docs] Explain how to pass props down to overridden components (#12716) @manuelkiessling
+- [docs] Generate import examples in API docs (#12720) @jedwards1211
+- [docs] More transparency around the release strategy (#12752) @oliviertassinari
+
+### Core
+
+N/A
+
+## 3.0.1
+###### *Aug 28, 2018*
+
+Big thanks to the 10 contributors who made this release possible!
+
+We are making a quick release after v3.0.0 to patch an incorrect peer dependency.
+It's also a good opportunity to upgrade to the stable release of Babel 7.
+
+### `@material-ui/core@v3.0.1`
+
+- [Checkbox] Improve indeterminate status (#12671) @hareaca
+- [StepLabel] Fix custom icon spacing (#12694) @JiayuanDeng
+- [Chip] Add outlined variant (#12680) @orporan
+- [Stepper] Add a new test case (#12684) @Anugraha123
+- [core] Upgrade the dependencies (#12693) @oliviertassinari
+
+### `@material-ui/icons@v3.0.1`
+
+- [core] Fix for incorrect peer dependency version warning (#12677) @xaviergonz
+- [core] Upgrade the dependencies (#12693) @oliviertassinari
+
+### `@material-ui/lab@v3.0.0-alpha.13`
+
+- [core] Fix for incorrect peer dependency version warning (#12677) @xaviergonz
+- [core] Upgrade the dependencies (#12693) @oliviertassinari
+
+### Docs
+
+- [docs] Typo (#12675) @nazartokar
+- [docs] Update notification link for release 3.0.0 (#12681) @lumatijev
+- [docs] Warn about using withRoot HOC more than one time per page (#12692) @oorestisime
+
+### Core
+
+- [core] Fix for incorrect peer dependency version warning (#12677) @xaviergonz
+- [core] Upgrade the dependencies (#12693) @oliviertassinari
+
+## 3.0.0
+###### *Aug 27, 2018*
+
+Big thanks to the 27 contributors who made this release possible!
+
+We are upgrading the major version of `@material-ui/core` to match the version of `@material-ui/icons`.
+The next major release is planned for [Q1, 2019](https://github.com/mui-org/material-ui/milestone/25).
+
+### Breaking change
+
+- [icons] Save 22 Megabytes from the package (#12662)
+
+Cut the package size by half.
+It should make the npm installation twice as fast.
+It's not OK to have some installation timeout.
+We have removed the `/es` folder.
+
+```diff
+-import AccessAlarm from '@material-ui/icons/es/AccessAlarm';
++import AccessAlarm from '@material-ui/icons/AccessAlarm';
+```
+
+- [core] Drop Firefox 45 support (#12669)
+
+Firefox 52 is the last version supported by Windows XP.
+The market share of Firefox 45 is 0.03%.
+We use the same strategy for Chrome.
+
+#### Component Fixes / Enhancements
+
+- [Input] Improve type checking for inputProps (#12591) @eps1lon
+- [ClickAwayListener] Prevent rerendering (#12613) @shcherbyakdev
+- [Chip] Add missing ChipClassKey values (#12625) @IvanCoronado
+- [Dialog] Add 'lg' support to maxWidth (#12626) @TheMoonDawg
+- [TableSortLabel] Support custom icon component (#12630) @wolfejw86
+- [SvgIcon] Add Icon suffix to SVG icons (#12634) @yordis
+- [Collapse] Fix document for style wrapperInner (#12638) @peter50216
+- [Input] Extract helpers to their own module (#12657) @Pajn
+- [Chip] Add onKeyUp handler for correct behavior (#12660) @markselby9
+- [CardActionArea] Add CardActionArea component (#12624) @yuchi
+- [ListItem] Move the selected prop from MenuItem to ListItem (#12602) @the-question
+
+#### Docs
+
+- [examples] Update ts example to be closer to the official docs (#12593) @eps1lon
+- [docs] Fix a display issue on IE11 (#12599) @oliviertassinari
+- [docs] Warn about checking for version mismatch (#12601) @hluedeke
+- [docs] Consistent content height in Albumn layout example (#12556) @mbrookes
+- [example] Support Gatsby v2 (#12331) @blukai
+- [docs] xlarge = extra-large (#12619) @FarzadSole
+- [docs] Add "Insights" by justaskusers.com to the list of showcases (#12620) @mattes3
+- [docs] Use public api of jss instead of private vars (#12629) @eps1lon
+- [docs] Improve Autocomplete filtering suggestions (#12641) @jorgegorka
+- [docs] Fix IE 11 support (#12650) @oliviertassinari
+- [docs] Fix typos (#12652) @dandv
+- [docs] Use the event.target.checked API systematically (#12644) @chellem
+- [docs] Correct `by and enum` typo in api.md (#12663) @G-Rath
+- [docs] Autocomplete react-select dropdown overlay (#12664) @gerhat
+- [docs] Fix typo in usage.md (#12666) @DeveloperDavo
+
+#### Core
+
+- [core] Better Windows support for the API generation (#12584) @adeelibr
+- [TypeScript] Update SnackbarContent type def to accept action prop as array (#12595) @cngraf
+- [test] Fix the missing libxcursor1 binary (#12611) @oliviertassinari
+- [core] Fix recompose version (#12605) @yamachu
+- [typescript] Fix AnyComponent for functional components (#12589) @vierbergenlars
+- [core] Let's see if the CI catch the issue (#12615) @oliviertassinari
+- [typescript] Use interfaces for typography types (#12616) @pelotom
+- [ci] Consider only files changed on the built branch (#12627) @eps1lon
+- [test] Lint TypeScript definitions (#12637) @eps1lon
+- [core] Upgrade dev dependencies (#12658) @oliviertassinari
+
+#### Lab
+
+- [Slider] Fix memory leaks (#12537) @eps1lon
+- [Slider] Fix transitions (#12531) @eps1lon
+
+## 1.5.1
+###### *Aug 19, 2018*
+
+Big thanks to the 22 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- Upgrade Babel to `v7.0.0-rc.1` (#12581).
+- Document the meta viewport (#12541).
+- And many more bug fixes 🐛 and documentation improvements 📝.
+
+### Breaking change
+
+N/A
+
+#### Component Fixes / Enhancements
+
+- [Tab] Fix fullWidth CSS (#12495) @jankjr
+- [TextField] Fix disabled prop only affecting the Input component (#12489) @WreckedArrow
+- [Table] Sync typings (#12503) @franklixuefei
+- [Table] Remove padding from getting spread to native element (#12505) @JoshuaLicense
+- [Select] Accept boolean (#12522) @oliviertassinari
+- [Avatar] Prepare Preact support (#12519) @jorgegorka
+- [Drawer] Change height from 100vh to 100% (#12528) @joemaffei
+- [TextField] Accept boolean (#12538) @palaniichukdmytro
+- [withWidth] Remove broken innerRef (#12542) @oliviertassinari
+- [CardMedia] Add an example with the component property (#12481) @adeelibr
+- [ListSubheader] Add a disableGutters property (#12570) @johannwagner
+- [Dialog] Simplify the DialogContentText implementation (#12577) @oliviertassinari
+- [Popover] Fix wrong getContentAnchorEl definition (#12562) @duvet86
+
+#### Docs
+
+- [docs] Tweak dashboard example nav list heading (#12501) @JoshuaLicense
+- [docs] Fix a typo in the Modal page (#12502) @melaniebcohen
+- [docs] Don't load the ad on mobile (#12509) @oliviertassinari
+- [docs] Fix typo (suot to suit) (#12513) @ratanachai
+- [docs] Fix typo in the icons section (#12514) @PolGuixe
+- [docs] Document breakpoint argument for withMobileDialog (#12521) @nxtman123
+- [docs] Increase SEO potential (#12525) @oliviertassinari
+- [docs] "codestyle" comment typo fix (#12511) @nasiscoe
+- [docs] Document the meta viewport (#12541) @oliviertassinari
+- [docs] Throttle the active toc instead of debouncing (#12543) @oliviertassinari
+- [docs] Add material-ui-next-pickers (#12547) @chingyawhao
+- [docs] Fix the broken Table sorting logic (#12569) @oliviertassinari
+- [docs] Link a new Menu demo (#12574) @pierrelstan
+- [docs] Improve TypeScript issue assistance (#12560) @eps1lon
+- [docs] Add notistack in the related projects (#12578) @oliviertassinari
+
+#### Core
+
+- [typescript] Style typing improvements (#12492) @pelotom
+- [core] Should run the tests when needed (#12510) @oliviertassinari
+- [core] Add MuiTableBody to theme overrides (#12550) @pvdstel
+- [test] Disable CircleCI cache (#12573) @oliviertassinari
+- [test] Introduce prettier into CI pipeline (#12564) @eps1lon
+- [test] Fix prettier ci task with multiple changed files (#12579) @eps1lon
+- [core] Upgrade to babel@rc.1 (#12581) @oliviertassinari
+
+#### Lab
+
+- [SpeedDial] Fix invalid prop direction supplied (#12533) @eps1lon
+- [SpeedDial] Remove dead code from test (#12545) @mbrookes
+- [Slider] Fix failing handler test (#12535) @eps1lon
+
+## 1.5.0
+###### *Aug 12, 2018*
+
+Big thanks to the 23 contributors who made this release possible!
+This is a dense release!
+
+Here are some highlights ✨:
+
+- Introduce a "page layout examples" section in the documentation. Don't miss it! (#12410) @mbrookes.
+- Add a Table Of Contents for each page of the documentation (#12368).
+- Improve the TypeScript autocomplete for CSS properties (#12456) @eps1lon.
+- And many more bug fixes 🐛 and documentation improvements 📝.
+
+### Breaking change
+
+N/A
+
+#### Component Fixes / Enhancements
+
+- [Select] Accept boolean (#12429) @oliviertassinari
+- [icons] Resize svg icons (#12356) @the-question
+- [Collapse] Add all class keys to the types (#12436) @stuharvey
+- [Table] Padding feature (#12415) @aseem191
+- [icons] Remove clip-path from all icons (#12452) @kevinnorris
+- [Input] Use the color from the theme (#12458) @adeelibr
+- [NoSrr] Add a defer property (#12462) @oliviertassinari
+- [icons] Remove unused clipPath definitions from icons (#12465) @kevinnorris
+- [Popover] Allow to pass repeated props to modal (#12459) @davibq
+- [SelectInput] Add "name" to event.target for onBlur callback (#12467) @hassan-zaheer
+- [Button] Make the outlined variant better leverage the color (#12473) @essuraj
+- [Tooltip] Hide the tooltip as soon as an exit event triggers (#12488) @oliviertassinari
+
+#### Docs
+
+- [docs] Fix react-select multiselection wrapping (#12412) @henkvhest
+- [docs] Add some Render Props demos (#12366) @jedwards1211
+- [docs] Add example layouts (#12410) @mbrookes
+- [core] Fix some errors when porting demos to TypeScript (#12417) @PavelPZ
+- [docs] Standardise the wording between icon docs and readme (#12425) @mbrookes
+- [docs] Improve the withTheme example (#12428) @oliviertassinari
+- [docs] Rename layouts to page-layout-examples + minor fixes (#12430) @mbrookes
+- [docs] Ensure `inputRef` is wired up to react-number-format's input (#12444) @NMinhNguyen
+- [docs] Expand on the JSS and class name generator docs (#12447) @atrauzzi
+- [docs] Better autocomplete docs (#12451) @oliviertassinari
+- [docs] Fix typo (#12454) @metropt
+- [docs] Better descriptive Table demos (#12464) @bala121286
+- [README] New iteration on the backers (#12475) @oliviertassinari
+- [docs] Font vs SVG. Which approach to use? (#12466) @PolGuixe
+- [docs] Add a Table Of Contents (#12368) @oliviertassinari
+- [docs] Fix link to twitter account (#12482) @patcito
+- [docs] Try CodeFund over Carbon (#12484) @oliviertassinari
+
+#### Core
+
+- [typescript] Synced with PR #12373 (#12439) @franklixuefei
+- [core] Add hoverOpacity to TypeAction interface (#12455) @hassan-zaheer
+- [core] Save some bytes in the super() logic (#12476) @oliviertassinari
+- [core] Upgrade the dependencies (#12477) @oliviertassinari
+- [typescript] improve autocomplete for css properties in createStyles (#12456) @eps1lon
+
+#### Lab
+
+- [SpeedDialAction] Allow a tooltip placement prop (#12244) @seanchambo
+- [lab] Depend on @babel/runtime (#12470) @goto-bus-stop
+
+## 1.4.3
+###### *Aug 4, 2018*
+
+Big thanks to the 15 contributors who made this release possible!
+This release focuses on bug fixes 🐛.
+
+### Breaking change
+
+N/A
+
+#### Component Fixes / Enhancements
+
+- [Tooltip] Add default css max-width and customization demo (#12338) @simoami
+- [Step] Add completed class to the root (#12339) @kylezinter
+- [Drawer] Add touchAction: 'none' on the Overlay to disable scrolling (#12350) @jlascoleassi
+- [Chip] Remove reference to checked prop in the docs (#12375) @DavidThorpe71
+- [styles] Improve the dangerouslyUseGlobalCSS story (#12389) @oliviertassinari
+- [Tooltip] Fix autoFocus issue (#12372) @Mangatt
+- [FormLabel] [FormHelperText] classes keys (#12373) @Mangatt
+- [Chip] Add color prop to chip component (#12378) @itelo
+- [Tooltip] Fix hover issues (#12394) @aseem191
+- [palette] Better defensive logic (#12402) @oliviertassinari
+- [MobileStepper] Add a LinearProgressProps property (#12404) @oliviertassinari
+- [Textarea] Add back defensive branch logic (#12406) @kanzelm3
+
+#### Docs
+
+- [docs] Add markdown code to Interactive Grid (#12333) @itelo
+- [docs] Document how to use the Select with a label and a placeholder (#12342) @oliviertassinari
+- [docs] Improve the Table sorting logic (#12348) @xkenmon
+- [docs] Fix contast => contrast typo (#12395) @chayeoi
+- [docs] Fix two typos in Lists.md (#12397) @adl
+- [docs] Fix ChipPlayground generated code (#12401) @mbrookes
+- [docs] Add Tomahawk boilerplate to the related projects (#12393) @goemen
+
+#### Core
+
+- [core] Upgrade the dependencies (#12409) @oliviertassinari
+
+#### Lab
+
+- [ToggleButton] Fix TypeScript definition (#12360) @itskibo
+
+## 1.4.2
+###### *Jul 29, 2018*
+
+Big thanks to the 22 contributors who made this release possible!
+I hope we will soon beat our previous record: 30 contributors in a single week.
+
+Here are some highlights ✨:
+
+- Upgrade the react-select demo to v2 (#12307) @oliviertassinari.
+- Document a new "No SSR" component (#12317) @oliviertassinari.
+- Add a label placement property for FormControlLabel (#12303) @mbrookes.
+- And many more bug fixes 🐛 and documentation improvements 📝.
+
+### Breaking change
+
+N/A
+
+#### Component Fixes / Enhancements
+
+- [Tabs] Reduce the bundle size (#12256) @oliviertassinari
+- [Menu] Add null as acceptable value of anchorEl (#12249) @LAITONEN
+- [Popper] Increase the minimal required version of popper.js (#12258) @Tuaniwan
+- [TablePagination] Add missing selectIcon ClassKey definition (#12267) @spallister
+- [Tooltip] Add some docs for disabled elements (#12265) @kamranayub
+- [Tabs] Prevent unwanted auto-move in scrolling tabs (#12276) @novascreen
+- [Button] Fix icon positioning on Safari iOS (#12278) @KevinAsher
+- [Modal] Add onRendered to ModalProps (#12284) @rynobax
+- [Card] Align icons with ListItem (#12292) @mbrookes
+- [TextField] Improve onChange type definition (#12294) @t49tran
+- [DialogContentText] Inherit TypographyProps in type definition (#12301) @charlieduong94
+- [FormControlLabel] Add labelPlacement prop (#12303) @mbrookes
+- [FormControlLabel] Correct the style description (#12304) @mbrookes
+- [Typography] Add color=textPrimary option (#12310) @oliviertassinari
+- [Tooltip] Remove an undocumented API (#12312) @oliviertassinari
+- [RootRef] Apply the same logic as React Ref (#12311) @oliviertassinari
+- [Grid] Document the nested capability (#12313) @oliviertassinari
+- [SwipeableDrawer] Fix SSR issue on iOS (#12314) @oliviertassinari
+- [Snackbar] Fix anchorOrigin types (#12316) @nmchaves
+- [LinearProgress] Fix wrong style rule usage (#12319) @agentmilindu
+- [Popper] Fix modifiers appearing as attribute of div (#12329) @skeithtan
+
+#### Docs
+
+- [docs] Fix typo (#12248) @johnjacobkenny
+- [docs] Add typekev.com to showcase page (#12243) @typekev
+- [docs] Fix escape "|" char (#12254) @TheRusskiy
+- [docs] Fix logo in the README (#12273) @antoinerousseau
+- [docs] Add an example with Popper and react-autosuggest (#12280) @oliviertassinari
+- [docs] Add Complementary Project - create-mui-theme (#12269) @UsulPro
+- [docs] Add a note on the name option and dangerouslyUseGlobalCSS (#12281) @oliviertassinari
+- [docs] Improve ListItem and BottomNavigationAction docs (#12295) @vkentta
+- [docs] Add placeholder for search bar (#12296) @DheenodaraRao
+- [docs] Upgrade react-select (#12307) @oliviertassinari
+- [docs] Use data to improve the ranking (#12315) @oliviertassinari
+- [docs] Document NoSsr (#12317) @oliviertassinari
+- [docs] Improve the docs to have matches (#12322) @oliviertassinari
+
+#### Core
+
+- [core] Upgrade dev dependencies (#12323) @oliviertassinari
+
+#### Lab
+
+- [Slider] Increase color specification conformance (#12245) @eps1lon
+- [SpeedDial] Prevent opening when hovering closed actions (#12241) @mbrookes
+- [Slider] Remove visual zero state from thumb (#12242) @eps1lon
+
+## 1.4.1
+###### *Jul 22, 2018*
+
+Big thanks to the 15 contributors who made this release possible!
+
+Here are some highlights ✨:
+
+- The CSS API is now fully documented (#12174) @mbrookes.
+
+| Name | Description |
+|:-----|:------------|
+| root | Styles applied to the root element.
+| label | Styles applied to the span element that wraps the children.
+| … | …
+
+- After many iterations, we are happy to announce `@material-ui/icons` v2.0.0 💃.
+With this version, you can take advantage of all the icons recently released by Google:
+https://material.io/tools/icons/. There are more than 5,000 icons.
+(#12016, #12036, #12170, #12111, #12225)
+
+- The 1.4.0 release of Material-UI has introduced a new implementation of the Tooltip and Popper component.
+This release fixes a lot of issues following the rewrite (#12168, #12161, #12194, #12223, #12218).
+Thank you for reporting all these problems 🐛. Hopefully, it's very stable now.
+
+- Creative Tim has just completed [their second Material-UI theme](https://www.creative-tim.com/product/material-kit-pro-react?partner=104080) 💅.
+It's an important milestone for the themability of Material-UI.
+We are going to keep working on adding more themes to the list.
+
+### Breaking change
+
+@material-ui/icons@2.0.0 allows React users to take advantage of the icons revamp the Material Design Team has been recently released. Some icons have been removed, ~150 new icons have been added, and some icons have been renamed. There are also currently some issues with the size of certain icons. Please refer to #12016 for further details.
+
+#### Component Fixes / Enhancements
+
+- [Tab] Fix maxWidth issue with fullWidth mode (#12158) @chenop
+- [Popper] Update TypeScript definitions (#12161) @Slessi
+- [CardHeader] Add typography/props controls like in ListItemText (#12166) @chenop
+- [Tooltip] Fix some new issues (#12168) @oliviertassinari
+- [icons] New iteration (#12170) @oliviertassinari
+- [icons] Remove fill attribute from some icons (#12111) @ChristiaanScheermeijer
+- [Popper] Fix the transition in the demos (#12194) @oliviertassinari
+- [Modal] Ignore if the event prevent default is called (#12202) @oliviertassinari
+- [Grid] Add "space-evenly" value for justify prop (#12213) @iain-b
+- [Grow] Fix scroll on entered (#12199) @stephenway
+- [Popper] Fix update logic (#12218) @oliviertassinari
+- [Badge] Increase readability (#12221) @oliviertassinari
+- [styles] Increase the class name lenght limit before raising (#12222) @oliviertassinari
+- [icons] Fix SVG path precision issue (#12225) @ChristiaanScheermeijer
+- [Popper] Typing and documentation (#12223) @dispix
+- [Select] Simpler onChange event.target logic (#12231) @oliviertassinari
+- [input] Forward required, readOnly and autoFocus (#12234) @sakulstra
+- [HOC] Add `innerRef` to withWidth and withTheme (#12236) @itelo
+- [Textarea] Simplification of the code (#12238) @oliviertassinari
+- [Tabs] Small changes investigating #11624 (#12239) @oliviertassinari
+
+#### Docs
+
+- [docs] Add Toggle Selection Control to 'Migration From v0.x' Document (#12149) @shabareesh
+- [docs] Add Menu Item to 'Migration From v0.x' Document (#12150) @shabareesh
+- [docs] New ISSUE_TEMPLATE (#12148) @oliviertassinari
+- [docs] Add Font Icon to 'Migration From v0.x' Document (#12151) @shabareesh
+- [docs] copyedit: typo in testing.md (#12155) @cldellow
+- [docs] Document the CSS API (#12174) @mbrookes
+- [docs] An iteration on the SSR Troubleshooting section (#12229) @oliviertassinari
+
+#### Core
+
+- [core] Upgrade dev dependencies (#12156) @oliviertassinari
+- [core] Add missing unwrap export to test-utils type definition (#12184) @kallebornemark
+- [test] Conditional tests (#12191) @oliviertassinari
+- [core] Fix babel plugin name (#12209) @oliviertassinari
+- [core] Upgrade the dev dependencies (#12220) @oliviertassinari
+- [core] Rename node to ref (#12235) @oliviertassinari
+
+#### Lab
+
+- [Slider] Fix TypeScript typings (#12173) @eps1lon
+- [SpeedDial] Fix SpeedDialAction dark theme (#12230) @mbrookes
+- [lab] Build and export fixes (#12233) @goto-bus-stop
+
+## 1.4.0
+###### *Jul 14, 2018*
+
+Big thanks to the 21 contributors who made this release possible.
+Here are some highlights ✨:
+
+- Rework the Tooltip implementation (#12085)
+
+The component is -1kB gzipped smaller and much faster.
+You can render 100 of them on a page with no issue.
+It's also introducing a new component: Popper, an abstraction on top of [Popper.js](https://github.com/FezVrasta/popper.js).
+
+- Add color selector (#12053) @mbrookes
+
+You can now dynamically change the theme of the whole documentation site.
+
+- Add a new toggle buttons component (#10144) @phallguy
+- And many more bug fixes and documentation improvements.
+
+### Breaking change
+
+N/A
+
+#### Component Fixes / Enhancements
+
+- [Icons] Misc fixes and optimizations (#12036) @mbrookes
+- [Tooltip] Rework the implementation (#12085) @oliviertassinari
+- [Snackbar] Fix SnackbarOrigin TypeScript definition (#12083) @tzfrs
+- [Dialog] Fix action width issue (#12081) @mim-Armand
+- [theme] Use `isPlainObject` to avoid dropping prototypes (#12100) @kivlor
+- [Popper] Add a modifiers property (#12108) @oliviertassinari
+- [Button] Fix IE11 support of CSS 'width:initial' (#12119) @koshea
+- [FormControlLabel] Add a failing test case and fix it (#12141) @oliviertassinari
+- [Toolbar] Add dense variant (#12075) @srilman
+- [Typography] Fix display2 cuts off the bottom of a 'g' (#12146) @Skaronator
+
+#### Docs
+
+- [docs] Fix typo (#12046) @AlexanderLukin
+- [docs] Fix wrong icon names (#12042) @AlexanderLukin
+- [docs] Fix typo (#12050) @AlexanderLukin
+- [docs] Fix Typo (#12064) @johnjacobkenny
+- [docs] Add known issues/limitations for progress animations (#12062) @HRK44
+- [docs] Correct the normalize-function (#12066) @fauskanger
+- [docs] Add react-media-material-ui in the related projects (#12068) @jedwards1211
+- [docs] Fix SSR example to support production mode (#12080)
+- [docs] Fix Theme nesting demo in codesandbox (#12097) @oliviertassinari
+- [docs] Use the de-structured "children" variable (#12104) @jzhang729
+- [docs] Add Tidelift banner (#12099) @oliviertassinari
+- [docs] Fix some broken links (#12107) @oliviertassinari
+- [docs] Preconnect to load the fonts (#12113) @oliviertassinari
+- [docs] Improve grid demo descriptions (#12112) @mbrookes
+- [docs] Add color selector (#12053) @mbrookes
+- [docs] Add Tentu in the showcase (#12122) @urkopineda
+- [docs] Add Subheader to v0.x migration guide (#12144) @shabareesh
+- [docs] Add a comment that React 16.3.0 is a peer dependency (#12145) @chenop
+- [Table] Document the CSS API (#12147) @chenop
+
+#### Core
+
+- [core] Upgrade the dev dependencies (#12049) @oliviertassinari
+- [core] Improve the prop-types of shape (#12098) @oliviertassinari
+- [core] Upgrade dev dependencies (#12117) @oliviertassinari
+- [core] Error typo fix (#12118) @TheRusskiy
+- [test] Fix Argos-CI flakyness (#12142) @oliviertassinari
+
+#### Lab
+
+- [ToggleButtons] Add toggle buttons (#10144) @phallguy
+- [Slider] Make interaction easier, fix thumb overflow (#11889) @ValentinH
+- [SpeedDial] Inline the Add icon (#12128) @mbrookes
+
+## 1.3.1
+###### *Jul 2, 2018*
+
+Big thanks to the 13 contributors who made this release possible.
+
+Here are some highlights ✨:
+
+- Document the scroll property of the Dialog (#12025).
+- Add a demo with Font Awesome (#12027).
+- And many more bug fixes and documentation improvements.
+
+### Breaking change
+
+N/A
+
+#### Component Fixes / Enhancements
+
+- [Select] Fix some W3C issues (#11983) @oliviertassinari
+- [Icon] Add a fontSize prop which accepts default and inherit (#11986) @sakulstra
+- [Menu] Add prop to disable auto focus (#11984) @th317erd
+- [SvgIcon] Add component property (#11987) @stephenway
+- [GridList] Clean the rendering logic (#11998) @oliviertassinari
+- [Snackbar] Add check for autoHideDuration if equals 0 (#12002) @C-Rodg
+- [Menu] Fix scrolling issue (#12003) @stephenway
+- [Stepper] Merge StepPositionIcon in StepIcon (#12026) @bousejin
+- [Input] Add read only demo (#12024) @oliviertassinari
+- [ExpansionPanelSummary] Add IconButtonProps property (#12035) @dakotamurphyucf
+- [Dialog] Document the scroll property (#12025) @oliviertassinari
+
+#### Docs
+
+- [docs] Use _app.js instead of wrapping every page by withRoot() (#11989) @NikitaVlaznev
+- [docs] Link RootRef in the FAQ (#12005) @scottastrophic
+- [docs] Add Core UI (#12015) @oliviertassinari
+- [docs] Switch autosuggest highlighting (#12019) @TheRusskiy
+- [docs] Small spelling fix (#12028) @danh293
+- [docs] Add a demo with Font Awesome (#12027) @oliviertassinari
+
+#### Core
+
+- [typescript] [createMuiTheme] Fix typings & deepmerge shape (#11993) @franklixuefei
+- [core] Warn about Children.map & Fragment (#12021) @oliviertassinari
+- [core] Remove usage of theme.spacing.unit (#12022) @oliviertassinari
+
+#### Lab
+
+N/A
+
+
+## 1.3.0
+###### *Jun 26, 2018*
+
+Big thanks to the 10 contributors who made this release possible.
+
+Here are some highlights ✨:
+
+- 🔥 Add extended Floating Action Button variant (#11941) @mbrookes.
+- 🔥 Add scroll body handling for the dialog (#11974).
+- 📝 Work on SEO for the components (#11963).
+
+### Breaking change
+
+N/A
+
+#### Component Fixes / Enhancements
+
+- [FormControl] Correct minor typo in text (#11931) @FluentSynergyDW
+- [Grid] Add `auto` to TypeScript definitions (#11933) @woobianca
+- [styles] Safer prefix logic (#11943) @oliviertassinari
+- [Button] Add extended FAB variant (#11941) @mbrookes
+- [styles] Warn when the first argument is wrong (#11953) @oliviertassinari
+- [ClickAwayListener] Handle null child (#11955) @oliviertassinari
+- [theme] Add border-radius to the theme (#11847) @itelo
+- [Dialog] Add a scroll property (#11974) @oliviertassinari
+
+#### Docs
+
+- [Showcase] Add posters galore (react-admin) (#11939) @fzaninotto
+- [docs] Update ts example (#11949) @kevinhughes27
+- [docs] Add Outline docs (#11960) @tomasdev
+- [docs] Do SEO for the components (#11963) @oliviertassinari
+- [docs] Better API wording (#11973) @oliviertassinari
+- [docs] In TypeScript doc, add missing `createStyles` to import (#11975) @Sylphony
+
+#### Core
+
+- [typescript] Fix Typings for disableTouchRipple and allVariants (#11944) @franklixuefei
+- [core] Upgrade the dev dependencies (#11954) @oliviertassinari
+- [core] Upgrade eslint (#11957) @oliviertassinari
+- [core] Upgrade preval (#11958) @oliviertassinari
+- [core] Use Chrome Headless for the tests over PhantomJS (#11961) @oliviertassinari
+
+#### Lab
+
+N/A
+
+## 1.2.3
+###### *Jun 20, 2018*
+
+Big thanks to the 6 contributors who made this release possible.
+
+This release fixes some important regressions.
+We are making it outside of the normal schedule.
+
+### Breaking change
+
+N/A
+
+#### Component Fixes / Enhancements
+
+- [ButtonBase] Fix exception (#11905) @oliviertassinari
+- [NoSSR] Add a fallback property (#11907) @oliviertassinari
+- [Dialog] Add max-height back (#11914) @oliviertassinari
+- [Tooltip] Revert update react-popper (#11920) @oliviertassinari
+- [Select] Fix classes merge issue (#11904) @C-Rodg
+
+#### Docs
+
+- [docs] Document jss-nested rule reference feature (#11901) @i8ramin
+- [docs] Correct markdown example from svg icon (#11922) @GabrielDuarteM
+- [docs] TS decorating reword (#11923) @swpease
+
+#### Core
+
+N/A
+
+#### Lab
+
+- [Slider] Add TypeScript definitions (#11747) @epodivilov
+
+## 1.2.2
+###### *Jun 18, 2018*
+
+Big thanks to the 16 contributors who made this release possible.
+
+Here are some highlights ✨:
+
+- 📝 Document the dynamic override alternatives (#11782) @adeelibr
+- 📝 Document the ClickAwayListener component (#11801).
+- And many more bug fixes 🐛 and documentation improvements 📝.
+
+### Breaking change
+
+N/A
+
+#### Component Fixes / Enhancements
+
+- [ClickAwayListener] Add a demo (#11801) @oliviertassinari
+- [Grid] Add support a auto value (#11804) @oliviertassinari
+- [StepButton] Fix IE 11 flexbox (#11814) @paulnta
+- [styles] Re-add default parameter of string for WithStyles (#11808) @pelotom
+- [SwipeableDrawer] Allow custom style (#11805) @Johann-S
+- [ButtonBase] Corrected the type definitions for the TouchRipple classes (#11818) @C-Rodg
+- [RootRef] Updated main index.js to include RootRef export (#11817) @C-Rodg
+- [typography] Add a `allVariants` key in the theme (#11802) @oliviertassinari
+- [ButtonBase] Add a disableTouchRipple property (#11820) @oliviertassinari
+- [Tabs] Fix calculating tab indicator position (#11825) @ljani
+- [Tabs] Fix IE11 support (#11832) @oliviertassinari
+- [withWidth] Reading initialWidth from the theme (#11831) @kleyson
+- [Tabs] Add support for a `component` property (#11844) @C-Rodg
+- [ListItemText] Detect and avoid re-wrapping Typography (#11849) @jedwards1211
+- [ListItemText] Add primaryTypographyProps and secondaryTypographyProps (#11858) @jedwards1211
+- [Tooltip] Update react-popper (#11862) @oliviertassinari
+- [TableCell] Fix property name (#11870) @marutanm
+- [Modal] Fix removeEventListener (#11875) @DominikSerafin
+- [CircularProgress] Fix wobble (#11886) @oliviertassinari
+- [CircularProgress] End of line shape: use butt (#11888) @Modestas
+- [Select] Fix reflow in render (#11891) @oliviertassinari
+
+#### Docs
+
+- [docs] Add structured data (#11798) @oliviertassinari
+- [docs] Add a link to a CSS-in-JS egghead.io course (98168a2c749d8da2376d6a997145e3622df71bff) @kof
+- [Table] Derive sorted rows from state at render time in demo (#11828) @charlax
+- [docs] Document the dynamic override alternatives (#11782) @adeelibr
+- [docs] Add a Select required example (#11838) @oliviertassinari
+- [docs] Better class names conflict FAQ (#11846) @oliviertassinari
+- [docs] Add a link toward dx-react-chart-material-ui (#11859) @Krijovnick
+- [docs] Fix the Gatsby example (d7fe8c79dc097105fd1c6035b76a4d30666e9080) @oliviertassinari
+- [docs] Update npm downloads badge to point to @material-ui/core (#11590) @davidcalhoun
+- [examples] Add Server Rendering implementation (#11880) @oliviertassinari
+- [docs] Update react-swipeable-views to fix a warning (#11890) @oliviertassinari
+
+#### Core
+
+- [core] Misc (#11797) @oliviertassinari
+- [core] Better `component` prop types (#11863) @jedwards1211
+- [core] Remove some unneeded code (#11873) @oliviertassinari
+- [core] Fix the UMD release (#11878) @oliviertassinari
+- [core] Document the non supported children properties (#11879) @oliviertassinari
+
+#### Labs
+
+N/A
+
+## 1.2.1
+###### *Jun 10, 2018*
+
+Big thanks to the 15 contributors who made this release possible.
+
+Here are some highlights ✨:
+
+- A lot of bug fixes 🐛!
+- Add full `React.createRef` support ⚛️ (#11757) @t49tran.
+- Document the `withWidth()` helper
+
+### Breaking change
+
+N/A
+
+#### Component Fixes / Enhancements
+
+- [Select] Add a placeholder demo (#11706) @oliviertassinari
+- [RootRef] Update RootRef.d.ts (#11708) @franklixuefei
+- [ButtonBase] Document the `type` property (#11728) @C-Rodg
+- [Popover] Fix default value (#11729) @oliviertassinari
+- [withWidth] Second iteration on the component (#11730) @oliviertassinari
+- [transition] Fix IE11 issue in dev mode (#11743) @adeelibr
+- [Tabs] Better flex layout (#11748) @adeelibr
+- [core] Add React.createRef support (#11757) @t49tran
+- [Grid] Improve the dev warnings (#11765) @oliviertassinari
+- [CircularProgress] Fix centering (#11781) @adeelibr
+- [TextField] Bind the focus/blur explicitly (#11789) @oliviertassinari
+- [RadioGroup] Fix onChange chaining (#11793) @oliviertassinari
+
+#### Docs
+
+- [docs] Property !== attribute (#11694) @adeelibr
+- [docs] Add Trafikito.com to showcase (#11716) @liesislukas
+- [docs] Update meetingku image (#11724) @liganok
+- [docs] Improve docs:dev init by ~2 s and HMR by ~200 ms (#11752) @tal952
+- [docs] Change app bar to button on the getting started (#11756) @Simperfit
+- [docs] Add React Most Wanted to related projects (#11753) @TarikHuber
+- [docs] Error in example in Migration From v0.x Guide (#11771) @AkselsLedins
+- [docs] Simple Grammar Fix (#11785) @jeff-kilbride
+- [docs] Fix typo (#11787) @BenDiuguid
+- [docs] Better troubleshooting action for the hydration mismatch (#11792) @oliviertassinari
+
+#### Core
+
+- [core] Remove parser specification to fix JSON issue (#11763) @ryanpcmcquen
+- [core] Throw if react >= 16.3.0 requirement isn't matched (#11779) @oliviertassinari
+- [core] Better warnings for class names duplicates (#11788) @oliviertassinari
+- [core] Remove dead code (#11791) @oliviertassinari
+
+#### Labs
+
+- [Slider] Fix for IE11 (#11727) @epodivilov
+- [Slider] Value can still be updated while disabled (#11744) @epodivilov
+
+## 1.2.0
+###### *Jun 3, 2018*
+
+Big thanks to the 23 contributors who made this release possible.
+
+Here are some highlights ✨:
+
+- Start upgrading the button component to match the new Material specification (#11497) @mbrookes.
+- Fix some regressions (#11614, #11689).
+- And many more bug fixes and documentation improvements.
+
+### Breaking change
+
+N/A
+
+#### Component Fixes / Enhancements
+
+- [Snackbar] Add customization example (#11597) @mbrn
+- [Menu] Fix a regression on Edge (#11614) @oliviertassinari
+- [TextField] Replace underline content text with nbsp (#11617) @Jdubedition
+- [TextField] Fix grammar for docs (#11633) @RobBednark
+- [ListItem] Fix typings for ListItem (#11645) @franklixuefei
+- [Button] Add text and contained variants (#11497) @mbrookes
+- [Chip] Add `clickable` property (#11613) @vilvaathibanpb
+- [Popover] Add timeout prop to TransitionComponent (#11657) @C-Rodg
+- [styles] Better class name conflict warning (#11685) @oliviertassinari
+- [Grid] Better support for theme.props (#11688) @oliviertassinari
+- [ListItemText] Fix primary={0} display (#11686) @helfi92
+- [SwipeableDrawer] Fix a regression introduced in React 16.4.0 (#11689) @oliviertassinari
+- [RootRef] Allow using React.createRef api with RootRef component (#11681) @TrySound
+
+#### Docs
+
+- [docs] Better API spread section (#11598) @oliviertassinari
+- [docs] Update Wertarbyte components link (#11603) @leMaik
+- [docs] Add a changelog page (#11604) @oliviertassinari
+- [docs] Keep the current version into account (#11595) @oliviertassinari
+- [ROADMAP] Update the roadmap (#11606) @oliviertassinari
+- [example] Fix missing brackets TypeScript (#11623) @Ilaiwi
+- [docs] Update overrides.md (#11630) @risafletcher
+- [docs] Styled API Example (5 lines) (#11620) @mssngr
+- [docs] Mention view port size in SVGIcon documentation (#11639) @JesusCrow
+- [docs] Update README for codemod (#11647) @sacdallago
+- [docs] Update link to flow-typed definitions (#11674) @jessrosenfield
+- [docs] Minor grammitcal error (#11691) @NeuTrix
+
+#### Core
+
+- [typescript] Depend directly on CSSType (#11608) @pelotom
+- [core] Upgrade dependencies (#11616) @oliviertassinari
+- [typescript] createStyles and improved WithStyles helpers (#11609) @pelotom
+- [core] Add cross-env back (#11638) @lookfirst
+- [typescript] Fix keyof for TypeScript@2.9 (#11669) @mctep
+- [core] Some fixes looking into issues (#11676) @oliviertassinari
+- [core] Upgrade dependencies (#11684) @oliviertassinari
+
+#### Labs
+
+- [SpeedDial] Fix classes prop description (#11599) @mbrookes
+- [Slider] Misc fixes towards standard MUI patterns (#11605) @mbrookes
+- [Slider] Fire the right event on mouseDown (#11642) @acroyear
+- [SpeedDial] Add type definitions to lab, so SpeedDial can be use with TypeScript project (#11542) @TR3MIC
+
+## 1.1.0
+###### *May 26, 2018*
+
+Big thanks to the 30 contributors who made this release possible.
+
+Here are some highlights ✨:
+
+- A smaller bundle, saved 5 kB gzipped (#11511, #11492, #11521, #11523) @TrySound
+- A new Slider component in the lab (#11040) @epodivilov.
+- And many more bug fixes and documentation improvements.
+
+### Breaking change
+
+N/A
+
+#### Component Fixes / Enhancements
+
+- [ListSubheader] Fix demo import path (#11468) @Hocdoc
+- [Backdrop] Fix export paths (#11481) @brandonhall
+- [ListItem] Take the focusVisibleClassName property into account (#11451) @rdemirov
+- [Grid] Allow shrink in items so text will wrap by default (#11411) @ShaneMcX
+- [StepLabel] Allow StepIcon customization (#11446) @jargot
+- [StepConnector] Exposes the component (#11478) @racingrebel
+- [Tabs] Fix TabIndicatorProps merge (#11494) @adeelibr
+- [ButtonBase] Fix React propTypes buttonRef warning (#11519) @t49tran
+- [ListItemText] Shouldn't be a heading by default (#11544) @adeelibr
+- [GridListTileBar] Add missing title and subtitle keys (#11570) @ljani
+- [TableCell] Fix padding for last TableCell if checkbox (#11568) @gfpacheco
+- [Button][ButtonBase] Take advantage of defaultProps for component prop (#11574) @cherniavskii
+- [StepConnector] Add to default export from @material-ui/core (#11583) @OsipovIgor
+- [ButtonBase] Improve enter & space handling (#11585) @TheBear44
+
+#### Docs
+
+- [examples] Fix imports for Dialog (#11469) @sboles
+- [docs] Add v0 subdirectory redirects (#11470) @mbrookes
+- [docs] Remove trailing slash on progress-indicators link (#11473) @srt32
+- [docs] Add HSTS header (#11475) @mbrookes
+- [docs] Add missing word to documentation (#11476) @Skn0tt
+- [docs] Specify correct corner to locate directional toggle (#11479) @jacquesporveau
+- [examples] Fix create-react-app-with-jss theme object (#11485) @Dror88
+- [docs] Add Snippets Chrome extension to showcase (#11487) @richardscarrott
+- [docs] Fix hyphen for iOS (#11490) @mbrookes
+- [docs] Prevent content-type: application/octet-stream (#11501) @oliviertassinari
+- [docs] Add Customized Switches section (#11505) @mbrookes
+- [docs] Remove Firebase config file & deploy script (#11516) @mbrookes
+- [docs] Pull versions from github API (#11522) @mbrookes
+- [docs] Removed references to Grid's hidden property (#11529) @lfalke
+- [docs] Remove background grid from Typography variants demo (#11562) @mbrookes
+- [docs] Finish incomplete list-item-text.md documentation (#11559) @codeheroics
+- [docs] Add outlined buttons to ButtonSizes demo (#11509) @mbrookes
+- [docs] Add a Troubleshooting section for SSR (#11579) @oliviertassinari
+- [docs] Fix a little typo in TypeScript docs (#11580) @saculbr
+- [docs] Add react-admin to related projects (#11582) @fzaninotto
+- [docs] Update the showcase (#11578) @mbrookes
+
+#### Core
+
+- [typescript] Make TypographyStyle assignable to CSSProperties, misc other typing fixes (#11456) @pelotom
+- [core] Cut the head of the snake 🐍 (#11477) @oliviertassinari
+- [core] Add esm bundle to start tracking treeshakability (#11489) @TrySound
+- [core] More aggressive transpilation (#11492) @oliviertassinari
+- [core] Enable loose mode for staged featues (#11511) @TrySound
+- [core] Simplify the babel docs config (#11514) @oliviertassinari
+- [core] Remove lodash 💃 (#11521) @oliviertassinari
+- [core] Internalize ScrollbarSize (#11523) @oliviertassinari
+- [typescript] Add sample with return types (#11512) @yacut
+
+#### Labs
+
+- [SpeedDial] Clean up SpeedDialIcon transition (#11513) @mbrookes
+- [Slider] Port component (#11040) @epodivilov
+
+## 1.0.0
+###### *May 17, 2018*
+
+Our first stable v1 release! 🎉
+
+It has taken us two years to do it, but Material-UI v1 has finally arrived!
+We are so excited about this release, as it's setting a new course for the project. Thank you to *everyone*, especially to [the team](https://material-ui.com/discover-more/team/), and to everyone who's contributed code, issue triage, and support. **Thank you**.
+
+Some statistics with v1 while it was in alpha and beta:
+- 304 contributors
+- 2390 commits
+- From 0 downloads/month to 300k downloads/month
+- From 0 users/month to 90k users/month
+
+## 1.0.0-rc.1
+###### *May 15, 2018*
+
+Big thanks to the 10 contributors who made this release possible.
+
+Here are some highlights ✨:
+
+- Thanks for trying out v1.0.0-rc.0! This release focus on fixing the reported bugs 🐛.
+- Great focus on the performance (#11358, #11360, #11364) @goto-bus-stop, @TrySound
+We will have more time to work on that topic post v1.
+
+### Breaking change
+
+N/A
+
+#### Component Fixes / Enhancements
+
+- [codemod] Revert the codemod inception on the tests (#11376) @oliviertassinari
+- [typescript] Fix DialogContent export (#11378) @ljvanschie
+- [Dialog] Fix content export (#11393) @stefensuhat
+- [icons] Remove deadcode (#11400) @oliviertassinari
+- [NativeSelect] New component (#11364) @oliviertassinari
+- [Popover] Fix max height issue in some mobile browsers (#11349) @gaborcs
+
+#### Docs
+
+- [docs] Update notifications for v1.0.0-rc.0 (#11351) @simsim0709
+- [Snackbar] Fix transition directions demo (#11391) @serendipity1004
+- [docs] Remove react@15 message (#11399) @deltaskelta
+- [docs] Better netlify cache control (#11404) @oliviertassinari
+
+#### Core
+
+- [core] Do not include polyfills in the ES modules build (#11358) @goto-bus-stop
+- [core] Workaround a Babel regression (#11398) @oliviertassinari
+- [core] Fix size-limit for the new Next path (#11401) @oliviertassinari
+- [core] Require node >=8.0.0 to work on the project (#11407) @netdeamon
+- [core] Bundle UMD with rollup (#11360) @TrySound
+
+## 0.20.1
+###### *May 13, 2018*
+
+Big thanks to the 14 contributors who made this release possible.
+
+#### Component Fixes / Enhancements
+
+- [Tabs] Add support for inline style override for parent container of InkBar (#9598) @PharaohMaster
+- Popover does not listen to events unless it is open at the moment (#9482) @romanzenka
+- [EnhancedButton] Fix onClick event being fired twice on "Enter Key" press (#9439) @karaggeorge
+- [Slider] Fix handle case where ref is null (#10006) @jony89
+- [RaisedButton] Conditionally apply overlay backgroundColor (#9811) @walwoodr
+- [Snackbar] Static properties for reason string constants (#10300) @RavenHursT
+- [TextField] Fix caret position issue (#10214) @MaratFaskhiev
+- Add sideEffects: false for webpack 4 (#11167) @matthoffner
+
+#### Docs
+
+- [docs] Adding smpl to showcase (#9386) @Bonitis
+- [docs] Remove HEAD in versions list (#9391) @HZooly
+- Add Governance Document (#9423) @hai-cea
+- [docs] Add v1 recommendation to home page (#9727) @mbrookes
+- [docs] Remove BrainBOK from showcase (#11292) @brainbok
+
+## 1.0.0-rc.0
+###### *May 13, 2018*
+
+Big thanks to the 11 contributors who made this release possible.
+
+Here are some highlights ✨:
+
+- Introduce the last planned breaking changes before stable v1
+
+### Breaking change
+
+- [core] Move material-ui to @material-ui/core (#11310) @oliviertassinari
+
+```diff
+-import { withStyles } from 'material-ui/styles';
++import { withStyles } from '@material-ui/core/styles';
+```
+
+- [core] Flatten the import path (#11330) @oliviertassinari
+
+#### Motivation
+
+1. It's a simple pattern to learn. You won't need to go back and forth in the documentation to learn the import paths 💭.
+2. Your application bundle size will decrease 🚀.
+3. In an ideal world, we would import everything from the root module and tree sharking would be taken care of for us. This change doesn't matter in this world ☮️.
+```jsx
+import {
+ Table,
+ TableBody,
+ TableCell,
+ TableFooter,
+ TablePagination,
+ TableRow,
+} from 'material-ui';
+```
+
+#### The diff
+
+```diff
+-import CircularProgress from '@material-ui/core/Progress/CircularProgress';
++import CircularProgress from '@material-ui/core/CircularProgress';
+```
+
+```diff
+-import { ListItem } from '@material-ui/core/List';
++import ListItem from '@material-ui/core/ListItem';
+```
+
+#### Upgrade path
+
+We provide a codemod to automate the migration: https://github.com/mui-org/material-ui/tree/master/packages/material-ui-codemod#import-path. I have used it to upgrade all the demos in the documentation :).
+
+- [core] Require React 16.3.0 or greater (#11347, #11361) @oliviertassinari
+- [Grid] Remove the hidden property (#11348) @oliviertassinari
+
+Split the responsabilities between the different components. Help with tree-shaking.
+
+```diff
+-
+- xlUp
+-
++
++
++ xlUp
++
++
+```
+
+- [TextField] change underline approach to prevent browser zoom issue (#11181) @Jdubedition
+
+The text underline color customization change:
+```diff
+ underline: {
+ '&:after': {
+- backgroundColor: purple[500],
++ borderBottomColor: purple[500],
+ },
+ },
+```
+
+#### Component Fixes / Enhancements
+
+- [CircularProgress] Add transition for static variant (#11313) @oliviertassinari
+- [createTypography] Add primary text color to 'button' typography variant (#11322) @ValentineStone
+- [styles] Fix typings for FontStyle (#11326) @vkentta
+- [Grid] Add 32px gutter to grid spacing (#11338) @abnersajr
+- [Button] Add outlined variant (#11346) @leMaik
+
+#### Docs
+
+- [docs] v0 redirect (#11303) @mbrookes
+- [docs] Add a new premium-theme (#11300) @oliviertassinari
+- [docs] Prepare the v1 release (#11317) @oliviertassinari
+- [docs] Add HIJUP.com to the showcase site (#11328) @fikriauliya
+- [docs] Update material.io URLs (#11334) @mbrookes
+- [docs] Make the button examples consistent (#11352) @mbrookes
+- [docs] Eradicate 'Useful to' (#11353) @mbrookes
+- [docs] Move v1-beta to master (#11354) @oliviertassinari
+- [docs] Install with yarn (#11357) @Xakher
+
+#### Core
+
+- [typescript] Add CreateMuiTheme props TypeScript definition (#11296) @abnersajr
+- [typescript] Fix color type in augmentColor function (#11302) @AiusDa
+- Make WithStylesOptions extend the options argument of createStyleSheet (#11325) @pelotom
+- [core] Update the dev dependencies (#11355) @oliviertassinari
+
+## 1.0.0-beta.47
+###### *May 9, 2018*
+
+Big thanks to the 4 contributors who made this release possible.
+
+Here are some highlights ✨:
+
+- Fix an important regression (Babel upgrade)
+
+### Breaking change
+
+- [typescript] Fix withStyles edge cases (#11280) @pelotom
+
+If you are using TypeScript, 2.8 or later is required.
+
+#### Component Fixes / Enhancements
+
+- [withStyles] Support createRef() (#11293) @rolandjitsu
+- [InputLabel] Remove the width style property (#11297) @C-Rodg
+
+#### Docs
+
+N/A
+
+#### Core
+
+- [core] Add @babel/runtime as a dependency (#11298) @oliviertassinari
+
+## 1.0.0-beta.46
+###### *May 8, 2018*
+
+Big thanks to the 7 contributors who made this release possible.
+
+Here are some highlights ✨:
+
+- Fix an important regression (npm dependency)
+
+### Breaking change
+
+N/A
+
+#### Component Fixes / Enhancements
+
+- [Table] Add table-footer-group CSS (#11264) @t49tran
+- [ButtonBase] Add a focusVisible action (#9712) @tkvw
+- [ButtonBase] Better performance (#11277) @oliviertassinari
+- [Tabs] Add a TabIndicatorProps property (#11254) @adeelibr
+
+#### Docs
+
+- [docs] Improve the table examples' accessibility (#11256) @mbrookes
+- [docs] Add Pilcro to showcase apps (#11274) @hugowoodhead
+
+#### Core
+
+- [typescript] Fix type definitions for Snackbar and CircularProgress (#11265) @franklixuefei
+- [core] Upgrade Babel 6 to Babel 7 (#10964) @oliviertassinari
+- [core] npm shouldn't be a dependency (#11263) @oliviertassinari
+
+## 1.0.0-beta.45
+###### *May 6, 2018*
+
+Big thanks to the 12 contributors who made this release possible.
+
+Here are some highlights ✨:
+
+- A release date. We will release Material-UI v1 May 17th.
+- Improve the performance of withStyles by adding memoization (#11202) @CharlesStover.
+- Standardization of the component injection pattern (#11204) @oliviertassinari
+- And many more bug fixes and documentation improvements.
+
+### Breaking change
+
+- [core] Standardize the component injection pattern (#11204) @oliviertassinari
+
+I couldn't find a clean way to support the render props pattern.
+Doing such would require to greatly reduce the usage of JSX.
+It would really harm source code readability.
+
+Instead, I have been focusing on standardizing our component injection story.
+This way, we can go back to the render props after stable v1 is released and see if source code readability worth be sacrificed for the render prop pattern.
+
+```diff
+
+```
+
+- [ButtonBase] Complete the focusVisible rename (#11188) @oliviertassinari
+
+The rename started with #11090. I should have taken the time to complete it in the first place. This way, we are fully consistent with the spec: https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo :)
+
+```diff
+`, it should be working. However, previously `"` escaped URL will no longer work.
+
+#### Component Fixes / Enhancements
+
+- [SwipeableDrawer] Prevent interaction with the drawer content if not opened (#11091) @leMaik
+- [Icon] Prevent shrinking when inside a flex container (#11097) @ValentinH
+- [Grid] Fix TypeScript definitions of class keys (#11102) @nmchaves
+- [Portal] Revert "Global option to disable the portal" (#11116) @oliviertassinari
+- [ButtonBase] Simpler global focus visible style override (#11130) @oliviertassinari
+- [Modal] Prevent IE11 from crashing on modal close (#11115) @JonAbrams
+- [Input] Fix infinite rendering loop (#11159) @oliviertassinari
+- [lab] Fix the tests (#11160) @oliviertassinari
+- [Snackbar] Add a consecutive demo (#11111) @simoami
+- [Tabs] Better Ant Design demo (#11095) @theiliad
+- [Popover] Improve the demos (#11175) @oliviertassinari
+
+#### Docs
+
+- [docs] Add npm-registry-browser into showcase (#11114) @topheman
+- [docs] Fix the flow example (#11118) @prastut
+- [docs] Add showcase for Local Insights (#11131) @hrdymchl
+- [docs] Add iOS momentum scrolling (#11140) @cherniavskii
+- [docs] Add a CSS modules example (#11171) @oliviertassinari
+- [docs] Fix typo in themes.md (#11149) @zhuangya
+- [docs] Make sure next@6 is working (#11168) @oliviertassinari
+- [docs] Correct spelling error in FormDialog.js example (#11176) @weldon0405
+
+#### Core
+
+- [core] Reduce the size of the npm package (#11144) @oliviertassinari
+- [typescript] allow pseudos on any theme mixins (#11145) @rosskevin
+- [core] Upgrade dev dependencies (#11146) @oliviertassinari
+- [styles] Fix constraint on withStyles P parameter to allow StyledComponentProps (#11156) @pelotom
+
+## 1.0.0-beta.43
+###### *Apr 22, 2018*
+
+Big thanks to the 8 contributors who made this release possible.
+
+Here are some highlights ✨:
+
+- A better keyboard focused customization story (#11090) @oliviertassinari
+- Various TypeScript fixes
+
+### Breaking change
+
+- [ButtonBase] Better keyboard focused story (#11090) @oliviertassinari
+ - Rename the `keyboardFocused` feature `focusVisible` in order to follow the CSS specification wording:
+ https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo
+ - Give up on the `classes` property to host the focus visible feature. The fact that the classes don't cascade was making it hard to use. Instead, we rely on a `focusVisibleClassName` property. This is allowing any component along the rendering chain to use the feature. For instance, a Switch component: Switch > SwitchBase > IconButton > ButtonBase.
+
+ ```diff
+
+ ```
+
+#### Component Fixes / Enhancements
+
+- [typescript] Constrain props type param appropriately in withStyles, withTheme, withWidth HOCs (#11003) @estaub
+- [typescript] make Select's onChange prop optional (#11041) @nmchaves
+- [Table] Remove overflow (#11062) @oliviertassinari
+- [TablePagination] Allow the override of the action buttons (#11058) @lukePeavey
+- [Popover] Add option to disable Menu auto positioning (#11050) @nicoffee
+- [Input] Allow div props on InputAdornment in TypeScript (#11077) @mtandersson
+- [Dialog] Fix iOS momentum scroll (#11066) @greenwombat
+- [Portal] Global option to disable the portal (#11086) @oliviertassinari
+- [ExpansionPanel] Fix display on IE11 and Edge (#11087) @oliviertassinari
+- [CardActions] Fix CSS override (#11092) @oliviertassinari
+
+#### Docs
+
+- [docs] Fix broken link (#11042) @imrobinized
+- [CONTRIBUTING] Update the docs (#11078) @oliviertassinari
+
+#### Core
+
+- [core] Better distinction between the private and public components (#11051) @oliviertassinari
+- [core] Upgrade dev dependencies (#11096) @oliviertassinari
+
+## 1.0.0-beta.42
+###### *Apr 16, 2018*
+
+Big thanks to the 15 contributors who made this release possible.
+
+Here are some highlights ✨:
+
+- A better CSS override story (#10961) @oliviertassinari
+- Strongly typed React.CSSProperties TypeScript definitions (#11007) @pelotom
+- And many more bug fixes and documentation improvements.
+
+### Breaking change
+
+- [styles] Change the CSS specificity (#10961) @oliviertassinari
+
+This breaking change is important. It might be the most painful to recover from before stable v1 (May 17th 2018).
+We have changed the CSS specificity rule to solve #10771 at scale.
+
+It's inspired by the Bootstrap approach to writing CSS. It follows two rules:
+1. A variant has **one level of specificity**.
+For instance, the `color` and `variant` properties are considered a variant.
+The lower the style specificity is, the simpler you can override it.
+2. We increase the specificity for a variant modifier.
+We already **have to do** it for the pseudo-classes (`:hover`, `:focus`, etc.).
+It allows much more control at the cost of more boilerplate.
+Hopefully, it's more intuitive.
+
+Example:
+```diff
+const styles = {
+- checked: {
+- color: green[500],
++ root: {
++ color: green[600],
++ '&$checked': {
++ color: green[500],
++ },
+ },
++ checked: {},
+};
+
+
+```
+
+#### Component Fixes / Enhancements
+
+- [lab] No side effect (7c379fa7ba4ed2a3eb8abc841a9a4376014b6145) @oliviertassinari
+- [Card] Hide overflow to maintain round corners with CardMedia (#10946) @mbrookes
+- [ButtonBase] More robust button keyboard accessibility (#10965) @oliviertassinari
+- [Tooltip] Remove title from chldrenProps (#10977) @mbrookes
+- [theme] Expose augmentColor for colors outside the palette (#10985) @AiusDa
+- [Select] Update onChange props definition to match with SelectInput (#11012) @t49tran
+- [lab] Bump version for @material-ui/icons dependency (#10992) @mbrookes
+- [Drawer] Improve the "Mini variant drawer" demo (#11010) @andriyor
+- [Step] Remove private modules from the export (#11020) @oliviertassinari
+- [Grid] Update propTypes to accept false (#11022) @oliviertassinari
+- [Chip] only transition the CSS properties we need (#11023) @oliviertassinari
+- [CssBaseline] Add key to theme overrides type definition (#11025) @roosmaa
+- [Tabs] Add a customization demo (#10999) @cherniavskii
+- [theme] Use a single theme variable for the hover effects of Button, IconButton and ListItem (#10952) @SebastianSchmidt
+- [Dialog] Fix BackdropProps propagation (#11029) @sepehr1313
+- [ButtonBase] Fix wrong touchMove wiring (#11026) @mbrookes
+- [SwipeableDrawer] Simplify isSwiping logic (#11032) @leMaik
+- [SwipeableDrawer] Add a blocking div to the edge of the screen (#11031) @leMaik
+
+#### Docs
+
+- [docs] Fix typo (#10990) @jleeohsu
+- [docs] Better private/public API description (#11024) @oliviertassinari
+- [Collapse] Fix typo in comment (#11035) @mknet
+
+#### Core
+
+- [core] Add fallback to ownerWindow (#10978) @richardscarrott
+- [typescript] Remove unnecessary Partial<> for `style` prop (#10994) @franklixuefei
+- [core] Export all the style modules (#11021) @oliviertassinari
+- [typescript] Upgrade types, use string index fallback for CSSProperties to allow nested pseudos (#11007) @pelotom
+- [core] Upgrade the dependencies (#11030) @oliviertassinari
+- [core] Move to the packages structure (#11033) @oliviertassinari
+
+## 1.0.0-beta.41
+###### *Apr 7, 2018*
+
+Big thanks to the 14 contributors who made this release possible.
+
+Here are some highlights ✨:
+
+- An icon package ready for v1 stable (#10902, #10933, #10957).
+- An important focus on the documentation.
+- And many more bug fixes and documentation improvements.
+
+### Breaking change
+
+- Move the icon package from `material-ui-icons` to `@material-ui/icons` (#10957) @oliviertassinari
+
+```diff
+-import FormatTextdirectionRToL from 'material-ui-icons/FormatTextdirectionRToL';
++import FormatTextdirectionRToL from '@material-ui/icons/FormatTextdirectionRToL';
+```
+
+#### Component Fixes / Enhancements
+
+- [icons] Reduce code duplication (#10902) @cherniavskii
+- [icons] Check if `global` is defined before trying to use it (#10933) @joliss
+- [Table] Fix EnhancedTable example to not scroll TablePagination (#10878) @mbrookes
+- [Zoom] Export Zoom in the TypeScript definitions (#10897) @Klynger
+- [IconButton] Add hover effect to IconButton (#10871) @SebastianSchmidt
+- [TextField] Add an icon example (#10899) @oliviertassinari
+- [SwipeableDrawer] Disable swiping on iOS by default (#10877) @leMaik
+- [SwipeableDrawer] Fix crash when swiping during an update (#10906) @leMaik
+- [ListItemText] Fix invalid ListItemText 'children' proptype (#10948) @kendallroth
+- [BottomNavigationAction] Use default childIndex value only if value undefined (#10937) @peterbartos
+- [styles] Add a warning to prevent a memory leak (#10953) @oliviertassinari
+- [Select] Fix width update (#10956) @oliviertassinari
+
+#### Docs
+
+- [docs] Add hideHeader option to Demo component (#10887) @mbrookes
+- [docs] Document the /es folder (#10888) @oliviertassinari
+- [docs] More transparent exportPathMap method (#10894) @oliviertassinari
+- [docs] Dodge issue with hoist-non-react-statics (#10896) @oliviertassinari
+- [docs] Add missing apostrophe (#10911) @davidgilbertson
+- [docs] Improve the search experience (#10905) @oliviertassinari
+- [docs] Improve the layout for premium themes (#10901) @mbrookes
+- [docs] Fix example in TypeScript docs (#10924) @piotros
+- [docs] Atomic state update in the Stepper demo (#10936) @iceveda06
+- [docs] Add versions page (#10883) @mbrookes
+- [docs] Fix npm urls (#10949) @sujeetkrjaiswal
+- [docs] Add "Do I have to use JSS?" to FAQ (#10954) @mbrookes
+
+#### Core
+
+- [typescript] Upgrade React and JSS typings, which both make use of csstype now (#10903) @pelotom
+
+## 1.0.0-beta.40
+###### *Apr 1, 2018*
+
+Big thanks to the 4 contributors who made this release possible.
+
+Here are some highlights ✨:
+
+- React 16.3.0 support (#10867).
+- Many bug fixes on the Tooltip component (#10843) @shssoichiro.
+- A much better navigation experience on the docs (#10859).
+
+### Breaking change
+
+- [Tooltip] Portal the component to the body (#10843) @shssoichiro
+
+We take advantage of the latest features of React 16.x.
+React is allowing us to return an array of elements in the render method.
+We have removed the useless root `div` element.
+Nothing has changed for people using React 15.x.
+
+#### Component Fixes / Enhancements
+
+- [FormControlLabel] Enable disabled label CSS modifications (#10841) @vkentta
+- [Select] Throw when the non native select is not controlled (#10860) @oliviertassinari
+- [Drawer] Back to 100% test coverage (#10861) @oliviertassinari
+- [core] Work on React 16.3.0 support (#10867) @oliviertassinari
+
+#### Docs
+
+- [docs] typo: reponse => response (#10850) @luminaxster
+- [docs] Remove dead code (#10855) @oliviertassinari
+- [docs] Much better navigation experience (#10859) @oliviertassinari
+- [examples] Demonstrate how to use the icons CDN (#10874) @oliviertassinari
+
+#### Core
+
+- [core] Remove the addEventListener module (#10856) @oliviertassinari
+- [core] Upgrade the dependencies (#10853) @oliviertassinari
+- [core] Rename .spec.js to .test.js (#10854) @oliviertassinari
+
+## 1.0.0-beta.39
+###### *Mar 28, 2018*
+
+Big thanks to the 25 contributors who made this release possible.
+
+Here are some highlights ✨:
+
+- Add a [swipeable drawer](https://material-ui.com/demos/drawers/#swipeable-temporary-drawer) component (#9730) @leMaik.
+- Add a [StackBlitz](https://stackblitz.com/) edit link (#10758).
+- Add a new npm package: [@material-ui/docs](https://www.npmjs.com/package/@material-ui/docs) (#10699).
+- And many more bug fixes and documentation improvements.
+
+### Breaking change
+
+- [Grid] Change the default spacing value: 0 (#10768) @oliviertassinari
+
+The negative margin implementation solution currently used comes with [serious limitations](https://material-ui.com/components/grid/#negative-margin).
+Material-UI is the only library with a non-zero default spacing between the items.
+Having zero spacing by default will ease the usage of the component.
+
+```diff
+-
++
+```
+
+- [Tooltip] Rename disableTriggerX (#10700) @oliviertassinari
+
+For consistency with the [removeEventListener Web API](https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/removeEventListener) and the Snackbar `disableWindowBlurListener` property.
+
+```diff
+
+```
+
+- [InputLabel] Rename FormControlClasses property (#10796) @oliviertassinari
+
+I have made a mistake in [#8108](https://github.com/mui-org/material-ui/pull/8108). The property isn't applied on a `FormControl` but on a `FormLabel` component.
+
+```diff
+-
++
+```
+
+#### Component Fixes / Enhancements
+
+- [Switch] Add missing TypeScript class keys (#10691) @wenduzer
+- [ClickAwayListener] Add mouseEvent and touchEvent property (#10694) @tgrowden
+- [Switch] Add default color (#10697) @oliviertassinari
+- [StepButton] Support vertical stepper (#10698) @danieljuhl
+- [TextField] Update defaultValue prop types (#10703) @moondef
+- [Input] Rename isDirty to isEmpty (#10704) @oliviertassinari
+- [Select] Perfom the layout computation as soon as possible (#10706) @oliviertassinari
+- [Stepper] Add error prop to StepIcon and StepLabel (#10705) @nicoffee
+- [Grid] Add zeroMinWidth to TypeScript definition (#10712) @cvanem
+- [Select] Fix data-value value (#10723) @a-x-
+- [Tooltip] Update error message (#10742) @MoonDawg92
+- [TextField] Apply onFocus and onBlur on the input (#10746) @oliviertassinari
+- [TextField] Remove dead code (#10757) @oliviertassinari
+- [Checkbox] Add checkedPrimary and checkedSecondary to TypeScript definition (#10747) @cvanem
+- [️MuiThemeProvider] TypeScript disableStylesGeneration (#10759) @djeeg
+- [Input] Relax inputProps and inputComponent Types (#10767) @pelotom
+- [Tabs] Warn on invalid combination (#10788) @oliviertassinari
+- [Select] Better document event.target.value (#10791) @oliviertassinari
+- [Drawer] Add Swipeable feature (#9730) @leMaik
+- [Select] Add support for autoFocus (#10792) @nicoffee
+- [Icon] Fix typing by taking out fontSize property (#10821) @franklixuefei
+
+#### Docs
+
+- [docs] Add new npm package: @material-ui/docs (#10699) @oliviertassinari
+- [docs] Use buttonRef instead of ref in anchor playground example (#10708) @pelotom
+- [docs] Fix "Edit this page" button (#10722) @SebastianSchmidt
+- [docs] Add search shortcut (#10725) @oliviertassinari
+- [docs] Make navigation look more like the material guidelines (#10709) @leMaik
+- [docs] Clarify discrepancies from default theme (#10732) @yihangho
+- [examples] Update next.js PWA color (#10749) @blainegarrett
+- [docs] Add StackBlitz demo link (#10758) @oliviertassinari
+- [docs] Fix typo TextField demo (#10766) @elertan
+- [docs] Better CssBaseline documentation (#10770) @oliviertassinari
+- [docs] Remove flow warning (#10780) @rosskevin
+- [docs] Minor typographical fix (#10786) @samdenty99
+- [docs] Selection control, customization example (#10787) @oliviertassinari
+- [docs] Fix typo (#10794) @dylangarcia
+- [examples] Update Flow Example (#10799) @prastut
+- [docs] Material Dashboard Pro React (#10832) @oliviertassinari
+
+#### Core
+
+- [core] Upgrade the dev dependencies (#10702) @oliviertassinari
+- [typings] Fix `mixins.gutter` signature (argument is optional) (#10814) @sebald
+
+## 1.0.0-beta.38
+###### *Mar 17, 2018*
+
+Big thanks to the 19 contributors who made this release possible.
+
+This release comes with important theme upgrades. Here are some highlights ✨:
+
+- Introduction of a Premium Themes section (#10616).
+- A `props` theme key to globally inject properties on components (#10671).
+- A theme option to change the font-size (#10687).
+- And many more bug fixes and documentation improvements.
+
+### Breaking change
+
+N/A
+
+#### Component Fixes / Enhancements
+
+- [Select] Fix chip alignment (#10611) @adamszeptycki
+- [Tabs] Add 'scrollButtons' and 'indicator' to TabsClassKey TypeScript defintion (#10618) @cvanem
+- [TablePagination] Add SelectProps property (#10629) @mrahman1122
+- [ListItemSecondaryAction] Vertically center (#10628) @jedwards1211
+- [Select] Add visual tests to prevent future regression (#10642) @oliviertassinari
+- [Popover] Update anchorEl type (#10645) @nicoffee
+- [styles] Better color manipulator warning (#10652) @oliviertassinari
+- [Autocomplete] Show how to use the label (#10653) @oliviertassinari
+- [ButtonBase] Update class keys (#10659) @lukePeavey
+- [FromHelperText] Add missing component prop definition (#10658) @franklixuefei
+- [theme] Reduce the negative margin (#10672) @oliviertassinari
+- [theme] Add a props theme key (#10671) @oliviertassinari
+- [DialogActions] Add missing TypeScript property (#10674) @youngnicks
+- [GridList] Should allow optional children (#10680) @rosskevin
+- [DialogContentText] Extend the Typography component (#10683) @oliviertassinari
+- [theme] Allow changing the font-size (#10687) @oliviertassinari
+- [Stepper] Soft ripple background (#10690) @oliviertassinari
+
+#### Docs
+
+- [docs] Add project to showcase (#10614) @jdupont
+- [docs] Fix typo (#10621) @prastut
+- [docs] Updating the TS example to use CssBaseline (#10633) @yuchen-w
+- [docs] Better support of multiline for downshift (#10641) @oliviertassinari
+- [docs] Simplify LongMenu demo (#10646) @RichardLindhout
+- [docs] Improve the onboarding (#10639) @oliviertassinari
+- [docs] Fix usage of CssBaseline/Reboot in the CDN example (#10655) @SebastianSchmidt
+- [docs] Fix reference to CssBaseline component (#10654) @SebastianSchmidt
+- [themes] Introduce a themes website ⚡️ (#10616) @oliviertassinari
+- [docs] Fix reference to FAQ (#10660) @SebastianSchmidt
+- [docs] Fix reference to Popover demo (#10661) @SebastianSchmidt
+- [docs] Fix reference to Modal demo (#10662) @SebastianSchmidt
+- [docs] Add Rung to showcase (#10669) @vitorebatista
+- [docs] Add Bit as a sponsor ❤️ (#10673) @oliviertassinari
+- [docs] Third iteration on the homepage (#10670) @oliviertassinari
+- [docs] Add Team SC into showcase (#10676) @Losses
+- [docs] Handle optional params (#10685) @oliviertassinari
+- [docs] Customized tables (#10686) @oliviertassinari
+
+#### Core
+
+- [typescript] Remove xxxClassName props from type declarations (#10644) @lukePeavey
+- [typescript] Add inline style prop to transition (#10650) @nmchaves
+
+## 1.0.0-beta.37
+###### *Mar 11, 2018*
+
+Big thanks to the 13 contributors who made this release possible.
+
+Here are some highlights ✨:
+
+- An important fix of the focus/blur logic of the Select (#10538) @oliviertassinari.
+- A multiple selection downshift example (#10550) @oliviertassinari.
+- A new parcel example (#10575) @oliviertassinari.
+- And many more bug fixes and documentation improvements.
+
+### Breaking change
+
+- [classes] Move the XXXClassName to the classes property (#10600) @oliviertassinari
+
+These properties were introduced before `classes`.
+Exposing a single pattern makes things more predictable and easier to work with.
+
+```diff
+-
++
+```
+
+```diff
+-
++
+```
+
+- [CssBaseline] Rename from Reboot (#10605}
+
+The new wording should clarify the purpose of the component.
+For instance, it's not about adding JavaScript polyfills.
+
+```diff
+-
++
+```
+
+#### Component Fixes / Enhancements
+
+- [Select] Fix wrong onBlur onFocus logic (#10538) @oliviertassinari
+- [ExpansionPanel] Fix controlled behavior (#10546) @oliviertassinari
+- [Autocomplete] Add multiple downshift example (#10550) @oliviertassinari
+- [Autocomplete] selectedItem can be null (#10565) @caub
+- [core] Improve IE11 support (#10568) @oliviertassinari
+- [TextField] Better inputComponent demo (#10573) @oliviertassinari
+- [typescript] Add a test case for ListItemIcon (#10593) @oliviertassinari
+- [ListItemText] Make the children an alias of the primary property (#10591) @caub
+- [Button] Fix Button variant prop description (#10578) @teekwak
+- [Table] Fix table pagination example empty row height (#10588) @amcgee
+- [Icon] Fix a bug in Chrome 64.0 (#10594) @caub
+- [List] use theme for margin in ListItemText (#10597) @caub
+- [StepIcon] enable CSS modifications of active step (#10599) @vkentta
+- [Tooltip] Add enterTouchDelay and leaveTouchDelay props (#10577) @petegivens
+
+#### Docs
+
+- [docs] Simplify the CDN example (6e4cc723689961582ede16db421cbdf24ac7c4b9) @oliviertassinari
+- [docs] Add showcase to readme - componofy (#10541) @DalerAsrorov
+- [docs] Add Cryptoverview to the showcase (#10545) @leMaik
+- [docs] Add menu Collapse example (#10548) @oliviertassinari
+- [docs] Add PersonalBlog Gatsby starter to Showcase (#10566) @greglobinski
+- [docs] Add parcel example (#10575) @oliviertassinari
+- [docs] Fix typo in contributing readme (#10586) @chiragmongia
+- [docs] Fix next.js example to enable styled-jsx with material-ui (#10580) @shibukawa
+- [docs] Add the latest backers (#10602) @oliviertassinari
+- [docs] Add Planalyze to Showcase (#10603) @dancastellon
+- [docs] Improve the htmlFontSize documentation (#10604) @oliviertassinari
+
+#### Core
+
+- [core] Fix type definitions (#10553) @stefanorie
+- [core] Better overrides merge support (#10606) @oliviertassinari
+
+## 1.0.0-beta.36
+###### *Mar 5, 2018*
+
+Big thanks to the 14 contributors who made this release possible.
+
+Here are some highlights ✨:
+
+- We have started the effort toward supporting the async API of react@16.3.0 (#10489, #10523) @oliviertassinari.
+- Document how to use Material-UI with a CDN (#10514) @zelinf.
+- And many more bug fixes and documentation improvements.
+
+### Breaking change
+
+- [SvgIcon] Allow changing the width with the font-size (#10446) @oliviertassinari
+
+Remove the `fontSize` property. The `SvgIcon` behavior is closer to the `Icon` behavior.
+```diff
+-
+-
++
++
+```
+Now, you can use the `font-size` style property to changr the size of the icon.
+
+- [classes] Normalize the classes names (#10457) @oliviertassinari
+
+This is an effort in order to harmonize the classes API.
+The best way to recover from this breaking change is to check the warnings in the console and to check the added documentation around the design rules around this API.
+
+#### Component Fixes / Enhancements
+
+- [Table] Default display style for all table components (#10447) @caub
+- [Collapse] Fix description (#10454) @onurkose
+- [ButtonBase] Add a TouchRippleProps property (#10470) @christophediprima
+- [Select] Ensure label is shrinked when using startAdornment (#10474) @carab
+- [Card][List] Implement responsive gutters (#10477) @lukePeavey
+- [icon] Add "side-effects": false to material-ui-icons (#10482) @b1f6c1c4
+- [IconButton] Fix theme.spacing.unit size dependency (#10486) @oliviertassinari
+- [ListItem] Avoid li > li issue (#10484) @oliviertassinari
+- [ListItem] Fix ContainerProps.className propagation (#10488) @oliviertassinari
+- [Textarea] Prepare React 16.3.0 (#10489) @oliviertassinari
+- [icon] Add build:es for material-ui-icons (#10497) @b1f6c1c4
+- [ButtonBase] Fix the ripple on Edge (#10512) @oliviertassinari
+- [Autocomplete] Update the demos so people can stack the components (#10524) @oliviertassinari
+- [Button] Add override support for sizeLarge and sizeSmall (#10526) @wenduzer
+- [Modal] Use prototype functions in ModalManager (#10528) @ianschmitz
+
+#### Docs
+
+- [docs] Fix Roadmap docs formatting (#10501) @cherniavskii
+- [docs] EnhancedTable Demo (#10491) @kgregory
+- [docs] Add new Showcase project (#10509) @chriswardo
+- [Select] Document when the value is required (#10505) @MichaelArnoldOwens
+- [Select] Document the renderValue signature (#10513) @oliviertassinari
+- [docs] Add a CDN example (#10514) @oliviertassinari
+- [docs] Fix SSR rendering in Gatsby example (#10536) @LegNeato
+
+#### Core
+
+- [core] Prepare the async API (#10523) @oliviertassinari
+- [core] Upgrade the dev dependencies (#10456) @oliviertassinari
+- [core] Upgrade the dev dependencies (#10515) @oliviertassinari
+
+## 1.0.0-beta.35
+###### *Feb 24, 2018*
+
+Big thanks to the 20 contributors who made this release possible.
+
+Here are some highlights ✨:
+
+- A new lab npm package (#10288) @mbrookes.
+- A breaking changes ROADMAP before v1 (#10348) @oliviertassinari.
+- And many more bug fixes and documentation improvements.
+
+### Breaking change
+
+N/A
+
+#### Component Fixes / Enhancements
+
+- [Stepper] Add style override types (#10334) @vkentta
+- [Input] Reset the line-height (#10346) @oliviertassinari
+- [Select] Revert #9964 (#10347) @oliviertassinari
+- [lab] Create lab package, add SpeedDial (#10288) @mbrookes
+- [Button] Update Button mini description (#10355) @lorensr
+- [SpeedDial] Fix onClick target element (#10368) @mbrookes
+- [IconButton] Fix class key types (#10374) @vkentta
+- [Chip] Ignore events generated by descendants (#10372) @maxdubrinsky
+- [CardHeader] Add missing "action" classes key definition (#10379) @chubbsMcfly
+- [Dialog] Consistent description (#10377) @oliviertassinari
+- [Select] Fix the vertical-align (#10380) @oliviertassinari
+- [Snackbar] Disable pausing of auto hide when window loses focus (#10390) @SebastianSchmidt
+- [Select] Add `SelectDisplayProps` prop (#10408) @noah-potter
+- [SelectInput] Add tabIndex prop (#10345) @keenondrums
+- [Select] Make 'type' prop able to be overwritten (#10361) @fabijanski
+- [Select] Set type undefined rather than null (#10430) @caub
+- [ButtonBase] Fix accessibility (#10434) @oliviertassinari
+- [SwitchBase] Fix defaultChecked issue (#10444) @tanmayrajani
+- [SwitchBase] Prevent defaultChecked regression (#10445) @oliviertassinari
+
+#### Docs
+
+- [Transitions] Document transition style prop handling (#10322) @AdamGorkoz
+- [Drawer] Add clipped navigation drawer demo (#10330) @AdamGorkoz
+- [docs] Fix demo links for new util components (#10337) @jprince
+- [docs] Add react-final-form to Related Projects (#10352) @mbrookes
+- [docs] rename theme-default to default-theme (#10356) @mbrookes
+- [docs] Fix modal page link (#10360) @tanmayrajani
+- [docs] Plan the breaking changes before v1 (#10348) @oliviertassinari
+- [docs] Fix IE 11 and W3C warnings (#10394) @oliviertassinari
+- [docs] Sort the pages by path and ignore dashes (#10396) @leMaik
+- [docs] Autocomplete migration (#10397) @oliviertassinari
+- [docs] Add AudioNodes to the showcase (#10407) @JohnWeisz
+- [docs] Breaking changes feedback notification (#10413) @mbrookes
+- [docs] Improve readability (#10412) @oliviertassinari
+- [docs] Add material-ui-autosuggest to related projects (#10415) @tgrowden
+- [docs] Update transitions.md (#10417) @caub
+- [docs] Fix minor typo in breaking-changes notification (#10418) @phazor
+- [docs] Description of how component will render (#10432) @oliviertassinari
+- [docs] Add CSSGrid comparison example (#10433) @caub
+
+#### Core
+
+- [core] Upgrade some dependency to start looking into React 16.3 (#10338) @oliviertassinari
+- [core] Remove direct references to window/document objects (#10328) @ianschmitz
+- [core] Use tabIndex as number (#10431) @oliviertassinari
+
+## 1.0.0-beta.34
+###### *Feb 17, 2018*
+
+Big thanks to the 21 contributors who made this release possible.
+
+Here are some highlights ✨:
+
+- Checkbox, Radio, Switch update to follow the spec and be consistent with the Input (#10196, #10138) @phsantiago, @mbrookes.
+- The documentation works offline (#10267) @msiadak.
+- Better styled-components documentation (#10266) @rocketraman.
+- And many more bug fixes and documentation improvements.
+
+### Breaking change
+
+- [Checkbox, Radio, Switch] Fix id in internal input (#10196) @phsantiago
+
+For consistency between the `Input` and the `Checkbox`, `Switch`, `Radio` the following small breaking changes have been done:
+
+The usage of the `inputProps` property is no longer needed to apply an id to the input. The `id` is applied to the input instead of the root.
+```diff
+-
++
+```
+The `inputType` property was renamed `type`.
+```diff
+-
++
+```
+
+- [Checkbox, Radio, Switch] Change default color, add color prop (#10138) @mbrookes
+
+The Material Design specification says that selection controls elements should [use the application's secondary color](https://material.io/guidelines/components/selection-controls.html).
+```diff
+-
+-
+-
++
++
++
+```
+
+#### Component Fixes / Enhancements
+
+- [Input] Fix infinite loop (#10229) @oliviertassinari
+- [CircularProgress] Add static variant (#10228) @oliviertassinari
+- [Transition] Add the missing teardown logic (#10244) @oliviertassinari
+- [Avatar] Use theme.spacing.unit (#10268) @cherniavskii
+- [InputLabel] Add inheritance docs (#10282) @oliviertassinari
+- [Input][ExpansionPane] Remove the use of legacy easing-curve (#10290) @strayiker
+- [TableCell] Add "scope" attribute for th (#10277) @z-ax
+- [styles] Fix typo (#10303) @strayiker
+- [Button] Add fullWidth to ButtonClassKey (#10310) @stefanorie
+- [TextField] Fix wrong SSR height of the textarea (#10315) @oliviertassinari
+- [ClickAwayListener] Fix interaction with SVGElement (#10318) @KEMBL
+- [Icon] Add fontSize to typings (#10317) @clentfort
+- [Slide] Work with SVG too (#10325) @oliviertassinari
+
+#### Docs
+
+- [docs] Update links on showcase.md (#10227) @klyburke
+- [docs] Remove dead code in Drawers (#10230) @oliviertassinari
+- [docs] Add utils section, document transitions (#10239) @mbrookes
+- [docs] Fix small issues (#10245) @oliviertassinari
+- [docs] Add transform-origin and timeout to Grow demo #10246 @mbrookes
+- [docs] Add modole.io to showcase (#10247) @mweiss
+- [docs] Better API generator (#10249) @oliviertassinari
+- [docs] Use non-breaking space (#10252) @oliviertassinari
+- [example] TypeScript instructions (a81e5f9e54fdcc4648ffe6bdc08eaa596fb0a9bc) @oliviertassinari
+- [docs] Fix the migration guide doc page (#10257) @nicolasiensen
+- [docs] Update example in README.md (#10259) @nikoladev
+- [docs] Fix typo in button component demo (#10260) @bmuenzenmeyer
+- [docs] styled components non-root components (#10266) @rocketraman
+- [Selection Control] Symmetry between the demos (#10279) @oliviertassinari
+- [docs] Remove StepConnector from Steppers demo (#10301) @jdupont
+- [docs] Add precaching Service Worker to exported docs builds (#10267) @msiadak
+- [docs] Add missing rel=noopener (#10307) @oliviertassinari
+- [docs] Add the average response time (#10308) @oliviertassinari
+- [docs] Update TextFields.js (#10313) @Primajin
+- [docs] Add toggling with react-popper (#10302) @caub
+- [docs] Add the latest backers ♥ (#10323) @oliviertassinari
+- [docs] Expose the theme as a global object (#10326) @oliviertassinari
+- [docs] Add an example with Google Web Fonts (#10332) @oliviertassinari
+
+#### Core
+
+- [core] Fix the es distribution (#10254) @NMinhNguyen
+- [typescript] Add missing exports in index.d.ts (#10295) @Andy4ward
+- [core] Upgrade react-popper (#10299) @oliviertassinari
+
+## 1.0.0-beta.33
+###### *Feb 10, 2018*
+
+Big thanks to the 16 contributors who made this release possible.
+
+Here are some highlights ✨:
+
+- A documentation section on the `component` property (#10128) @sebald.
+- A Snackbar / FAB animation integration example (#10188) @mbrookes.
+- The Select open state can be controlled (#10205) @oliviertassinari.
+- And many more bug fixes and documentation improvements.
+
+### Breaking change
+
+N/A
+
+#### Component Fixes / Enhancements
+
+- [typescript] Use Partial props in TypeScript definitions (#10170) @ianschmitz
+- [GridList] Allow null children in GridListTile (#10179) @caub
+- [Grid] Small performance improvement (#10180) @oliviertassinari
+- [TextField] Correct typo in TypeScript export declaration (#10186) @caghand
+- [Switch] Increase the box shadow when checked (#10187) @leMaik
+- [Stepper] Mobile Stepper variant determinate (#10190) @KeKs0r
+- [MenuItem] Better :hover and .selected logic (#10199) @oliviertassinari
+- [LinearProgress] Property definition grammar fix (#10201) @madison-kerndt
+- [MuiThemeProvider] Forward the options when nested (#10176) @Aetherall
+- [Select] Simpler controlled open property (#10205) @oliviertassinari
+- [typescript] Use types from react-transition-group/Transition (#10129) @sebald
+- [typescript] Export WithTheme from index (#10209) @clekili
+- [Stepper] Increase StepButton space for click (#10204) @AlbertLucianto
+- [ButtonBase] Use parent Window of ButtonBase when listening for keyboard events (#10224) @ianschmitz
+- [StepLabel] Give more flexibility to the style of span surrounding label (#10218) @seanchambo
+- [ButtonBase] Save one line of code (#10225) @oliviertassinari
+
+#### Docs
+
+- [examples] Rename type to variant (#10167) @oliviertassinari
+- [docs] Using "component" prop to customize rendering (#10128) @sebald
+- [docs] Fix the restore focus logic of the Popover demo (#10184) @oliviertassinari
+- [docs] Fix react-select chip on mobile (#10185) @oliviertassinari
+- [docs] Add Snackbar / FAB animation integration example (#10188) @mbrookes
+- [docs] Add LocalMonero to showcase (#10195) @mbrookes
+- [docs] Fix typo `Selet` to `Select` (#10207) @Justkant
+- [docs] Change negative to positive (#10211) @harvitronix
+- [docs] Add project to showcase (#10217) @klyburke
+
+#### Core
+
+- [core] Upgrade Next.js (#10181) @oliviertassinari
+- [test] Remove the mockPortal workaround (#10208) @leMaik
+
+## 1.0.0-beta.32
+###### *Feb 4, 2018*
+
+Big thanks to the 12 contributors who made this release possible.
+
+Here are some highlights ✨:
+
+- Rename the `type` property to `variant` (#10088, #10086, #10084, #10101) @mbrookes.
+- Simplify the implementation of the transitions (#10137, #10151) @oliviertassinari.
+- Add support for `position="sticky"` with the AppBar (#10090) @scottastrophic.
+- And many more bug fixes and documentation improvements.
+
+### Breaking change
+
+- [API] Complete type to variant migration (#10101) @mbrookes
+
+These breaking changes aim at providing a systematic solution to the boolean vs enum naming problem.
+
+We have documented our approach to solving the problem in #10023. Basically, we enforce the following rule:
+- We use a *boolean* when the degrees of freedom required is **2**.
+- We use an *enum* when the degrees of freedom required is **> 2**.
+
+This is what motivated the button breaking change. Unfortunately `type` has its own meaning in the HTML specification. You can use it on the following elements: `, , ,