PK ! q apistar_crud/__init__.py__version__ = "0.2.3"
__license__ = "GPLv3"
__author__ = "José Antonio Perdiguero López"
__email__ = "perdy.hh@gmail.com"
__url__ = "https://github.com/PeRDy/apistar-crud"
__description__ = "API Star tools to create CRUD resources."
PK ! HMU apistar_crud/admin.pyimport typing
from apistar import App, Route, types, validators
class Metadata(types.Type):
resources = validators.Object(title="resources", description="Resource list")
schema = validators.String(title="schema", description="OpenAPI schema")
class Admin:
def __init__(self, *resources):
self.resources = {resource.name: resource for resource in resources}
def main(self, app: App, path: str = ""):
"""
Admin main page presenting a list of resources.
"""
return app.render_template("apistar_crud/admin.html")
def metadata(self, app: App) -> Metadata:
"""
Admin metadata.
"""
return Metadata(
{
"resources": {resource.verbose_name: resource.name for resource in self.resources.values()},
"admin": app.reverse_url("admin:main"),
"schema": app.reverse_url("serve_schema"),
}
)
@property
def routes(self) -> typing.List[Route]:
return [
Route("/", "GET", self.main, name="main", documented=False),
Route("/metadata/", "GET", self.metadata, name="metadata", documented=False),
Route("/{+path}", "GET", self.main, name="main-path", documented=False),
]
PK ! ! apistar_crud/resource/__init__.pyPK ! hV
V
apistar_crud/resource/base.pyimport re
import typing
from apistar import Route
class BaseResource(type):
METHODS = {
"list": ("/", "GET"), # List resource collection
"drop": ("/", "DELETE"), # Drop resource entire collection
"create": ("/", "POST"), # Create a new element for this resource
"retrieve": ("/{element_id}/", "GET"), # Retrieve an element of this resource
"update": ("/{element_id}/", "PUT"), # Update an element of this resource
"delete": ("/{element_id}/", "DELETE"), # Delete an element of this resource
}
AVAILABLE_METHODS = tuple(METHODS.keys())
DEFAULT_METHODS = ("create", "retrieve", "update", "delete", "list")
def __new__(mcs, name, bases, namespace):
try:
resource_name = namespace.get("name", name.lower())
model = namespace["model"]
input_type = namespace["input_type"]
output_type = namespace["output_type"]
except KeyError as e:
raise AttributeError('{} needs to define attribute: "{}"'.format(name, e))
# Check resource name validity
if re.match("[a-zA-Z][-_a-zA-Z]", resource_name) is None:
raise AttributeError('Invalid resource name "{}"'.format(resource_name))
# Add valid name and verbose name
namespace["name"] = resource_name
namespace["verbose_name"] = namespace.get("verbose_name", namespace["name"])
methods = namespace.get("methods", mcs.DEFAULT_METHODS)
# Create CRUD methods and routes
mcs.add_methods(namespace, methods, model, input_type, output_type)
mcs.add_routes(namespace, methods)
return type(name, bases, namespace)
@classmethod
def add_routes(mcs, namespace: typing.Dict[str, typing.Any], methods: typing.Iterable[str]):
class Routes:
"""Routes descriptor"""
def __get__(self, instance, owner):
return [Route(*mcs.METHODS[method], getattr(owner, method), name=method) for method in methods]
namespace["routes"] = Routes()
@classmethod
def add_methods(
mcs, namespace: typing.Dict[str, typing.Any], methods: typing.Iterable[str], model, input_type, output_type
):
# Generate CRUD methods
crud_ns = {
k: v for m in methods for k, v in getattr(mcs, "add_{}".format(m))(model, input_type, output_type).items()
}
# Preserve already defined methods
crud_ns.update({m: crud_ns[f"_{m}"] for m in methods if m not in namespace})
namespace.update(crud_ns)
@classmethod
def add_create(mcs, model, input_type, output_type) -> typing.Dict[str, typing.Any]:
raise NotImplementedError
@classmethod
def add_retrieve(mcs, model, input_type, output_type) -> typing.Dict[str, typing.Any]:
raise NotImplementedError
@classmethod
def add_update(mcs, model, input_type, output_type) -> typing.Dict[str, typing.Any]:
raise NotImplementedError
@classmethod
def add_delete(mcs, model, input_type, output_type) -> typing.Dict[str, typing.Any]:
raise NotImplementedError
@classmethod
def add_list(mcs, model, input_type, output_type) -> typing.Dict[str, typing.Any]:
raise NotImplementedError
@classmethod
def add_drop(mcs, model, input_type, output_type) -> typing.Dict[str, typing.Any]:
raise NotImplementedError
PK ! lU apistar_crud/resource/peewee.pyimport operator
import typing
from functools import reduce
from apistar import http, types, validators
from apistar.exceptions import NotFound
from apistar_pagination import PageNumberResponse
from peewee import DoesNotExist
from apistar_crud.resource.base import BaseResource
class Resource(BaseResource):
@classmethod
def add_create(mcs, model, input_type, output_type) -> typing.Dict[str, typing.Any]:
def create(cls, element: input_type) -> output_type:
"""
Create a new element for this resource.
"""
record = model.create(**element)
return http.JSONResponse(output_type(record), status_code=201)
return {"_create": classmethod(create)}
@classmethod
def add_retrieve(mcs, model, input_type, output_type) -> typing.Dict[str, typing.Any]:
def retrieve(cls, element_id: str) -> output_type:
"""
Retrieve an element of this resource.
"""
try:
record = model.get_by_id(element_id)
except DoesNotExist:
raise NotFound
return output_type(record)
return {"_retrieve": classmethod(retrieve)}
@classmethod
def add_update(mcs, model, input_type, output_type) -> typing.Dict[str, typing.Any]:
def update(cls, element_id: str, element: input_type) -> output_type:
"""
Update an element of this resource.
"""
try:
record = model.get_by_id(element_id)
except DoesNotExist:
raise NotFound
for k, value in element.items():
setattr(record, k, value)
record.save()
return http.JSONResponse(output_type(record), status_code=200)
return {"_update": classmethod(update)}
@classmethod
def add_delete(mcs, model, input_type, output_type) -> typing.Dict[str, typing.Any]:
def delete(cls, element_id: str) -> typing.Dict[str, typing.Any]:
"""
Delete an element of this resource.
"""
try:
record = model.get_by_id(element_id)
except DoesNotExist:
raise NotFound
record.delete_instance()
return http.JSONResponse(None, status_code=204)
return {"_delete": classmethod(delete)}
@classmethod
def add_list(mcs, model, input_type, output_type) -> typing.Dict[str, typing.Any]:
def filter_(cls, **filters) -> typing.List[output_type]:
"""
Filtering over a resource collection.
"""
queryset = model.select()
filters = {k: v for k, v in filters.items() if v}
if filters:
queryset = queryset.where(reduce(operator.and_, [(getattr(model, k) == v) for k, v in filters.items()]))
return [output_type(record) for record in queryset]
def list_(cls, page: http.QueryParam = None, page_size: http.QueryParam = None) -> typing.List[output_type]:
"""
List resource collection.
"""
return PageNumberResponse(page=page, page_size=page_size, content=cls._filter()) # noqa
return {"_list": classmethod(list_), "_filter": classmethod(filter_)}
@classmethod
def add_drop(mcs, model, input_type, output_type) -> typing.Dict[str, typing.Any]:
class DropOutput(types.Type):
deleted = validators.Integer(title="deleted", description="Number of deleted elements", minimum=0)
def drop(cls) -> DropOutput:
"""
Drop resource collection.
"""
num_records = model.delete().execute()
return http.JSONResponse(DropOutput({"deleted": num_records}), status_code=204)
return {"_drop": classmethod(drop)}
PK ! b*Eq q # apistar_crud/resource/sqlalchemy.pyimport typing
from apistar import http, types, validators
from apistar.exceptions import NotFound
from apistar_pagination import PageNumberResponse
from sqlalchemy.orm import Session
from apistar_crud.resource.base import BaseResource
class Resource(BaseResource):
@classmethod
def add_create(mcs, model, input_type, output_type) -> typing.Dict[str, typing.Any]:
def create(cls, session: Session, element: input_type) -> output_type:
"""
Create a new element for this resource.
"""
record = model(**element)
session.add(record)
session.flush()
return http.JSONResponse(output_type(record), status_code=201)
return {"_create": classmethod(create)}
@classmethod
def add_retrieve(mcs, model, input_type, output_type) -> typing.Dict[str, typing.Any]:
def retrieve(cls, session: Session, element_id: str) -> output_type:
"""
Retrieve an element of this resource.
"""
record = session.query(model).get(element_id)
if record is None:
raise NotFound
return output_type(record)
return {"_retrieve": classmethod(retrieve)}
@classmethod
def add_update(mcs, model, input_type, output_type) -> typing.Dict[str, typing.Any]:
def update(cls, session: Session, element_id: str, element: input_type) -> output_type:
"""
Update an element of this resource.
"""
record = session.query(model).get(element_id)
if record is None:
raise NotFound
for k, value in element.items():
setattr(record, k, value)
return http.JSONResponse(output_type(record), status_code=200)
return {"_update": classmethod(update)}
@classmethod
def add_delete(mcs, model, input_type, output_type) -> typing.Dict[str, typing.Any]:
def delete(cls, session: Session, element_id: str) -> typing.Dict[str, typing.Any]:
"""
Delete an element of this resource.
"""
if session.query(model).filter_by(id=element_id).count() == 0:
raise NotFound
session.query(model).filter_by(id=element_id).delete()
return http.JSONResponse(None, status_code=204)
return {"_delete": classmethod(delete)}
@classmethod
def add_list(mcs, model, input_type, output_type) -> typing.Dict[str, typing.Any]:
def filter_(cls, session: Session, **filters) -> typing.List[output_type]:
"""
Filter resource collection.
"""
filters = {k: v for k, v in filters.items() if v}
if filters:
queryset = session.query(model).filter_by(**filters)
else:
queryset = session.query(model).all()
return [output_type(record) for record in queryset]
def list_(cls, page: http.QueryParam = None, page_size: http.QueryParam = None) -> typing.List[output_type]:
"""
List resource collection.
"""
return PageNumberResponse(page=page, page_size=page_size, content=cls._filter()) # noqa
return {"_list": classmethod(list_), "_filter": classmethod(filter_)}
@classmethod
def add_drop(mcs, model, input_type, output_type) -> typing.Dict[str, typing.Any]:
class DropOutput(types.Type):
deleted = validators.Integer(title="deleted", description="Number of deleted elements", minimum=0)
def drop(cls, session: Session) -> DropOutput:
"""
Drop resource collection.
"""
num_records = session.query(model).count()
session.query(model).delete()
return http.JSONResponse(DropOutput({"deleted": num_records}), status_code=204)
return {"_drop": classmethod(drop)}
PK ! 3 apistar_crud/routes.pyimport typing
from collections import namedtuple
from apistar import Include
from apistar_crud.admin import Admin
__all__ = ["routes"]
RouteOptions = namedtuple("RouteOptions", ("url", "admin"))
class Routes:
def __init__(self):
self.resources = {}
def register(self, resource, url: str = None, admin: bool = True):
"""
Register a resource.
:param resource: Resource.
:param url: Route url.
:param admin: True if should be added to admin site.
"""
url = url or "/{}".format(resource.name)
self.resources[resource] = RouteOptions(url, admin)
def routes(self, admin="/admin") -> typing.List[Include]:
"""
Generate the list of routes for all resources and admin views.
:param admin: Admin path, disabled if None.
:return: List of routes.
"""
r = [Include(opts.url, r.name, r.routes) for r, opts in self.resources.items()]
if admin:
a = Admin(*[r for r, opts in self.resources.items() if opts.admin])
r.append(Include(admin, "admin", a.routes, documented=False))
return r
routes = Routes()
PK ! 5ܽ2C 2C apistar_crud/static/index.js(window["webpackJsonp"] = window["webpackJsonp"] || []).push([["index"],{
/***/ "./admin/App.js":
/*!**********************!*\
!*** ./admin/App.js ***!
\**********************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _getPrototypeOf = __webpack_require__(/*! babel-runtime/core-js/object/get-prototype-of */ "./node_modules/babel-runtime/core-js/object/get-prototype-of.js");
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
var _classCallCheck2 = __webpack_require__(/*! babel-runtime/helpers/classCallCheck */ "./node_modules/babel-runtime/helpers/classCallCheck.js");
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = __webpack_require__(/*! babel-runtime/helpers/createClass */ "./node_modules/babel-runtime/helpers/createClass.js");
var _createClass3 = _interopRequireDefault(_createClass2);
var _possibleConstructorReturn2 = __webpack_require__(/*! babel-runtime/helpers/possibleConstructorReturn */ "./node_modules/babel-runtime/helpers/possibleConstructorReturn.js");
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
var _inherits2 = __webpack_require__(/*! babel-runtime/helpers/inherits */ "./node_modules/babel-runtime/helpers/inherits.js");
var _inherits3 = _interopRequireDefault(_inherits2);
var _react = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js");
var _propTypes2 = _interopRequireDefault(_propTypes);
var _routes = __webpack_require__(/*! ./routes */ "./admin/routes/index.js");
var _routes2 = _interopRequireDefault(_routes);
__webpack_require__(/*! ./App.css */ "./admin/App.css");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var propTypes = {
fetchMetadata: _propTypes2.default.func.isRequired
};
var App = function (_Component) {
(0, _inherits3.default)(App, _Component);
function App() {
(0, _classCallCheck3.default)(this, App);
return (0, _possibleConstructorReturn3.default)(this, (App.__proto__ || (0, _getPrototypeOf2.default)(App)).apply(this, arguments));
}
(0, _createClass3.default)(App, [{
key: 'componentDidMount',
value: function componentDidMount() {
this.props.fetchMetadata();
}
}, {
key: 'render',
value: function render() {
return _react2.default.createElement(
'div',
{ className: 'App' },
_react2.default.createElement(_routes2.default, null)
);
}
}]);
return App;
}(_react.Component);
App.propTypes = propTypes;
exports.default = App;
/***/ }),
/***/ "./admin/AppContainer.js":
/*!*******************************!*\
!*** ./admin/AppContainer.js ***!
\*******************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _reactRedux = __webpack_require__(/*! react-redux */ "./node_modules/react-redux/es/index.js");
var _App = __webpack_require__(/*! ./App */ "./admin/App.js");
var _App2 = _interopRequireDefault(_App);
var _metadata = __webpack_require__(/*! ./ducks/metadata */ "./admin/ducks/metadata.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var mapStatetoProps = function mapStatetoProps(state) {
return {};
};
var mapDispatchToProps = {
fetchMetadata: _metadata.fetchMetadataRequest
};
exports.default = (0, _reactRedux.connect)(mapStatetoProps, mapDispatchToProps)(_App2.default);
/***/ }),
/***/ "./admin/api.js":
/*!**********************!*\
!*** ./admin/api.js ***!
\**********************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.REL_PATH = undefined;
var _stringify = __webpack_require__(/*! babel-runtime/core-js/json/stringify */ "./node_modules/babel-runtime/core-js/json/stringify.js");
var _stringify2 = _interopRequireDefault(_stringify);
var _classCallCheck2 = __webpack_require__(/*! babel-runtime/helpers/classCallCheck */ "./node_modules/babel-runtime/helpers/classCallCheck.js");
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = __webpack_require__(/*! babel-runtime/helpers/createClass */ "./node_modules/babel-runtime/helpers/createClass.js");
var _createClass3 = _interopRequireDefault(_createClass2);
var _superagent = __webpack_require__(/*! superagent */ "./node_modules/superagent/lib/client.js");
var _superagent2 = _interopRequireDefault(_superagent);
var _swaggerClient = __webpack_require__(/*! swagger-client */ "./node_modules/swagger-client/dist/index.js");
var _swaggerClient2 = _interopRequireDefault(_swaggerClient);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var REL_PATH = exports.REL_PATH = '/admin/';
var urls = {
host: 'http://localhost:8000',
metadata: '/admin/metadata/'
};
var Api = function () {
function Api() {
(0, _classCallCheck3.default)(this, Api);
}
(0, _createClass3.default)(Api, null, [{
key: 'fetchMetadata',
value: function fetchMetadata() {
return _superagent2.default.get(urls.host + urls.metadata).then(function (response) {
return response.body;
}).catch(function (error) {
throw Error(error.message);
});
}
}, {
key: 'fetchResource',
value: function fetchResource(payload, client) {
var resourceName = payload.resourceName,
query = payload.query;
return client.apis[resourceName].list(query).then(function (response) {
return response.body;
}).catch(function (error) {
throw Error(error.message);
});
}
}, {
key: 'fetchResourceElement',
value: function fetchResourceElement(payload, client) {
var resource = payload.resourceName;
var id = payload.resourceId;
return client.apis[resource].retrieve({ element_id: id }).then(function (response) {
return response.body;
}).catch(function (error) {
throw Error(error.message);
});
}
}, {
key: 'fetchSwaggerSchema',
value: function fetchSwaggerSchema(schemaUrl) {
return (0, _swaggerClient2.default)(urls.host + schemaUrl).then(function (client) {
return client;
});
}
}, {
key: 'submitResource',
value: function submitResource(payload, client) {
return client.apis[payload.resourceName].create({}, { requestBody: payload.resourceData }).then(function (response) {
return response.body;
}).catch(function (error) {
throw Error((0, _stringify2.default)(error.response.body));
});
}
}, {
key: 'updateResourceElement',
value: function updateResourceElement(payload, client) {
var resourceName = payload.resourceName,
resourceId = payload.resourceId,
resourceData = payload.resourceData;
return client.apis[resourceName].update({ element_id: resourceId }, { requestBody: resourceData }).then(function (response) {
return response.body;
});
}
}, {
key: 'deleteResourceElement',
value: function deleteResourceElement(payload, client) {
var resourceName = payload.resourceName,
resourceId = payload.resourceId;
return client.apis[resourceName].delete({ element_id: resourceId }).then(function (response) {
return response.body;
}).catch(function (error) {
throw Error(error.message);
});
}
}]);
return Api;
}();
exports.default = Api;
/***/ }),
/***/ "./admin/components/Header/Header.js":
/*!*******************************************!*\
!*** ./admin/components/Header/Header.js ***!
\*******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _getPrototypeOf = __webpack_require__(/*! babel-runtime/core-js/object/get-prototype-of */ "./node_modules/babel-runtime/core-js/object/get-prototype-of.js");
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
var _classCallCheck2 = __webpack_require__(/*! babel-runtime/helpers/classCallCheck */ "./node_modules/babel-runtime/helpers/classCallCheck.js");
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = __webpack_require__(/*! babel-runtime/helpers/createClass */ "./node_modules/babel-runtime/helpers/createClass.js");
var _createClass3 = _interopRequireDefault(_createClass2);
var _possibleConstructorReturn2 = __webpack_require__(/*! babel-runtime/helpers/possibleConstructorReturn */ "./node_modules/babel-runtime/helpers/possibleConstructorReturn.js");
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
var _inherits2 = __webpack_require__(/*! babel-runtime/helpers/inherits */ "./node_modules/babel-runtime/helpers/inherits.js");
var _inherits3 = _interopRequireDefault(_inherits2);
var _react = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _react2 = _interopRequireDefault(_react);
var _core = __webpack_require__(/*! @material-ui/core */ "./node_modules/@material-ui/core/index.es.js");
var _reactRouterDom = __webpack_require__(/*! react-router-dom */ "./node_modules/react-router-dom/es/index.js");
var _reactRedux = __webpack_require__(/*! react-redux */ "./node_modules/react-redux/es/index.js");
var _styles = __webpack_require__(/*! @material-ui/core/styles */ "./node_modules/@material-ui/core/styles/index.js");
var _api = __webpack_require__(/*! ../../api */ "./admin/api.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var Header = function (_React$Component) {
(0, _inherits3.default)(Header, _React$Component);
function Header() {
(0, _classCallCheck3.default)(this, Header);
return (0, _possibleConstructorReturn3.default)(this, (Header.__proto__ || (0, _getPrototypeOf2.default)(Header)).apply(this, arguments));
}
(0, _createClass3.default)(Header, [{
key: 'render',
value: function render() {
return _react2.default.createElement(
_core.AppBar,
{ position: 'static' },
_react2.default.createElement(
_core.Toolbar,
null,
_react2.default.createElement(
_core.Typography,
{ variant: 'title', color: 'inherit' },
_react2.default.createElement(
_reactRouterDom.Link,
{ to: _api.REL_PATH, className: 'HeaderLink' },
'APISTAR'
)
)
)
);
}
}]);
return Header;
}(_react2.default.Component);
var mapStateToProps = function mapStateToProps(state) {
return {
metadata: state.metadata
};
};
exports.default = (0, _styles.withTheme)()((0, _reactRedux.connect)(mapStateToProps)(Header));
/***/ }),
/***/ "./admin/components/Header/index.js":
/*!******************************************!*\
!*** ./admin/components/Header/index.js ***!
\******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _Header = __webpack_require__(/*! ./Header */ "./admin/components/Header/Header.js");
var _Header2 = _interopRequireDefault(_Header);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = _Header2.default;
/***/ }),
/***/ "./admin/components/ResourceForm/ResourceForm.jsx":
/*!********************************************************!*\
!*** ./admin/components/ResourceForm/ResourceForm.jsx ***!
\********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _entries = __webpack_require__(/*! babel-runtime/core-js/object/entries */ "./node_modules/babel-runtime/core-js/object/entries.js");
var _entries2 = _interopRequireDefault(_entries);
var _defineProperty2 = __webpack_require__(/*! babel-runtime/helpers/defineProperty */ "./node_modules/babel-runtime/helpers/defineProperty.js");
var _defineProperty3 = _interopRequireDefault(_defineProperty2);
var _getPrototypeOf = __webpack_require__(/*! babel-runtime/core-js/object/get-prototype-of */ "./node_modules/babel-runtime/core-js/object/get-prototype-of.js");
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
var _classCallCheck2 = __webpack_require__(/*! babel-runtime/helpers/classCallCheck */ "./node_modules/babel-runtime/helpers/classCallCheck.js");
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = __webpack_require__(/*! babel-runtime/helpers/createClass */ "./node_modules/babel-runtime/helpers/createClass.js");
var _createClass3 = _interopRequireDefault(_createClass2);
var _possibleConstructorReturn2 = __webpack_require__(/*! babel-runtime/helpers/possibleConstructorReturn */ "./node_modules/babel-runtime/helpers/possibleConstructorReturn.js");
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
var _inherits2 = __webpack_require__(/*! babel-runtime/helpers/inherits */ "./node_modules/babel-runtime/helpers/inherits.js");
var _inherits3 = _interopRequireDefault(_inherits2);
var _react = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _react2 = _interopRequireDefault(_react);
var _reactRedux = __webpack_require__(/*! react-redux */ "./node_modules/react-redux/es/index.js");
var _propTypes = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js");
var _propTypes2 = _interopRequireDefault(_propTypes);
var _core = __webpack_require__(/*! @material-ui/core */ "./node_modules/@material-ui/core/index.es.js");
var _resource = __webpack_require__(/*! ../../ducks/resource */ "./admin/ducks/resource.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var propTypes = {
schema: _propTypes2.default.object,
setCurrentResourceElement: _propTypes2.default.func,
updateResourceElement: _propTypes2.default.func,
submitResource: _propTypes2.default.func,
deleteResourceElement: _propTypes2.default.func,
resourceId: _propTypes2.default.string,
resourceName: _propTypes2.default.string,
currentResourceElement: _propTypes2.default.object
};
var defaultProps = {};
var typeMaps = {
string: 'text',
integer: 'number',
float: 'number', // TODO: fix
datetime: 'datetime' // TODO: fix
};
var ResourceForm = function (_React$Component) {
(0, _inherits3.default)(ResourceForm, _React$Component);
function ResourceForm() {
(0, _classCallCheck3.default)(this, ResourceForm);
var _this = (0, _possibleConstructorReturn3.default)(this, (ResourceForm.__proto__ || (0, _getPrototypeOf2.default)(ResourceForm)).call(this));
_this.handleInputChange = _this.handleInputChange.bind(_this);
_this.handleSubmit = _this.handleSubmit.bind(_this);
_this.handleDialogClose = _this.handleDialogClose.bind(_this);
_this.handleDialogOpen = _this.handleDialogOpen.bind(_this);
_this.handleDeleteConfirmClick = _this.handleDeleteConfirmClick.bind(_this);
_this.state = { data: null, isDialogOpen: false };
return _this;
}
(0, _createClass3.default)(ResourceForm, [{
key: 'handleInputChange',
value: function handleInputChange(evt) {
var _evt$target = evt.target,
name = _evt$target.name,
value = _evt$target.value;
this.props.setCurrentResourceElement((0, _defineProperty3.default)({}, name, value));
}
}, {
key: 'handleSubmit',
value: function handleSubmit(evt) {
evt.preventDefault();
if (this.props.resourceId !== 'new') {
this.props.updateResourceElement({
resourceName: this.props.resourceName,
resourceData: this.props.currentResourceElement,
resourceId: this.props.resourceId
});
} else {
this.props.submitResource({
resourceName: this.props.resourceName,
resourceData: this.props.currentResourceElement
});
}
}
}, {
key: 'handleDialogClose',
value: function handleDialogClose() {
this.setState({ isDialogOpen: false });
}
}, {
key: 'handleDialogOpen',
value: function handleDialogOpen() {
this.setState({ isDialogOpen: true });
}
}, {
key: 'handleDeleteConfirmClick',
value: function handleDeleteConfirmClick() {
this.props.deleteResourceElement({
resourceName: this.props.resourceName,
resourceId: this.props.resourceId
});
}
}, {
key: 'render',
value: function render() {
var _this2 = this;
var data = this.props.currentResourceElement;
var errors = this.props.errors;
var resourceSchema = this.props.schema && this.props.schema.spec.paths['/' + this.props.resourceName + '/'].post.requestBody.content['application/json'].schema;
var requiredFields = resourceSchema && resourceSchema.required;
return resourceSchema ? _react2.default.createElement(
'form',
{ action: '', onSubmit: this.handleSubmit },
_react2.default.createElement(
_core.Grid,
{ container: true, alignItems: 'center', justify: 'center' },
_react2.default.createElement(
_core.Grid,
{ item: true, xs: 12, sm: 5 },
(0, _entries2.default)(resourceSchema.properties).map(function (field) {
return _react2.default.createElement(_core.TextField, {
key: field[1].title,
error: errors && (field[1].title ? !!errors[field[1].title] : !!errors[field[0]]),
type: typeMaps[field[1].type] || 'text',
min: field[1].minimum,
max: field[1].maximum,
id: field[1].title || field[0],
label: field[1].description,
name: field[1].title || field[0],
value: data && (data[field[1].title] || data[field[0]]) || '',
onChange: _this2.handleInputChange,
margin: 'normal',
fullWidth: true,
required: requiredFields.includes(field[0]),
helperText: errors && (field[1].title ? errors[field[1].title] : errors[field[0]]) || null
});
}),
this.props.resourceId !== 'new' && _react2.default.createElement(
_core.Button,
{
variant: 'contained',
color: 'secondary',
className: 'ButtonDelete',
onClick: this.handleDialogOpen
},
'Delete'
),
_react2.default.createElement(
_core.Button,
{
variant: 'contained',
color: 'primary',
type: 'submit',
className: 'ButtonSave'
},
'Save'
),
_react2.default.createElement(
_core.Dialog,
{
open: this.state.isDialogOpen,
onClose: this.handleDialogClose,
'aria-labelledby': 'alert-dialog-title',
'aria-describedby': 'alert-dialog-description'
},
_react2.default.createElement(
_core.DialogTitle,
{ id: 'alert-dialog-title' },
'Confirm'
),
_react2.default.createElement(
_core.DialogContent,
null,
_react2.default.createElement(
_core.DialogContentText,
{ id: 'alert-dialog-description' },
'Are you sure you want to delete this item?'
)
),
_react2.default.createElement(
_core.DialogActions,
null,
_react2.default.createElement(
_core.Button,
{
onClick: this.handleDeleteConfirmClick,
color: 'secondary',
variant: 'contained',
autoFocus: true
},
'Yes, Delete.'
),
_react2.default.createElement(
_core.Button,
{ onClick: this.handleDialogClose },
'Cancel'
)
)
)
)
)
) : _react2.default.createElement(
'div',
{ className: 'SpinnerContainer' },
_react2.default.createElement(_core.CircularProgress, null)
);
}
}]);
return ResourceForm;
}(_react2.default.Component);
ResourceForm.propTypes = propTypes;
ResourceForm.defaultProps = defaultProps;
var mapStateToProps = function mapStateToProps(state) {
return {
resources: state.resource.entities,
schema: state.metadata.client,
currentResourceElement: state.resource.currentResourceElement,
errors: state.resource.errors
};
};
var mapDispatchToProps = {
submitResource: _resource.submitResourceRequest,
setCurrentResourceElement: _resource.setCurrentResourceElement,
updateResourceElement: _resource.updateResourceElementRequest,
deleteResourceElement: _resource.deleteResourceElementRequest
};
exports.default = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)(ResourceForm);
/***/ }),
/***/ "./admin/components/ResourceForm/index.js":
/*!************************************************!*\
!*** ./admin/components/ResourceForm/index.js ***!
\************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _ResourceForm = __webpack_require__(/*! ./ResourceForm */ "./admin/components/ResourceForm/ResourceForm.jsx");
var _ResourceForm2 = _interopRequireDefault(_ResourceForm);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = _ResourceForm2.default;
/***/ }),
/***/ "./admin/components/TablePaginationActions/TablePaginationActions.jsx":
/*!****************************************************************************!*\
!*** ./admin/components/TablePaginationActions/TablePaginationActions.jsx ***!
\****************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _getPrototypeOf = __webpack_require__(/*! babel-runtime/core-js/object/get-prototype-of */ "./node_modules/babel-runtime/core-js/object/get-prototype-of.js");
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
var _classCallCheck2 = __webpack_require__(/*! babel-runtime/helpers/classCallCheck */ "./node_modules/babel-runtime/helpers/classCallCheck.js");
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = __webpack_require__(/*! babel-runtime/helpers/createClass */ "./node_modules/babel-runtime/helpers/createClass.js");
var _createClass3 = _interopRequireDefault(_createClass2);
var _possibleConstructorReturn2 = __webpack_require__(/*! babel-runtime/helpers/possibleConstructorReturn */ "./node_modules/babel-runtime/helpers/possibleConstructorReturn.js");
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
var _inherits2 = __webpack_require__(/*! babel-runtime/helpers/inherits */ "./node_modules/babel-runtime/helpers/inherits.js");
var _inherits3 = _interopRequireDefault(_inherits2);
var _react = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js");
var _propTypes2 = _interopRequireDefault(_propTypes);
var _core = __webpack_require__(/*! @material-ui/core */ "./node_modules/@material-ui/core/index.es.js");
var _icons = __webpack_require__(/*! @material-ui/icons/ */ "./node_modules/@material-ui/icons/index.es.js");
var _FirstPage = __webpack_require__(/*! @material-ui/icons/FirstPage */ "./node_modules/@material-ui/icons/FirstPage.js");
var _FirstPage2 = _interopRequireDefault(_FirstPage);
var _LastPage = __webpack_require__(/*! @material-ui/icons/LastPage */ "./node_modules/@material-ui/icons/LastPage.js");
var _LastPage2 = _interopRequireDefault(_LastPage);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var propTypes = {
onChangePage: _propTypes2.default.func,
rowsPerPage: _propTypes2.default.number,
count: _propTypes2.default.number,
page: _propTypes2.default.number
};
var TablePaginationActions = function (_React$Component) {
(0, _inherits3.default)(TablePaginationActions, _React$Component);
function TablePaginationActions() {
(0, _classCallCheck3.default)(this, TablePaginationActions);
var _this = (0, _possibleConstructorReturn3.default)(this, (TablePaginationActions.__proto__ || (0, _getPrototypeOf2.default)(TablePaginationActions)).call(this));
_this.handleBackButtonClick = _this.handleBackButtonClick.bind(_this);
_this.handleFirstPageButtonClick = _this.handleFirstPageButtonClick.bind(_this);
_this.handleNextButtonClick = _this.handleNextButtonClick.bind(_this);
_this.handleLastPageButtonClick = _this.handleLastPageButtonClick.bind(_this);
return _this;
}
(0, _createClass3.default)(TablePaginationActions, [{
key: 'handleFirstPageButtonClick',
value: function handleFirstPageButtonClick(event) {
this.props.onChangePage(event, 0);
}
}, {
key: 'handleBackButtonClick',
value: function handleBackButtonClick(event) {
this.props.onChangePage(event, this.props.page - 1);
}
}, {
key: 'handleNextButtonClick',
value: function handleNextButtonClick(event) {
this.props.onChangePage(event, this.props.page + 1);
}
}, {
key: 'handleLastPageButtonClick',
value: function handleLastPageButtonClick(event) {
this.props.onChangePage(event, Math.max(0, Math.ceil(this.props.count / this.props.rowsPerPage) - 1));
}
}, {
key: 'render',
value: function render() {
var _props = this.props,
count = _props.count,
page = _props.page,
rowsPerPage = _props.rowsPerPage;
return _react2.default.createElement(
'div',
{ className: 'TableActions' },
_react2.default.createElement(
_core.IconButton,
{
onClick: this.handleFirstPageButtonClick,
disabled: page === 0,
'aria-label': 'First Page'
},
_react2.default.createElement(_FirstPage2.default, null)
),
_react2.default.createElement(
_core.IconButton,
{
onClick: this.handleBackButtonClick,
disabled: page === 0,
'aria-label': 'Previous Page'
},
_react2.default.createElement(_icons.KeyboardArrowLeft, null)
),
_react2.default.createElement(
_core.IconButton,
{
onClick: this.handleNextButtonClick,
disabled: page >= Math.ceil(count / rowsPerPage) - 1,
'aria-label': 'Next Page'
},
_react2.default.createElement(_icons.KeyboardArrowRight, null)
),
_react2.default.createElement(
_core.IconButton,
{
onClick: this.handleLastPageButtonClick,
disabled: page >= Math.ceil(count / rowsPerPage) - 1,
'aria-label': 'Last Page'
},
_react2.default.createElement(_LastPage2.default, null)
)
);
}
}]);
return TablePaginationActions;
}(_react2.default.Component);
TablePaginationActions.propTypes = propTypes;
exports.default = TablePaginationActions;
/***/ }),
/***/ "./admin/components/TablePaginationActions/index.jsx":
/*!***********************************************************!*\
!*** ./admin/components/TablePaginationActions/index.jsx ***!
\***********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _TablePaginationActions = __webpack_require__(/*! ./TablePaginationActions */ "./admin/components/TablePaginationActions/TablePaginationActions.jsx");
var _TablePaginationActions2 = _interopRequireDefault(_TablePaginationActions);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = _TablePaginationActions2.default;
/***/ }),
/***/ "./admin/ducks/index.js":
/*!******************************!*\
!*** ./admin/ducks/index.js ***!
\******************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _redux = __webpack_require__(/*! redux */ "./node_modules/redux/es/index.js");
var _metadata = __webpack_require__(/*! ./metadata */ "./admin/ducks/metadata.js");
var _metadata2 = _interopRequireDefault(_metadata);
var _resource = __webpack_require__(/*! ./resource */ "./admin/ducks/resource.js");
var _resource2 = _interopRequireDefault(_resource);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = (0, _redux.combineReducers)({
metadata: _metadata2.default,
resource: _resource2.default
});
/***/ }),
/***/ "./admin/ducks/metadata.js":
/*!*********************************!*\
!*** ./admin/ducks/metadata.js ***!
\*********************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.fetchMetadataFailure = exports.fetchMetadataSuccess = exports.fetchMetadataRequest = exports.FETCH_METADATA_FAILURE = exports.FETCH_METADATA_SUCCESS = exports.FETCH_METADATA_REQUEST = undefined;
var _defineProperty2 = __webpack_require__(/*! babel-runtime/helpers/defineProperty */ "./node_modules/babel-runtime/helpers/defineProperty.js");
var _defineProperty3 = _interopRequireDefault(_defineProperty2);
var _extends2 = __webpack_require__(/*! babel-runtime/helpers/extends */ "./node_modules/babel-runtime/helpers/extends.js");
var _extends3 = _interopRequireDefault(_extends2);
var _handleActions;
var _reduxActions = __webpack_require__(/*! redux-actions */ "./node_modules/redux-actions/es/index.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var FETCH_METADATA_REQUEST = exports.FETCH_METADATA_REQUEST = 'metadata/fetch/REQUEST';
var FETCH_METADATA_SUCCESS = exports.FETCH_METADATA_SUCCESS = 'metadata/fetch/SUCCESS';
var FETCH_METADATA_FAILURE = exports.FETCH_METADATA_FAILURE = 'metadata/fetch/FAILURE';
var fetchMetadataRequest = exports.fetchMetadataRequest = (0, _reduxActions.createAction)(FETCH_METADATA_REQUEST);
var fetchMetadataSuccess = exports.fetchMetadataSuccess = (0, _reduxActions.createAction)(FETCH_METADATA_SUCCESS);
var fetchMetadataFailure = exports.fetchMetadataFailure = (0, _reduxActions.createAction)(FETCH_METADATA_FAILURE);
var initialState = {
resources: null,
schema: null,
client: null
};
exports.default = (0, _reduxActions.handleActions)((_handleActions = {}, (0, _defineProperty3.default)(_handleActions, FETCH_METADATA_SUCCESS, function (state, _ref) {
var payload = _ref.payload;
return (0, _extends3.default)({}, state, {
resources: payload.resources,
schema: payload.schema,
client: payload.client
});
}), (0, _defineProperty3.default)(_handleActions, FETCH_METADATA_FAILURE, function (state, _ref2) {
var payload = _ref2.payload;
return (0, _extends3.default)({}, state, {
error: payload
});
}), _handleActions), initialState);
/***/ }),
/***/ "./admin/ducks/resource.js":
/*!*********************************!*\
!*** ./admin/ducks/resource.js ***!
\*********************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.deleteResourceElementRequest = exports.setCurrentResourceElement = exports.updateResourceElementFailure = exports.updateResourceElementSuccess = exports.updateResourceElementRequest = exports.submitResourceFailure = exports.submitResourceSuccess = exports.submitResourceRequest = exports.fetchCurrentResourceSuccess = exports.fetchCurrentResourceRequest = exports.fetchResourceEntitiesSuccess = exports.fetchResourceEntitiesRequest = exports.DELETE_RESOURCE_ELEMENT_REQUEST = exports.SET_CURRENT_RESOURCE_ELEMENT = exports.UPDATE_RESOURCE_ELEMENT_FAILURE = exports.UPDATE_RESOURCE_ELEMENT_SUCCESS = exports.UPDATE_RESOURCE_ELEMENT_REQUEST = exports.SUBMIT_RESOURCE_FAILURE = exports.SUBMIT_RESOURCE_SUCCESS = exports.SUBMIT_RESOURCE_REQUEST = exports.FETCH_CURRENT_RESOURCE_FAILURE = exports.FETCH_CURRENT_RESOURCE_SUCCESS = exports.FETCH_CURRENT_RESOURCE_REQUEST = exports.FETCH_RESOURCE_ENTITIES_FAILURE = exports.FETCH_RESOURCE_ENTITIES_SUCCESS = exports.FETCH_RESOURCE_ENTITIES_REQUEST = undefined;
var _defineProperty2 = __webpack_require__(/*! babel-runtime/helpers/defineProperty */ "./node_modules/babel-runtime/helpers/defineProperty.js");
var _defineProperty3 = _interopRequireDefault(_defineProperty2);
var _toConsumableArray2 = __webpack_require__(/*! babel-runtime/helpers/toConsumableArray */ "./node_modules/babel-runtime/helpers/toConsumableArray.js");
var _toConsumableArray3 = _interopRequireDefault(_toConsumableArray2);
var _extends2 = __webpack_require__(/*! babel-runtime/helpers/extends */ "./node_modules/babel-runtime/helpers/extends.js");
var _extends3 = _interopRequireDefault(_extends2);
var _handleActions;
var _reduxActions = __webpack_require__(/*! redux-actions */ "./node_modules/redux-actions/es/index.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var FETCH_RESOURCE_ENTITIES_REQUEST = exports.FETCH_RESOURCE_ENTITIES_REQUEST = 'resource/entities/fetch/REQUEST';
var FETCH_RESOURCE_ENTITIES_SUCCESS = exports.FETCH_RESOURCE_ENTITIES_SUCCESS = 'resource/entities/fetch/SUCCESS';
var FETCH_RESOURCE_ENTITIES_FAILURE = exports.FETCH_RESOURCE_ENTITIES_FAILURE = 'resource/entities/fetch/FAILURE';
var FETCH_CURRENT_RESOURCE_REQUEST = exports.FETCH_CURRENT_RESOURCE_REQUEST = 'resource/current-resource/REQUEST';
var FETCH_CURRENT_RESOURCE_SUCCESS = exports.FETCH_CURRENT_RESOURCE_SUCCESS = 'resource/current-resource/SUCCESS';
var FETCH_CURRENT_RESOURCE_FAILURE = exports.FETCH_CURRENT_RESOURCE_FAILURE = 'resource/current-resource/FAILURE';
var SUBMIT_RESOURCE_REQUEST = exports.SUBMIT_RESOURCE_REQUEST = 'resource/submit/REQUEST';
var SUBMIT_RESOURCE_SUCCESS = exports.SUBMIT_RESOURCE_SUCCESS = 'resource/submit/SUCCESS';
var SUBMIT_RESOURCE_FAILURE = exports.SUBMIT_RESOURCE_FAILURE = 'resource/submit/FAILURE';
var UPDATE_RESOURCE_ELEMENT_REQUEST = exports.UPDATE_RESOURCE_ELEMENT_REQUEST = 'resource/update/REQUEST';
var UPDATE_RESOURCE_ELEMENT_SUCCESS = exports.UPDATE_RESOURCE_ELEMENT_SUCCESS = 'resource/update/SUCCESS';
var UPDATE_RESOURCE_ELEMENT_FAILURE = exports.UPDATE_RESOURCE_ELEMENT_FAILURE = 'resource/update/FAILURE';
var SET_CURRENT_RESOURCE_ELEMENT = exports.SET_CURRENT_RESOURCE_ELEMENT = 'resource/current-resource/SET';
var DELETE_RESOURCE_ELEMENT_REQUEST = exports.DELETE_RESOURCE_ELEMENT_REQUEST = 'resource/delete/REQUEST';
var fetchResourceEntitiesRequest = exports.fetchResourceEntitiesRequest = (0, _reduxActions.createAction)(FETCH_RESOURCE_ENTITIES_REQUEST);
var fetchResourceEntitiesSuccess = exports.fetchResourceEntitiesSuccess = (0, _reduxActions.createAction)(FETCH_RESOURCE_ENTITIES_SUCCESS);
var fetchCurrentResourceRequest = exports.fetchCurrentResourceRequest = (0, _reduxActions.createAction)(FETCH_CURRENT_RESOURCE_REQUEST);
var fetchCurrentResourceSuccess = exports.fetchCurrentResourceSuccess = (0, _reduxActions.createAction)(FETCH_CURRENT_RESOURCE_SUCCESS);
var submitResourceRequest = exports.submitResourceRequest = (0, _reduxActions.createAction)(SUBMIT_RESOURCE_REQUEST);
var submitResourceSuccess = exports.submitResourceSuccess = (0, _reduxActions.createAction)(SUBMIT_RESOURCE_SUCCESS);
var submitResourceFailure = exports.submitResourceFailure = (0, _reduxActions.createAction)(SUBMIT_RESOURCE_FAILURE);
var updateResourceElementRequest = exports.updateResourceElementRequest = (0, _reduxActions.createAction)(UPDATE_RESOURCE_ELEMENT_REQUEST);
var updateResourceElementSuccess = exports.updateResourceElementSuccess = (0, _reduxActions.createAction)(UPDATE_RESOURCE_ELEMENT_SUCCESS);
var updateResourceElementFailure = exports.updateResourceElementFailure = (0, _reduxActions.createAction)(UPDATE_RESOURCE_ELEMENT_FAILURE);
var setCurrentResourceElement = exports.setCurrentResourceElement = (0, _reduxActions.createAction)(SET_CURRENT_RESOURCE_ELEMENT);
var deleteResourceElementRequest = exports.deleteResourceElementRequest = (0, _reduxActions.createAction)(DELETE_RESOURCE_ELEMENT_REQUEST);
var initialState = {
entities: null,
currentResourceElement: null,
rowsPerPage: null,
totalCount: null,
currentPage: null,
errors: null
};
exports.default = (0, _reduxActions.handleActions)((_handleActions = {}, (0, _defineProperty3.default)(_handleActions, FETCH_RESOURCE_ENTITIES_SUCCESS, function (state, _ref) {
var payload = _ref.payload;
return (0, _extends3.default)({}, state, {
entities: payload.resources.data,
currentResourceElement: null,
rowsPerPage: payload.resources.meta.page_size,
currentPage: payload.resources.meta.page,
totalCount: payload.resources.meta.count
});
}), (0, _defineProperty3.default)(_handleActions, FETCH_CURRENT_RESOURCE_SUCCESS, function (state, _ref2) {
var payload = _ref2.payload;
return (0, _extends3.default)({}, state, {
currentResourceElement: payload
});
}), (0, _defineProperty3.default)(_handleActions, SUBMIT_RESOURCE_SUCCESS, function (state, _ref3) {
var payload = _ref3.payload;
return (0, _extends3.default)({}, state, {
entities: [].concat((0, _toConsumableArray3.default)(state.entities), [payload])
});
}), (0, _defineProperty3.default)(_handleActions, SUBMIT_RESOURCE_FAILURE, function (state, _ref4) {
var payload = _ref4.payload;
return (0, _extends3.default)({}, state, {
errors: payload
});
}), (0, _defineProperty3.default)(_handleActions, SET_CURRENT_RESOURCE_ELEMENT, function (state, _ref5) {
var payload = _ref5.payload;
return (0, _extends3.default)({}, state, {
currentResourceElement: (0, _extends3.default)({}, state.currentResourceElement, payload)
});
}), _handleActions), initialState);
/***/ }),
/***/ "./admin/index.js":
/*!************************!*\
!*** ./admin/index.js ***!
\************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.history = undefined;
var _react = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _react2 = _interopRequireDefault(_react);
var _reactDom = __webpack_require__(/*! react-dom */ "./node_modules/react-dom/index.js");
var _reactDom2 = _interopRequireDefault(_reactDom);
var _AppContainer = __webpack_require__(/*! ./AppContainer */ "./admin/AppContainer.js");
var _AppContainer2 = _interopRequireDefault(_AppContainer);
__webpack_require__(/*! ./index.css */ "./admin/index.css");
var _createBrowserHistory = __webpack_require__(/*! history/createBrowserHistory */ "./node_modules/history/createBrowserHistory.js");
var _createBrowserHistory2 = _interopRequireDefault(_createBrowserHistory);
var _reactRedux = __webpack_require__(/*! react-redux */ "./node_modules/react-redux/es/index.js");
var _redux = __webpack_require__(/*! redux */ "./node_modules/redux/es/index.js");
var _connectedReactRouter = __webpack_require__(/*! connected-react-router */ "./node_modules/connected-react-router/lib/index.js");
var _reduxSaga = __webpack_require__(/*! redux-saga */ "./node_modules/redux-saga/es/index.js");
var _reduxSaga2 = _interopRequireDefault(_reduxSaga);
var _ducks = __webpack_require__(/*! ./ducks */ "./admin/ducks/index.js");
var _ducks2 = _interopRequireDefault(_ducks);
var _sagas = __webpack_require__(/*! ./sagas */ "./admin/sagas/index.js");
var _sagas2 = _interopRequireDefault(_sagas);
var _reactTapEventPlugin = __webpack_require__(/*! react-tap-event-plugin */ "./node_modules/react-tap-event-plugin/src/injectTapEventPlugin.js");
var _reactTapEventPlugin2 = _interopRequireDefault(_reactTapEventPlugin);
var _styles = __webpack_require__(/*! @material-ui/core/styles/ */ "./node_modules/@material-ui/core/styles/index.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var muiTheme = (0, _styles.createMuiTheme)({
palette: {
primary: { main: '#31CACC', contrastText: '#fff' }
}
});
var history = exports.history = (0, _createBrowserHistory2.default)();
var sagaMiddleware = (0, _reduxSaga2.default)();
var composeEnhancers = _redux.compose;
if (true) {
var composeWithDevToolsExtension = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;
if (typeof composeWithDevToolsExtension === 'function') {
composeEnhancers = composeWithDevToolsExtension;
}
}
var store = (0, _redux.createStore)((0, _connectedReactRouter.connectRouter)(history)(_ducks2.default), composeEnhancers((0, _redux.applyMiddleware)((0, _connectedReactRouter.routerMiddleware)(history), sagaMiddleware)));
sagaMiddleware.run(_sagas2.default);
(0, _reactTapEventPlugin2.default)();
_reactDom2.default.render(_react2.default.createElement(
_styles.MuiThemeProvider,
{ theme: muiTheme },
_react2.default.createElement(
_reactRedux.Provider,
{ store: store },
_react2.default.createElement(_AppContainer2.default, null)
)
), document.getElementById('root'));
/***/ }),
/***/ "./admin/routes/DetailPage.jsx":
/*!*************************************!*\
!*** ./admin/routes/DetailPage.jsx ***!
\*************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _extends2 = __webpack_require__(/*! babel-runtime/helpers/extends */ "./node_modules/babel-runtime/helpers/extends.js");
var _extends3 = _interopRequireDefault(_extends2);
var _getPrototypeOf = __webpack_require__(/*! babel-runtime/core-js/object/get-prototype-of */ "./node_modules/babel-runtime/core-js/object/get-prototype-of.js");
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
var _classCallCheck2 = __webpack_require__(/*! babel-runtime/helpers/classCallCheck */ "./node_modules/babel-runtime/helpers/classCallCheck.js");
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = __webpack_require__(/*! babel-runtime/helpers/createClass */ "./node_modules/babel-runtime/helpers/createClass.js");
var _createClass3 = _interopRequireDefault(_createClass2);
var _possibleConstructorReturn2 = __webpack_require__(/*! babel-runtime/helpers/possibleConstructorReturn */ "./node_modules/babel-runtime/helpers/possibleConstructorReturn.js");
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
var _inherits2 = __webpack_require__(/*! babel-runtime/helpers/inherits */ "./node_modules/babel-runtime/helpers/inherits.js");
var _inherits3 = _interopRequireDefault(_inherits2);
var _react = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _react2 = _interopRequireDefault(_react);
var _reactRedux = __webpack_require__(/*! react-redux */ "./node_modules/react-redux/es/index.js");
var _reactRouterDom = __webpack_require__(/*! react-router-dom */ "./node_modules/react-router-dom/es/index.js");
var _propTypes = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js");
var _propTypes2 = _interopRequireDefault(_propTypes);
var _core = __webpack_require__(/*! @material-ui/core */ "./node_modules/@material-ui/core/index.es.js");
var _api = __webpack_require__(/*! ../api */ "./admin/api.js");
var _ResourceForm = __webpack_require__(/*! ../components/ResourceForm */ "./admin/components/ResourceForm/index.js");
var _ResourceForm2 = _interopRequireDefault(_ResourceForm);
var _resource = __webpack_require__(/*! ../ducks/resource */ "./admin/ducks/resource.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var propTypes = {
metadata: _propTypes2.default.shape({
resources: _propTypes2.default.object,
client: _propTypes2.default.object,
schema: _propTypes2.default.string
}),
match: _propTypes2.default.object,
fetchResource: _propTypes2.default.func.isRequired
};
var DetailPage = function (_React$Component) {
(0, _inherits3.default)(DetailPage, _React$Component);
function DetailPage() {
(0, _classCallCheck3.default)(this, DetailPage);
return (0, _possibleConstructorReturn3.default)(this, (DetailPage.__proto__ || (0, _getPrototypeOf2.default)(DetailPage)).apply(this, arguments));
}
(0, _createClass3.default)(DetailPage, [{
key: 'componentDidMount',
value: function componentDidMount() {
if (this.props.match.params.id !== 'new') {
this.props.fetchResource({
resourceName: this.props.match.params.resource,
resourceId: this.props.match.params.id
});
}
}
}, {
key: 'render',
value: function render() {
var resourceName = this.props.match.params.resource;
var resourceId = this.props.match.params.id;
return _react2.default.createElement(
_core.Grid,
{ container: true, className: 'MainContainer' },
_react2.default.createElement(
_core.Grid,
{ item: true, xs: 12 },
_react2.default.createElement(
_core.Button,
{
className: 'ButtonBack',
component: function component(props) {
return _react2.default.createElement(_reactRouterDom.Link, (0, _extends3.default)({ to: '' + _api.REL_PATH + resourceName + '/' }, props));
}
},
_react2.default.createElement(
_core.Icon,
null,
'arrow_back'
),
'\xA0Back'
),
_react2.default.createElement(_ResourceForm2.default, { resourceName: resourceName, resourceId: resourceId })
)
);
}
}]);
return DetailPage;
}(_react2.default.Component);
DetailPage.propTypes = propTypes;
var mapStateToProps = function mapStateToProps(state) {
return {
metadata: state.metadata
};
};
var mapDispatchToProps = {
fetchResource: _resource.fetchCurrentResourceRequest
};
exports.default = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)(DetailPage);
/***/ }),
/***/ "./admin/routes/ErrorPage.jsx":
/*!************************************!*\
!*** ./admin/routes/ErrorPage.jsx ***!
\************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js");
var _propTypes2 = _interopRequireDefault(_propTypes);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var propTypes = {};
var defaultProps = {};
var ErrorPage = function ErrorPage(props) {
return _react2.default.createElement(
'div',
null,
'404 Not found'
);
};
ErrorPage.propTypes = propTypes;
ErrorPage.defaultProps = defaultProps;
exports.default = ErrorPage;
/***/ }),
/***/ "./admin/routes/HomePage.js":
/*!**********************************!*\
!*** ./admin/routes/HomePage.js ***!
\**********************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _extends2 = __webpack_require__(/*! babel-runtime/helpers/extends */ "./node_modules/babel-runtime/helpers/extends.js");
var _extends3 = _interopRequireDefault(_extends2);
var _entries = __webpack_require__(/*! babel-runtime/core-js/object/entries */ "./node_modules/babel-runtime/core-js/object/entries.js");
var _entries2 = _interopRequireDefault(_entries);
var _getPrototypeOf = __webpack_require__(/*! babel-runtime/core-js/object/get-prototype-of */ "./node_modules/babel-runtime/core-js/object/get-prototype-of.js");
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
var _classCallCheck2 = __webpack_require__(/*! babel-runtime/helpers/classCallCheck */ "./node_modules/babel-runtime/helpers/classCallCheck.js");
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = __webpack_require__(/*! babel-runtime/helpers/createClass */ "./node_modules/babel-runtime/helpers/createClass.js");
var _createClass3 = _interopRequireDefault(_createClass2);
var _possibleConstructorReturn2 = __webpack_require__(/*! babel-runtime/helpers/possibleConstructorReturn */ "./node_modules/babel-runtime/helpers/possibleConstructorReturn.js");
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
var _inherits2 = __webpack_require__(/*! babel-runtime/helpers/inherits */ "./node_modules/babel-runtime/helpers/inherits.js");
var _inherits3 = _interopRequireDefault(_inherits2);
var _react = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _react2 = _interopRequireDefault(_react);
var _reactRedux = __webpack_require__(/*! react-redux */ "./node_modules/react-redux/es/index.js");
var _reactRouterDom = __webpack_require__(/*! react-router-dom */ "./node_modules/react-router-dom/es/index.js");
var _propTypes = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js");
var _propTypes2 = _interopRequireDefault(_propTypes);
var _core = __webpack_require__(/*! @material-ui/core */ "./node_modules/@material-ui/core/index.es.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var propTypes = {
metadata: _propTypes2.default.shape({
resources: _propTypes2.default.object,
schema: _propTypes2.default.string,
client: _propTypes2.default.object
})
};
var HomePage = function (_React$Component) {
(0, _inherits3.default)(HomePage, _React$Component);
function HomePage() {
(0, _classCallCheck3.default)(this, HomePage);
return (0, _possibleConstructorReturn3.default)(this, (HomePage.__proto__ || (0, _getPrototypeOf2.default)(HomePage)).apply(this, arguments));
}
(0, _createClass3.default)(HomePage, [{
key: 'render',
value: function render() {
var resources = this.props.metadata.resources;
return resources && _react2.default.createElement(
_core.Grid,
{ container: true, alignItems: 'center', className: 'MainContainer' },
_react2.default.createElement(
_core.Grid,
{ item: true, xs: 12, sm: 6 },
_react2.default.createElement(
_core.Paper,
{ square: true },
_react2.default.createElement(
_core.Typography,
{ variant: 'title', className: 'PanelTitle' },
'Resources'
),
_react2.default.createElement(
_core.List,
{ component: 'nav' },
(0, _entries2.default)(resources).map(function (resource) {
return _react2.default.createElement(
_core.ListItem,
{
key: resource[0],
button: true,
component: function component(props) {
return _react2.default.createElement(_reactRouterDom.Link, (0, _extends3.default)({ to: resource[1] + '/' }, props));
}
},
_react2.default.createElement(_core.ListItemText, { primary: resource[0] })
);
})
)
)
)
);
}
}]);
return HomePage;
}(_react2.default.Component);
HomePage.propTypes = propTypes;
var mapStateToProps = function mapStateToProps(state) {
return {
metadata: state.metadata
};
};
exports.default = (0, _reactRedux.connect)(mapStateToProps)(HomePage);
/***/ }),
/***/ "./admin/routes/ListPage.jsx":
/*!***********************************!*\
!*** ./admin/routes/ListPage.jsx ***!
\***********************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _values = __webpack_require__(/*! babel-runtime/core-js/object/values */ "./node_modules/babel-runtime/core-js/object/values.js");
var _values2 = _interopRequireDefault(_values);
var _extends2 = __webpack_require__(/*! babel-runtime/helpers/extends */ "./node_modules/babel-runtime/helpers/extends.js");
var _extends3 = _interopRequireDefault(_extends2);
var _getPrototypeOf = __webpack_require__(/*! babel-runtime/core-js/object/get-prototype-of */ "./node_modules/babel-runtime/core-js/object/get-prototype-of.js");
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
var _classCallCheck2 = __webpack_require__(/*! babel-runtime/helpers/classCallCheck */ "./node_modules/babel-runtime/helpers/classCallCheck.js");
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = __webpack_require__(/*! babel-runtime/helpers/createClass */ "./node_modules/babel-runtime/helpers/createClass.js");
var _createClass3 = _interopRequireDefault(_createClass2);
var _possibleConstructorReturn2 = __webpack_require__(/*! babel-runtime/helpers/possibleConstructorReturn */ "./node_modules/babel-runtime/helpers/possibleConstructorReturn.js");
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
var _inherits2 = __webpack_require__(/*! babel-runtime/helpers/inherits */ "./node_modules/babel-runtime/helpers/inherits.js");
var _inherits3 = _interopRequireDefault(_inherits2);
var _react = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js");
var _propTypes2 = _interopRequireDefault(_propTypes);
var _reactRedux = __webpack_require__(/*! react-redux */ "./node_modules/react-redux/es/index.js");
var _findKey = __webpack_require__(/*! lodash/findKey */ "./node_modules/lodash/findKey.js");
var _findKey2 = _interopRequireDefault(_findKey);
var _core = __webpack_require__(/*! @material-ui/core */ "./node_modules/@material-ui/core/index.es.js");
var _reactRouterDom = __webpack_require__(/*! react-router-dom */ "./node_modules/react-router-dom/es/index.js");
var _api = __webpack_require__(/*! ../api */ "./admin/api.js");
var _TablePaginationActions = __webpack_require__(/*! ../components/TablePaginationActions */ "./admin/components/TablePaginationActions/index.jsx");
var _TablePaginationActions2 = _interopRequireDefault(_TablePaginationActions);
var _resource = __webpack_require__(/*! ../ducks/resource */ "./admin/ducks/resource.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var propTypes = {
match: _propTypes2.default.object,
fetchResources: _propTypes2.default.func,
schema: _propTypes2.default.PropTypes.object,
resources: _propTypes2.default.arrayOf(_propTypes2.default.object),
rowsPerPage: _propTypes2.default.number,
currentPage: _propTypes2.default.number
};
var DEFAULT_PAGE_SIZE = 10;
var ListPage = function (_React$Component) {
(0, _inherits3.default)(ListPage, _React$Component);
function ListPage() {
(0, _classCallCheck3.default)(this, ListPage);
var _this = (0, _possibleConstructorReturn3.default)(this, (ListPage.__proto__ || (0, _getPrototypeOf2.default)(ListPage)).call(this));
_this.handleChangePage = _this.handleChangePage.bind(_this);
return _this;
}
(0, _createClass3.default)(ListPage, [{
key: 'componentDidMount',
value: function componentDidMount() {
this.props.fetchResources({
resourceName: this.props.match.params.resource,
query: {
page_size: DEFAULT_PAGE_SIZE,
page: 1
}
});
}
}, {
key: 'handleChangePage',
value: function handleChangePage(evt, page) {
// Mui has some weird default pagination behaviour on cDU
if (evt) {
this.props.fetchResources({
resourceName: this.props.match.params.resource,
query: {
page: page + 1, // TablePagination starts at 0;
page_size: DEFAULT_PAGE_SIZE
}
});
}
}
}, {
key: 'render',
value: function render() {
var resource = this.props.match.params.resource;
var resourceSchema = this.props.schema && this.props.schema.spec.paths['/' + resource + '/'].post.requestBody.content['application/json'].schema;
return resourceSchema && _react2.default.createElement(
_core.Grid,
{ container: true, spacing: 8, className: 'MainContainer' },
_react2.default.createElement(
_core.Grid,
{ item: true, xs: 12 },
_react2.default.createElement(
_core.Paper,
{ square: true },
_react2.default.createElement(
_core.Typography,
{ variant: 'title', className: 'TableTitle PanelTitle' },
(0, _findKey2.default)(this.props.resourceList, function (resource) {
return resource === resource;
})
),
_react2.default.createElement(
_core.Button,
{
component: function component(props) {
return _react2.default.createElement(_reactRouterDom.Link, (0, _extends3.default)({ to: 'new' }, props));
},
variant: 'contained',
color: 'primary',
className: 'ButtonNew'
},
'Create New'
),
this.props.resources ? _react2.default.createElement(
_react.Fragment,
null,
_react2.default.createElement(
'div',
{ className: 'TableContainer' },
_react2.default.createElement(
_core.Table,
{ className: 'TableContainer' },
_react2.default.createElement(
_core.TableHead,
null,
_react2.default.createElement(
_core.TableRow,
null,
_react2.default.createElement(
_core.TableCell,
{ key: 'edit' },
'Edit'
),
(0, _values2.default)(resourceSchema.properties).map(function (field) {
return _react2.default.createElement(
_core.TableCell,
{ key: field.title },
field.description
);
})
)
),
_react2.default.createElement(
_core.TableBody,
null,
this.props.resources.map(function (item) {
return _react2.default.createElement(
_core.TableRow,
{ key: item.id },
_react2.default.createElement(
_core.TableCell,
null,
_react2.default.createElement(
_reactRouterDom.Link,
{ to: '' + _api.REL_PATH + resource + '/' + item.id },
_react2.default.createElement(
_core.Icon,
null,
'edit'
)
)
),
(0, _values2.default)(resourceSchema.properties).map(function (field) {
return _react2.default.createElement(
_core.TableCell,
{ key: field.title },
item[field.title]
);
})
);
})
),
_react2.default.createElement(
_core.TableFooter,
null,
_react2.default.createElement(_core.TableRow, null)
)
)
),
_react2.default.createElement(_core.TablePagination, {
colSpan: 3,
component: 'div',
className: 'TablePagination',
count: this.props.totalCount,
rowsPerPage: this.props.rowsPerPage,
page: this.props.currentPage - 1,
onChangePage: this.handleChangePage,
onChangeRowsPerPage: this.handleChangeRowsPerPage,
ActionsComponent: _TablePaginationActions2.default,
rowsPerPageOptions: [0]
})
) : _react2.default.createElement(
'div',
{ className: 'SpinnerContainer' },
_react2.default.createElement(_core.CircularProgress, null)
)
)
)
);
}
}]);
return ListPage;
}(_react2.default.Component);
ListPage.propTypes = propTypes;
var mapStateToProps = function mapStateToProps(state) {
return {
rowsPerPage: state.resource.rowsPerPage,
currentPage: state.resource.currentPage,
totalCount: state.resource.totalCount,
resources: state.resource.entities,
schema: state.metadata.client,
resourceList: state.metadata.resources
};
};
var mapDispatchToProps = {
fetchResources: _resource.fetchResourceEntitiesRequest
};
exports.default = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)(ListPage);
/***/ }),
/***/ "./admin/routes/index.js":
/*!*******************************!*\
!*** ./admin/routes/index.js ***!
\*******************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _getPrototypeOf = __webpack_require__(/*! babel-runtime/core-js/object/get-prototype-of */ "./node_modules/babel-runtime/core-js/object/get-prototype-of.js");
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
var _classCallCheck2 = __webpack_require__(/*! babel-runtime/helpers/classCallCheck */ "./node_modules/babel-runtime/helpers/classCallCheck.js");
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = __webpack_require__(/*! babel-runtime/helpers/createClass */ "./node_modules/babel-runtime/helpers/createClass.js");
var _createClass3 = _interopRequireDefault(_createClass2);
var _possibleConstructorReturn2 = __webpack_require__(/*! babel-runtime/helpers/possibleConstructorReturn */ "./node_modules/babel-runtime/helpers/possibleConstructorReturn.js");
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
var _inherits2 = __webpack_require__(/*! babel-runtime/helpers/inherits */ "./node_modules/babel-runtime/helpers/inherits.js");
var _inherits3 = _interopRequireDefault(_inherits2);
var _react = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _react2 = _interopRequireDefault(_react);
var _reactRouterDom = __webpack_require__(/*! react-router-dom */ "./node_modules/react-router-dom/es/index.js");
var _reactRouterRedux = __webpack_require__(/*! react-router-redux */ "./node_modules/react-router-redux/es/index.js");
var _Header = __webpack_require__(/*! ../components/Header */ "./admin/components/Header/index.js");
var _Header2 = _interopRequireDefault(_Header);
var _HomePage = __webpack_require__(/*! ./HomePage */ "./admin/routes/HomePage.js");
var _HomePage2 = _interopRequireDefault(_HomePage);
var _ListPage = __webpack_require__(/*! ./ListPage */ "./admin/routes/ListPage.jsx");
var _ListPage2 = _interopRequireDefault(_ListPage);
var _DetailPage = __webpack_require__(/*! ./DetailPage */ "./admin/routes/DetailPage.jsx");
var _DetailPage2 = _interopRequireDefault(_DetailPage);
var _ErrorPage = __webpack_require__(/*! ./ErrorPage */ "./admin/routes/ErrorPage.jsx");
var _ErrorPage2 = _interopRequireDefault(_ErrorPage);
var _api = __webpack_require__(/*! ../api */ "./admin/api.js");
var _index = __webpack_require__(/*! ../index.js */ "./admin/index.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var Routes = function (_Component) {
(0, _inherits3.default)(Routes, _Component);
function Routes() {
(0, _classCallCheck3.default)(this, Routes);
return (0, _possibleConstructorReturn3.default)(this, (Routes.__proto__ || (0, _getPrototypeOf2.default)(Routes)).apply(this, arguments));
}
(0, _createClass3.default)(Routes, [{
key: 'render',
value: function render() {
return _react2.default.createElement(
_reactRouterRedux.ConnectedRouter,
{ history: _index.history },
_react2.default.createElement(
'div',
null,
_react2.default.createElement(_Header2.default, null),
_react2.default.createElement(
_reactRouterDom.Switch,
null,
_react2.default.createElement(_reactRouterDom.Route, { exact: true, path: _api.REL_PATH, component: _HomePage2.default }),
_react2.default.createElement(_reactRouterDom.Route, { exact: true, path: _api.REL_PATH + ':resource', component: _ListPage2.default }),
_react2.default.createElement(_reactRouterDom.Route, {
exact: true,
path: _api.REL_PATH + ':resource/:id',
component: _DetailPage2.default
}),
_react2.default.createElement(_reactRouterDom.Route, { path: '/not-found', component: _ErrorPage2.default }),
_react2.default.createElement(_reactRouterDom.Route, { component: _ErrorPage2.default })
)
)
);
}
}]);
return Routes;
}(_react.Component);
exports.default = Routes;
/***/ }),
/***/ "./admin/sagas/index.js":
/*!******************************!*\
!*** ./admin/sagas/index.js ***!
\******************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _regenerator = __webpack_require__(/*! babel-runtime/regenerator */ "./node_modules/babel-runtime/regenerator/index.js");
var _regenerator2 = _interopRequireDefault(_regenerator);
exports.default = root;
var _effects = __webpack_require__(/*! redux-saga/effects */ "./node_modules/redux-saga/es/effects.js");
var _metadata = __webpack_require__(/*! ./metadata */ "./admin/sagas/metadata.js");
var _metadata2 = _interopRequireDefault(_metadata);
var _resource = __webpack_require__(/*! ./resource */ "./admin/sagas/resource.js");
var _resource2 = _interopRequireDefault(_resource);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var _marked = /*#__PURE__*/_regenerator2.default.mark(root);
function root() {
return _regenerator2.default.wrap(function root$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return (0, _effects.all)([(0, _metadata2.default)(), (0, _resource2.default)()]);
case 2:
case 'end':
return _context.stop();
}
}
}, _marked, this);
}
/***/ }),
/***/ "./admin/sagas/metadata.js":
/*!*********************************!*\
!*** ./admin/sagas/metadata.js ***!
\*********************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _regenerator = __webpack_require__(/*! babel-runtime/regenerator */ "./node_modules/babel-runtime/regenerator/index.js");
var _regenerator2 = _interopRequireDefault(_regenerator);
var _extends2 = __webpack_require__(/*! babel-runtime/helpers/extends */ "./node_modules/babel-runtime/helpers/extends.js");
var _extends3 = _interopRequireDefault(_extends2);
exports.default = watchMetadata;
var _effects = __webpack_require__(/*! redux-saga/effects */ "./node_modules/redux-saga/es/effects.js");
var _metadata = __webpack_require__(/*! ../ducks/metadata */ "./admin/ducks/metadata.js");
var _api = __webpack_require__(/*! ../api */ "./admin/api.js");
var _api2 = _interopRequireDefault(_api);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var _marked = /*#__PURE__*/_regenerator2.default.mark(fetchMetadata),
_marked2 = /*#__PURE__*/_regenerator2.default.mark(watchMetadata);
function fetchMetadata() {
var metadata, client;
return _regenerator2.default.wrap(function fetchMetadata$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
_context.prev = 0;
_context.next = 3;
return (0, _effects.call)(_api2.default.fetchMetadata);
case 3:
metadata = _context.sent;
_context.next = 6;
return (0, _effects.call)(_api2.default.fetchSwaggerSchema, metadata.schema);
case 6:
client = _context.sent;
_context.next = 9;
return (0, _effects.put)((0, _metadata.fetchMetadataSuccess)((0, _extends3.default)({}, metadata, {
client: client
})));
case 9:
_context.next = 14;
break;
case 11:
_context.prev = 11;
_context.t0 = _context['catch'](0);
throw Error(_context.t0);
case 14:
case 'end':
return _context.stop();
}
}
}, _marked, this, [[0, 11]]);
}
function watchMetadata() {
return _regenerator2.default.wrap(function watchMetadata$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return (0, _effects.takeLatest)(_metadata.FETCH_METADATA_REQUEST, fetchMetadata);
case 2:
case 'end':
return _context2.stop();
}
}
}, _marked2, this);
}
/***/ }),
/***/ "./admin/sagas/resource.js":
/*!*********************************!*\
!*** ./admin/sagas/resource.js ***!
\*********************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _regenerator = __webpack_require__(/*! babel-runtime/regenerator */ "./node_modules/babel-runtime/regenerator/index.js");
var _regenerator2 = _interopRequireDefault(_regenerator);
exports.default = watchResource;
var _effects = __webpack_require__(/*! redux-saga/effects */ "./node_modules/redux-saga/es/effects.js");
var _schema = __webpack_require__(/*! ../selectors/schema */ "./admin/selectors/schema.js");
var _reactRouterRedux = __webpack_require__(/*! react-router-redux */ "./node_modules/react-router-redux/es/index.js");
var _api = __webpack_require__(/*! ../api */ "./admin/api.js");
var _api2 = _interopRequireDefault(_api);
var _resource = __webpack_require__(/*! ../ducks/resource */ "./admin/ducks/resource.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var _marked = /*#__PURE__*/_regenerator2.default.mark(fetchResource),
_marked2 = /*#__PURE__*/_regenerator2.default.mark(submitResource),
_marked3 = /*#__PURE__*/_regenerator2.default.mark(updateResourceElement),
_marked4 = /*#__PURE__*/_regenerator2.default.mark(fetchResourceElement),
_marked5 = /*#__PURE__*/_regenerator2.default.mark(deleteResourceElement),
_marked6 = /*#__PURE__*/_regenerator2.default.mark(watchResource);
function fetchResource(_ref) {
var payload = _ref.payload;
var client, metadata, schema, resources;
return _regenerator2.default.wrap(function fetchResource$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
_context.prev = 0;
_context.next = 3;
return (0, _effects.select)(_schema.selectClient);
case 3:
client = _context.sent;
if (client) {
_context.next = 12;
break;
}
_context.next = 7;
return (0, _effects.call)(_api2.default.fetchMetadata);
case 7:
metadata = _context.sent;
schema = metadata.schema;
_context.next = 11;
return (0, _effects.call)(_api2.default.fetchSwaggerSchema, schema);
case 11:
client = _context.sent;
case 12:
_context.next = 14;
return (0, _effects.call)(_api2.default.fetchResource, payload, client);
case 14:
resources = _context.sent;
_context.next = 17;
return (0, _effects.put)((0, _resource.fetchResourceEntitiesSuccess)({ resources: resources }));
case 17:
_context.next = 23;
break;
case 19:
_context.prev = 19;
_context.t0 = _context['catch'](0);
_context.next = 23;
return (0, _effects.put)((0, _reactRouterRedux.push)('/not-found'));
case 23:
case 'end':
return _context.stop();
}
}
}, _marked, this, [[0, 19]]);
}
function submitResource(_ref2) {
var payload = _ref2.payload;
var client, response, errors;
return _regenerator2.default.wrap(function submitResource$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
_context2.prev = 0;
_context2.next = 3;
return (0, _effects.select)(_schema.selectClient);
case 3:
client = _context2.sent;
_context2.next = 6;
return (0, _effects.call)(_api2.default.submitResource, payload, client);
case 6:
response = _context2.sent;
_context2.next = 9;
return (0, _effects.put)((0, _resource.submitResourceSuccess)(response));
case 9:
_context2.next = 11;
return (0, _effects.put)((0, _reactRouterRedux.push)('' + _api.REL_PATH + payload.resourceName + '/'));
case 11:
_context2.next = 18;
break;
case 13:
_context2.prev = 13;
_context2.t0 = _context2['catch'](0);
errors = JSON.parse(_context2.t0.message);
_context2.next = 18;
return (0, _effects.put)((0, _resource.submitResourceFailure)(errors));
case 18:
case 'end':
return _context2.stop();
}
}
}, _marked2, this, [[0, 13]]);
}
function updateResourceElement(_ref3) {
var payload = _ref3.payload;
var client, response;
return _regenerator2.default.wrap(function updateResourceElement$(_context3) {
while (1) {
switch (_context3.prev = _context3.next) {
case 0:
_context3.prev = 0;
_context3.next = 3;
return (0, _effects.select)(_schema.selectClient);
case 3:
client = _context3.sent;
_context3.next = 6;
return (0, _effects.call)(_api2.default.updateResourceElement, payload, client);
case 6:
response = _context3.sent;
_context3.next = 9;
return (0, _effects.put)((0, _resource.updateResourceElementSuccess)(response));
case 9:
_context3.next = 11;
return (0, _effects.put)((0, _reactRouterRedux.push)('' + _api.REL_PATH + payload.resourceName + '/'));
case 11:
_context3.next = 15;
break;
case 13:
_context3.prev = 13;
_context3.t0 = _context3['catch'](0);
case 15:
case 'end':
return _context3.stop();
}
}
}, _marked3, this, [[0, 13]]);
}
function fetchResourceElement(_ref4) {
var payload = _ref4.payload;
var client, metadata, schema, resource;
return _regenerator2.default.wrap(function fetchResourceElement$(_context4) {
while (1) {
switch (_context4.prev = _context4.next) {
case 0:
_context4.prev = 0;
_context4.next = 3;
return (0, _effects.select)(_schema.selectClient);
case 3:
client = _context4.sent;
if (client) {
_context4.next = 12;
break;
}
_context4.next = 7;
return (0, _effects.call)(_api2.default.fetchMetadata);
case 7:
metadata = _context4.sent;
schema = metadata.schema;
_context4.next = 11;
return (0, _effects.call)(_api2.default.fetchSwaggerSchema, schema);
case 11:
client = _context4.sent;
case 12:
_context4.next = 14;
return (0, _effects.call)(_api2.default.fetchResourceElement, payload, client);
case 14:
resource = _context4.sent;
_context4.next = 17;
return (0, _effects.put)((0, _resource.fetchCurrentResourceSuccess)(resource));
case 17:
_context4.next = 23;
break;
case 19:
_context4.prev = 19;
_context4.t0 = _context4['catch'](0);
_context4.next = 23;
return (0, _effects.put)((0, _reactRouterRedux.push)('/not-found'));
case 23:
case 'end':
return _context4.stop();
}
}
}, _marked4, this, [[0, 19]]);
}
function deleteResourceElement(_ref5) {
var payload = _ref5.payload;
var client, metadata, schema;
return _regenerator2.default.wrap(function deleteResourceElement$(_context5) {
while (1) {
switch (_context5.prev = _context5.next) {
case 0:
_context5.prev = 0;
_context5.next = 3;
return (0, _effects.select)(_schema.selectClient);
case 3:
client = _context5.sent;
if (client) {
_context5.next = 12;
break;
}
_context5.next = 7;
return (0, _effects.call)(_api2.default.fetchMetadata);
case 7:
metadata = _context5.sent;
schema = metadata.schema;
_context5.next = 11;
return (0, _effects.call)(_api2.default.fetchSwaggerSchema, schema);
case 11:
client = _context5.sent;
case 12:
_context5.next = 14;
return (0, _effects.call)(_api2.default.deleteResourceElement, payload, client);
case 14:
_context5.next = 16;
return (0, _effects.put)((0, _reactRouterRedux.push)('' + _api.REL_PATH + payload.resourceName + '/'));
case 16:
_context5.next = 20;
break;
case 18:
_context5.prev = 18;
_context5.t0 = _context5['catch'](0);
case 20:
case 'end':
return _context5.stop();
}
}
}, _marked5, this, [[0, 18]]);
}
function watchResource() {
return _regenerator2.default.wrap(function watchResource$(_context6) {
while (1) {
switch (_context6.prev = _context6.next) {
case 0:
_context6.next = 2;
return (0, _effects.takeLatest)(_resource.FETCH_RESOURCE_ENTITIES_REQUEST, fetchResource);
case 2:
_context6.next = 4;
return (0, _effects.takeLatest)(_resource.SUBMIT_RESOURCE_REQUEST, submitResource);
case 4:
_context6.next = 6;
return (0, _effects.takeLatest)(_resource.FETCH_CURRENT_RESOURCE_REQUEST, fetchResourceElement);
case 6:
_context6.next = 8;
return (0, _effects.takeLatest)(_resource.UPDATE_RESOURCE_ELEMENT_REQUEST, updateResourceElement);
case 8:
_context6.next = 10;
return (0, _effects.takeLatest)(_resource.DELETE_RESOURCE_ELEMENT_REQUEST, deleteResourceElement);
case 10:
case 'end':
return _context6.stop();
}
}
}, _marked6, this);
}
/***/ }),
/***/ "./admin/selectors/schema.js":
/*!***********************************!*\
!*** ./admin/selectors/schema.js ***!
\***********************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var selectSchemaUrl = exports.selectSchemaUrl = function selectSchemaUrl(state) {
return state.metadata.schema;
};
var selectClient = exports.selectClient = function selectClient(state) {
return state.metadata.client;
};
/***/ })
},[["./admin/index.js","runtime~index","styles.react","vendors~index"]]]);
//# sourceMappingURL=index.js.mapPK ! 5ܽ2C 2C apistar_crud/static/index.js(window["webpackJsonp"] = window["webpackJsonp"] || []).push([["index"],{
/***/ "./admin/App.js":
/*!**********************!*\
!*** ./admin/App.js ***!
\**********************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _getPrototypeOf = __webpack_require__(/*! babel-runtime/core-js/object/get-prototype-of */ "./node_modules/babel-runtime/core-js/object/get-prototype-of.js");
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
var _classCallCheck2 = __webpack_require__(/*! babel-runtime/helpers/classCallCheck */ "./node_modules/babel-runtime/helpers/classCallCheck.js");
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = __webpack_require__(/*! babel-runtime/helpers/createClass */ "./node_modules/babel-runtime/helpers/createClass.js");
var _createClass3 = _interopRequireDefault(_createClass2);
var _possibleConstructorReturn2 = __webpack_require__(/*! babel-runtime/helpers/possibleConstructorReturn */ "./node_modules/babel-runtime/helpers/possibleConstructorReturn.js");
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
var _inherits2 = __webpack_require__(/*! babel-runtime/helpers/inherits */ "./node_modules/babel-runtime/helpers/inherits.js");
var _inherits3 = _interopRequireDefault(_inherits2);
var _react = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js");
var _propTypes2 = _interopRequireDefault(_propTypes);
var _routes = __webpack_require__(/*! ./routes */ "./admin/routes/index.js");
var _routes2 = _interopRequireDefault(_routes);
__webpack_require__(/*! ./App.css */ "./admin/App.css");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var propTypes = {
fetchMetadata: _propTypes2.default.func.isRequired
};
var App = function (_Component) {
(0, _inherits3.default)(App, _Component);
function App() {
(0, _classCallCheck3.default)(this, App);
return (0, _possibleConstructorReturn3.default)(this, (App.__proto__ || (0, _getPrototypeOf2.default)(App)).apply(this, arguments));
}
(0, _createClass3.default)(App, [{
key: 'componentDidMount',
value: function componentDidMount() {
this.props.fetchMetadata();
}
}, {
key: 'render',
value: function render() {
return _react2.default.createElement(
'div',
{ className: 'App' },
_react2.default.createElement(_routes2.default, null)
);
}
}]);
return App;
}(_react.Component);
App.propTypes = propTypes;
exports.default = App;
/***/ }),
/***/ "./admin/AppContainer.js":
/*!*******************************!*\
!*** ./admin/AppContainer.js ***!
\*******************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _reactRedux = __webpack_require__(/*! react-redux */ "./node_modules/react-redux/es/index.js");
var _App = __webpack_require__(/*! ./App */ "./admin/App.js");
var _App2 = _interopRequireDefault(_App);
var _metadata = __webpack_require__(/*! ./ducks/metadata */ "./admin/ducks/metadata.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var mapStatetoProps = function mapStatetoProps(state) {
return {};
};
var mapDispatchToProps = {
fetchMetadata: _metadata.fetchMetadataRequest
};
exports.default = (0, _reactRedux.connect)(mapStatetoProps, mapDispatchToProps)(_App2.default);
/***/ }),
/***/ "./admin/api.js":
/*!**********************!*\
!*** ./admin/api.js ***!
\**********************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.REL_PATH = undefined;
var _stringify = __webpack_require__(/*! babel-runtime/core-js/json/stringify */ "./node_modules/babel-runtime/core-js/json/stringify.js");
var _stringify2 = _interopRequireDefault(_stringify);
var _classCallCheck2 = __webpack_require__(/*! babel-runtime/helpers/classCallCheck */ "./node_modules/babel-runtime/helpers/classCallCheck.js");
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = __webpack_require__(/*! babel-runtime/helpers/createClass */ "./node_modules/babel-runtime/helpers/createClass.js");
var _createClass3 = _interopRequireDefault(_createClass2);
var _superagent = __webpack_require__(/*! superagent */ "./node_modules/superagent/lib/client.js");
var _superagent2 = _interopRequireDefault(_superagent);
var _swaggerClient = __webpack_require__(/*! swagger-client */ "./node_modules/swagger-client/dist/index.js");
var _swaggerClient2 = _interopRequireDefault(_swaggerClient);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var REL_PATH = exports.REL_PATH = '/admin/';
var urls = {
host: 'http://localhost:8000',
metadata: '/admin/metadata/'
};
var Api = function () {
function Api() {
(0, _classCallCheck3.default)(this, Api);
}
(0, _createClass3.default)(Api, null, [{
key: 'fetchMetadata',
value: function fetchMetadata() {
return _superagent2.default.get(urls.host + urls.metadata).then(function (response) {
return response.body;
}).catch(function (error) {
throw Error(error.message);
});
}
}, {
key: 'fetchResource',
value: function fetchResource(payload, client) {
var resourceName = payload.resourceName,
query = payload.query;
return client.apis[resourceName].list(query).then(function (response) {
return response.body;
}).catch(function (error) {
throw Error(error.message);
});
}
}, {
key: 'fetchResourceElement',
value: function fetchResourceElement(payload, client) {
var resource = payload.resourceName;
var id = payload.resourceId;
return client.apis[resource].retrieve({ element_id: id }).then(function (response) {
return response.body;
}).catch(function (error) {
throw Error(error.message);
});
}
}, {
key: 'fetchSwaggerSchema',
value: function fetchSwaggerSchema(schemaUrl) {
return (0, _swaggerClient2.default)(urls.host + schemaUrl).then(function (client) {
return client;
});
}
}, {
key: 'submitResource',
value: function submitResource(payload, client) {
return client.apis[payload.resourceName].create({}, { requestBody: payload.resourceData }).then(function (response) {
return response.body;
}).catch(function (error) {
throw Error((0, _stringify2.default)(error.response.body));
});
}
}, {
key: 'updateResourceElement',
value: function updateResourceElement(payload, client) {
var resourceName = payload.resourceName,
resourceId = payload.resourceId,
resourceData = payload.resourceData;
return client.apis[resourceName].update({ element_id: resourceId }, { requestBody: resourceData }).then(function (response) {
return response.body;
});
}
}, {
key: 'deleteResourceElement',
value: function deleteResourceElement(payload, client) {
var resourceName = payload.resourceName,
resourceId = payload.resourceId;
return client.apis[resourceName].delete({ element_id: resourceId }).then(function (response) {
return response.body;
}).catch(function (error) {
throw Error(error.message);
});
}
}]);
return Api;
}();
exports.default = Api;
/***/ }),
/***/ "./admin/components/Header/Header.js":
/*!*******************************************!*\
!*** ./admin/components/Header/Header.js ***!
\*******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _getPrototypeOf = __webpack_require__(/*! babel-runtime/core-js/object/get-prototype-of */ "./node_modules/babel-runtime/core-js/object/get-prototype-of.js");
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
var _classCallCheck2 = __webpack_require__(/*! babel-runtime/helpers/classCallCheck */ "./node_modules/babel-runtime/helpers/classCallCheck.js");
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = __webpack_require__(/*! babel-runtime/helpers/createClass */ "./node_modules/babel-runtime/helpers/createClass.js");
var _createClass3 = _interopRequireDefault(_createClass2);
var _possibleConstructorReturn2 = __webpack_require__(/*! babel-runtime/helpers/possibleConstructorReturn */ "./node_modules/babel-runtime/helpers/possibleConstructorReturn.js");
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
var _inherits2 = __webpack_require__(/*! babel-runtime/helpers/inherits */ "./node_modules/babel-runtime/helpers/inherits.js");
var _inherits3 = _interopRequireDefault(_inherits2);
var _react = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _react2 = _interopRequireDefault(_react);
var _core = __webpack_require__(/*! @material-ui/core */ "./node_modules/@material-ui/core/index.es.js");
var _reactRouterDom = __webpack_require__(/*! react-router-dom */ "./node_modules/react-router-dom/es/index.js");
var _reactRedux = __webpack_require__(/*! react-redux */ "./node_modules/react-redux/es/index.js");
var _styles = __webpack_require__(/*! @material-ui/core/styles */ "./node_modules/@material-ui/core/styles/index.js");
var _api = __webpack_require__(/*! ../../api */ "./admin/api.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var Header = function (_React$Component) {
(0, _inherits3.default)(Header, _React$Component);
function Header() {
(0, _classCallCheck3.default)(this, Header);
return (0, _possibleConstructorReturn3.default)(this, (Header.__proto__ || (0, _getPrototypeOf2.default)(Header)).apply(this, arguments));
}
(0, _createClass3.default)(Header, [{
key: 'render',
value: function render() {
return _react2.default.createElement(
_core.AppBar,
{ position: 'static' },
_react2.default.createElement(
_core.Toolbar,
null,
_react2.default.createElement(
_core.Typography,
{ variant: 'title', color: 'inherit' },
_react2.default.createElement(
_reactRouterDom.Link,
{ to: _api.REL_PATH, className: 'HeaderLink' },
'APISTAR'
)
)
)
);
}
}]);
return Header;
}(_react2.default.Component);
var mapStateToProps = function mapStateToProps(state) {
return {
metadata: state.metadata
};
};
exports.default = (0, _styles.withTheme)()((0, _reactRedux.connect)(mapStateToProps)(Header));
/***/ }),
/***/ "./admin/components/Header/index.js":
/*!******************************************!*\
!*** ./admin/components/Header/index.js ***!
\******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _Header = __webpack_require__(/*! ./Header */ "./admin/components/Header/Header.js");
var _Header2 = _interopRequireDefault(_Header);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = _Header2.default;
/***/ }),
/***/ "./admin/components/ResourceForm/ResourceForm.jsx":
/*!********************************************************!*\
!*** ./admin/components/ResourceForm/ResourceForm.jsx ***!
\********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _entries = __webpack_require__(/*! babel-runtime/core-js/object/entries */ "./node_modules/babel-runtime/core-js/object/entries.js");
var _entries2 = _interopRequireDefault(_entries);
var _defineProperty2 = __webpack_require__(/*! babel-runtime/helpers/defineProperty */ "./node_modules/babel-runtime/helpers/defineProperty.js");
var _defineProperty3 = _interopRequireDefault(_defineProperty2);
var _getPrototypeOf = __webpack_require__(/*! babel-runtime/core-js/object/get-prototype-of */ "./node_modules/babel-runtime/core-js/object/get-prototype-of.js");
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
var _classCallCheck2 = __webpack_require__(/*! babel-runtime/helpers/classCallCheck */ "./node_modules/babel-runtime/helpers/classCallCheck.js");
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = __webpack_require__(/*! babel-runtime/helpers/createClass */ "./node_modules/babel-runtime/helpers/createClass.js");
var _createClass3 = _interopRequireDefault(_createClass2);
var _possibleConstructorReturn2 = __webpack_require__(/*! babel-runtime/helpers/possibleConstructorReturn */ "./node_modules/babel-runtime/helpers/possibleConstructorReturn.js");
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
var _inherits2 = __webpack_require__(/*! babel-runtime/helpers/inherits */ "./node_modules/babel-runtime/helpers/inherits.js");
var _inherits3 = _interopRequireDefault(_inherits2);
var _react = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _react2 = _interopRequireDefault(_react);
var _reactRedux = __webpack_require__(/*! react-redux */ "./node_modules/react-redux/es/index.js");
var _propTypes = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js");
var _propTypes2 = _interopRequireDefault(_propTypes);
var _core = __webpack_require__(/*! @material-ui/core */ "./node_modules/@material-ui/core/index.es.js");
var _resource = __webpack_require__(/*! ../../ducks/resource */ "./admin/ducks/resource.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var propTypes = {
schema: _propTypes2.default.object,
setCurrentResourceElement: _propTypes2.default.func,
updateResourceElement: _propTypes2.default.func,
submitResource: _propTypes2.default.func,
deleteResourceElement: _propTypes2.default.func,
resourceId: _propTypes2.default.string,
resourceName: _propTypes2.default.string,
currentResourceElement: _propTypes2.default.object
};
var defaultProps = {};
var typeMaps = {
string: 'text',
integer: 'number',
float: 'number', // TODO: fix
datetime: 'datetime' // TODO: fix
};
var ResourceForm = function (_React$Component) {
(0, _inherits3.default)(ResourceForm, _React$Component);
function ResourceForm() {
(0, _classCallCheck3.default)(this, ResourceForm);
var _this = (0, _possibleConstructorReturn3.default)(this, (ResourceForm.__proto__ || (0, _getPrototypeOf2.default)(ResourceForm)).call(this));
_this.handleInputChange = _this.handleInputChange.bind(_this);
_this.handleSubmit = _this.handleSubmit.bind(_this);
_this.handleDialogClose = _this.handleDialogClose.bind(_this);
_this.handleDialogOpen = _this.handleDialogOpen.bind(_this);
_this.handleDeleteConfirmClick = _this.handleDeleteConfirmClick.bind(_this);
_this.state = { data: null, isDialogOpen: false };
return _this;
}
(0, _createClass3.default)(ResourceForm, [{
key: 'handleInputChange',
value: function handleInputChange(evt) {
var _evt$target = evt.target,
name = _evt$target.name,
value = _evt$target.value;
this.props.setCurrentResourceElement((0, _defineProperty3.default)({}, name, value));
}
}, {
key: 'handleSubmit',
value: function handleSubmit(evt) {
evt.preventDefault();
if (this.props.resourceId !== 'new') {
this.props.updateResourceElement({
resourceName: this.props.resourceName,
resourceData: this.props.currentResourceElement,
resourceId: this.props.resourceId
});
} else {
this.props.submitResource({
resourceName: this.props.resourceName,
resourceData: this.props.currentResourceElement
});
}
}
}, {
key: 'handleDialogClose',
value: function handleDialogClose() {
this.setState({ isDialogOpen: false });
}
}, {
key: 'handleDialogOpen',
value: function handleDialogOpen() {
this.setState({ isDialogOpen: true });
}
}, {
key: 'handleDeleteConfirmClick',
value: function handleDeleteConfirmClick() {
this.props.deleteResourceElement({
resourceName: this.props.resourceName,
resourceId: this.props.resourceId
});
}
}, {
key: 'render',
value: function render() {
var _this2 = this;
var data = this.props.currentResourceElement;
var errors = this.props.errors;
var resourceSchema = this.props.schema && this.props.schema.spec.paths['/' + this.props.resourceName + '/'].post.requestBody.content['application/json'].schema;
var requiredFields = resourceSchema && resourceSchema.required;
return resourceSchema ? _react2.default.createElement(
'form',
{ action: '', onSubmit: this.handleSubmit },
_react2.default.createElement(
_core.Grid,
{ container: true, alignItems: 'center', justify: 'center' },
_react2.default.createElement(
_core.Grid,
{ item: true, xs: 12, sm: 5 },
(0, _entries2.default)(resourceSchema.properties).map(function (field) {
return _react2.default.createElement(_core.TextField, {
key: field[1].title,
error: errors && (field[1].title ? !!errors[field[1].title] : !!errors[field[0]]),
type: typeMaps[field[1].type] || 'text',
min: field[1].minimum,
max: field[1].maximum,
id: field[1].title || field[0],
label: field[1].description,
name: field[1].title || field[0],
value: data && (data[field[1].title] || data[field[0]]) || '',
onChange: _this2.handleInputChange,
margin: 'normal',
fullWidth: true,
required: requiredFields.includes(field[0]),
helperText: errors && (field[1].title ? errors[field[1].title] : errors[field[0]]) || null
});
}),
this.props.resourceId !== 'new' && _react2.default.createElement(
_core.Button,
{
variant: 'contained',
color: 'secondary',
className: 'ButtonDelete',
onClick: this.handleDialogOpen
},
'Delete'
),
_react2.default.createElement(
_core.Button,
{
variant: 'contained',
color: 'primary',
type: 'submit',
className: 'ButtonSave'
},
'Save'
),
_react2.default.createElement(
_core.Dialog,
{
open: this.state.isDialogOpen,
onClose: this.handleDialogClose,
'aria-labelledby': 'alert-dialog-title',
'aria-describedby': 'alert-dialog-description'
},
_react2.default.createElement(
_core.DialogTitle,
{ id: 'alert-dialog-title' },
'Confirm'
),
_react2.default.createElement(
_core.DialogContent,
null,
_react2.default.createElement(
_core.DialogContentText,
{ id: 'alert-dialog-description' },
'Are you sure you want to delete this item?'
)
),
_react2.default.createElement(
_core.DialogActions,
null,
_react2.default.createElement(
_core.Button,
{
onClick: this.handleDeleteConfirmClick,
color: 'secondary',
variant: 'contained',
autoFocus: true
},
'Yes, Delete.'
),
_react2.default.createElement(
_core.Button,
{ onClick: this.handleDialogClose },
'Cancel'
)
)
)
)
)
) : _react2.default.createElement(
'div',
{ className: 'SpinnerContainer' },
_react2.default.createElement(_core.CircularProgress, null)
);
}
}]);
return ResourceForm;
}(_react2.default.Component);
ResourceForm.propTypes = propTypes;
ResourceForm.defaultProps = defaultProps;
var mapStateToProps = function mapStateToProps(state) {
return {
resources: state.resource.entities,
schema: state.metadata.client,
currentResourceElement: state.resource.currentResourceElement,
errors: state.resource.errors
};
};
var mapDispatchToProps = {
submitResource: _resource.submitResourceRequest,
setCurrentResourceElement: _resource.setCurrentResourceElement,
updateResourceElement: _resource.updateResourceElementRequest,
deleteResourceElement: _resource.deleteResourceElementRequest
};
exports.default = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)(ResourceForm);
/***/ }),
/***/ "./admin/components/ResourceForm/index.js":
/*!************************************************!*\
!*** ./admin/components/ResourceForm/index.js ***!
\************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _ResourceForm = __webpack_require__(/*! ./ResourceForm */ "./admin/components/ResourceForm/ResourceForm.jsx");
var _ResourceForm2 = _interopRequireDefault(_ResourceForm);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = _ResourceForm2.default;
/***/ }),
/***/ "./admin/components/TablePaginationActions/TablePaginationActions.jsx":
/*!****************************************************************************!*\
!*** ./admin/components/TablePaginationActions/TablePaginationActions.jsx ***!
\****************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _getPrototypeOf = __webpack_require__(/*! babel-runtime/core-js/object/get-prototype-of */ "./node_modules/babel-runtime/core-js/object/get-prototype-of.js");
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
var _classCallCheck2 = __webpack_require__(/*! babel-runtime/helpers/classCallCheck */ "./node_modules/babel-runtime/helpers/classCallCheck.js");
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = __webpack_require__(/*! babel-runtime/helpers/createClass */ "./node_modules/babel-runtime/helpers/createClass.js");
var _createClass3 = _interopRequireDefault(_createClass2);
var _possibleConstructorReturn2 = __webpack_require__(/*! babel-runtime/helpers/possibleConstructorReturn */ "./node_modules/babel-runtime/helpers/possibleConstructorReturn.js");
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
var _inherits2 = __webpack_require__(/*! babel-runtime/helpers/inherits */ "./node_modules/babel-runtime/helpers/inherits.js");
var _inherits3 = _interopRequireDefault(_inherits2);
var _react = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js");
var _propTypes2 = _interopRequireDefault(_propTypes);
var _core = __webpack_require__(/*! @material-ui/core */ "./node_modules/@material-ui/core/index.es.js");
var _icons = __webpack_require__(/*! @material-ui/icons/ */ "./node_modules/@material-ui/icons/index.es.js");
var _FirstPage = __webpack_require__(/*! @material-ui/icons/FirstPage */ "./node_modules/@material-ui/icons/FirstPage.js");
var _FirstPage2 = _interopRequireDefault(_FirstPage);
var _LastPage = __webpack_require__(/*! @material-ui/icons/LastPage */ "./node_modules/@material-ui/icons/LastPage.js");
var _LastPage2 = _interopRequireDefault(_LastPage);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var propTypes = {
onChangePage: _propTypes2.default.func,
rowsPerPage: _propTypes2.default.number,
count: _propTypes2.default.number,
page: _propTypes2.default.number
};
var TablePaginationActions = function (_React$Component) {
(0, _inherits3.default)(TablePaginationActions, _React$Component);
function TablePaginationActions() {
(0, _classCallCheck3.default)(this, TablePaginationActions);
var _this = (0, _possibleConstructorReturn3.default)(this, (TablePaginationActions.__proto__ || (0, _getPrototypeOf2.default)(TablePaginationActions)).call(this));
_this.handleBackButtonClick = _this.handleBackButtonClick.bind(_this);
_this.handleFirstPageButtonClick = _this.handleFirstPageButtonClick.bind(_this);
_this.handleNextButtonClick = _this.handleNextButtonClick.bind(_this);
_this.handleLastPageButtonClick = _this.handleLastPageButtonClick.bind(_this);
return _this;
}
(0, _createClass3.default)(TablePaginationActions, [{
key: 'handleFirstPageButtonClick',
value: function handleFirstPageButtonClick(event) {
this.props.onChangePage(event, 0);
}
}, {
key: 'handleBackButtonClick',
value: function handleBackButtonClick(event) {
this.props.onChangePage(event, this.props.page - 1);
}
}, {
key: 'handleNextButtonClick',
value: function handleNextButtonClick(event) {
this.props.onChangePage(event, this.props.page + 1);
}
}, {
key: 'handleLastPageButtonClick',
value: function handleLastPageButtonClick(event) {
this.props.onChangePage(event, Math.max(0, Math.ceil(this.props.count / this.props.rowsPerPage) - 1));
}
}, {
key: 'render',
value: function render() {
var _props = this.props,
count = _props.count,
page = _props.page,
rowsPerPage = _props.rowsPerPage;
return _react2.default.createElement(
'div',
{ className: 'TableActions' },
_react2.default.createElement(
_core.IconButton,
{
onClick: this.handleFirstPageButtonClick,
disabled: page === 0,
'aria-label': 'First Page'
},
_react2.default.createElement(_FirstPage2.default, null)
),
_react2.default.createElement(
_core.IconButton,
{
onClick: this.handleBackButtonClick,
disabled: page === 0,
'aria-label': 'Previous Page'
},
_react2.default.createElement(_icons.KeyboardArrowLeft, null)
),
_react2.default.createElement(
_core.IconButton,
{
onClick: this.handleNextButtonClick,
disabled: page >= Math.ceil(count / rowsPerPage) - 1,
'aria-label': 'Next Page'
},
_react2.default.createElement(_icons.KeyboardArrowRight, null)
),
_react2.default.createElement(
_core.IconButton,
{
onClick: this.handleLastPageButtonClick,
disabled: page >= Math.ceil(count / rowsPerPage) - 1,
'aria-label': 'Last Page'
},
_react2.default.createElement(_LastPage2.default, null)
)
);
}
}]);
return TablePaginationActions;
}(_react2.default.Component);
TablePaginationActions.propTypes = propTypes;
exports.default = TablePaginationActions;
/***/ }),
/***/ "./admin/components/TablePaginationActions/index.jsx":
/*!***********************************************************!*\
!*** ./admin/components/TablePaginationActions/index.jsx ***!
\***********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _TablePaginationActions = __webpack_require__(/*! ./TablePaginationActions */ "./admin/components/TablePaginationActions/TablePaginationActions.jsx");
var _TablePaginationActions2 = _interopRequireDefault(_TablePaginationActions);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = _TablePaginationActions2.default;
/***/ }),
/***/ "./admin/ducks/index.js":
/*!******************************!*\
!*** ./admin/ducks/index.js ***!
\******************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _redux = __webpack_require__(/*! redux */ "./node_modules/redux/es/index.js");
var _metadata = __webpack_require__(/*! ./metadata */ "./admin/ducks/metadata.js");
var _metadata2 = _interopRequireDefault(_metadata);
var _resource = __webpack_require__(/*! ./resource */ "./admin/ducks/resource.js");
var _resource2 = _interopRequireDefault(_resource);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = (0, _redux.combineReducers)({
metadata: _metadata2.default,
resource: _resource2.default
});
/***/ }),
/***/ "./admin/ducks/metadata.js":
/*!*********************************!*\
!*** ./admin/ducks/metadata.js ***!
\*********************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.fetchMetadataFailure = exports.fetchMetadataSuccess = exports.fetchMetadataRequest = exports.FETCH_METADATA_FAILURE = exports.FETCH_METADATA_SUCCESS = exports.FETCH_METADATA_REQUEST = undefined;
var _defineProperty2 = __webpack_require__(/*! babel-runtime/helpers/defineProperty */ "./node_modules/babel-runtime/helpers/defineProperty.js");
var _defineProperty3 = _interopRequireDefault(_defineProperty2);
var _extends2 = __webpack_require__(/*! babel-runtime/helpers/extends */ "./node_modules/babel-runtime/helpers/extends.js");
var _extends3 = _interopRequireDefault(_extends2);
var _handleActions;
var _reduxActions = __webpack_require__(/*! redux-actions */ "./node_modules/redux-actions/es/index.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var FETCH_METADATA_REQUEST = exports.FETCH_METADATA_REQUEST = 'metadata/fetch/REQUEST';
var FETCH_METADATA_SUCCESS = exports.FETCH_METADATA_SUCCESS = 'metadata/fetch/SUCCESS';
var FETCH_METADATA_FAILURE = exports.FETCH_METADATA_FAILURE = 'metadata/fetch/FAILURE';
var fetchMetadataRequest = exports.fetchMetadataRequest = (0, _reduxActions.createAction)(FETCH_METADATA_REQUEST);
var fetchMetadataSuccess = exports.fetchMetadataSuccess = (0, _reduxActions.createAction)(FETCH_METADATA_SUCCESS);
var fetchMetadataFailure = exports.fetchMetadataFailure = (0, _reduxActions.createAction)(FETCH_METADATA_FAILURE);
var initialState = {
resources: null,
schema: null,
client: null
};
exports.default = (0, _reduxActions.handleActions)((_handleActions = {}, (0, _defineProperty3.default)(_handleActions, FETCH_METADATA_SUCCESS, function (state, _ref) {
var payload = _ref.payload;
return (0, _extends3.default)({}, state, {
resources: payload.resources,
schema: payload.schema,
client: payload.client
});
}), (0, _defineProperty3.default)(_handleActions, FETCH_METADATA_FAILURE, function (state, _ref2) {
var payload = _ref2.payload;
return (0, _extends3.default)({}, state, {
error: payload
});
}), _handleActions), initialState);
/***/ }),
/***/ "./admin/ducks/resource.js":
/*!*********************************!*\
!*** ./admin/ducks/resource.js ***!
\*********************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.deleteResourceElementRequest = exports.setCurrentResourceElement = exports.updateResourceElementFailure = exports.updateResourceElementSuccess = exports.updateResourceElementRequest = exports.submitResourceFailure = exports.submitResourceSuccess = exports.submitResourceRequest = exports.fetchCurrentResourceSuccess = exports.fetchCurrentResourceRequest = exports.fetchResourceEntitiesSuccess = exports.fetchResourceEntitiesRequest = exports.DELETE_RESOURCE_ELEMENT_REQUEST = exports.SET_CURRENT_RESOURCE_ELEMENT = exports.UPDATE_RESOURCE_ELEMENT_FAILURE = exports.UPDATE_RESOURCE_ELEMENT_SUCCESS = exports.UPDATE_RESOURCE_ELEMENT_REQUEST = exports.SUBMIT_RESOURCE_FAILURE = exports.SUBMIT_RESOURCE_SUCCESS = exports.SUBMIT_RESOURCE_REQUEST = exports.FETCH_CURRENT_RESOURCE_FAILURE = exports.FETCH_CURRENT_RESOURCE_SUCCESS = exports.FETCH_CURRENT_RESOURCE_REQUEST = exports.FETCH_RESOURCE_ENTITIES_FAILURE = exports.FETCH_RESOURCE_ENTITIES_SUCCESS = exports.FETCH_RESOURCE_ENTITIES_REQUEST = undefined;
var _defineProperty2 = __webpack_require__(/*! babel-runtime/helpers/defineProperty */ "./node_modules/babel-runtime/helpers/defineProperty.js");
var _defineProperty3 = _interopRequireDefault(_defineProperty2);
var _toConsumableArray2 = __webpack_require__(/*! babel-runtime/helpers/toConsumableArray */ "./node_modules/babel-runtime/helpers/toConsumableArray.js");
var _toConsumableArray3 = _interopRequireDefault(_toConsumableArray2);
var _extends2 = __webpack_require__(/*! babel-runtime/helpers/extends */ "./node_modules/babel-runtime/helpers/extends.js");
var _extends3 = _interopRequireDefault(_extends2);
var _handleActions;
var _reduxActions = __webpack_require__(/*! redux-actions */ "./node_modules/redux-actions/es/index.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var FETCH_RESOURCE_ENTITIES_REQUEST = exports.FETCH_RESOURCE_ENTITIES_REQUEST = 'resource/entities/fetch/REQUEST';
var FETCH_RESOURCE_ENTITIES_SUCCESS = exports.FETCH_RESOURCE_ENTITIES_SUCCESS = 'resource/entities/fetch/SUCCESS';
var FETCH_RESOURCE_ENTITIES_FAILURE = exports.FETCH_RESOURCE_ENTITIES_FAILURE = 'resource/entities/fetch/FAILURE';
var FETCH_CURRENT_RESOURCE_REQUEST = exports.FETCH_CURRENT_RESOURCE_REQUEST = 'resource/current-resource/REQUEST';
var FETCH_CURRENT_RESOURCE_SUCCESS = exports.FETCH_CURRENT_RESOURCE_SUCCESS = 'resource/current-resource/SUCCESS';
var FETCH_CURRENT_RESOURCE_FAILURE = exports.FETCH_CURRENT_RESOURCE_FAILURE = 'resource/current-resource/FAILURE';
var SUBMIT_RESOURCE_REQUEST = exports.SUBMIT_RESOURCE_REQUEST = 'resource/submit/REQUEST';
var SUBMIT_RESOURCE_SUCCESS = exports.SUBMIT_RESOURCE_SUCCESS = 'resource/submit/SUCCESS';
var SUBMIT_RESOURCE_FAILURE = exports.SUBMIT_RESOURCE_FAILURE = 'resource/submit/FAILURE';
var UPDATE_RESOURCE_ELEMENT_REQUEST = exports.UPDATE_RESOURCE_ELEMENT_REQUEST = 'resource/update/REQUEST';
var UPDATE_RESOURCE_ELEMENT_SUCCESS = exports.UPDATE_RESOURCE_ELEMENT_SUCCESS = 'resource/update/SUCCESS';
var UPDATE_RESOURCE_ELEMENT_FAILURE = exports.UPDATE_RESOURCE_ELEMENT_FAILURE = 'resource/update/FAILURE';
var SET_CURRENT_RESOURCE_ELEMENT = exports.SET_CURRENT_RESOURCE_ELEMENT = 'resource/current-resource/SET';
var DELETE_RESOURCE_ELEMENT_REQUEST = exports.DELETE_RESOURCE_ELEMENT_REQUEST = 'resource/delete/REQUEST';
var fetchResourceEntitiesRequest = exports.fetchResourceEntitiesRequest = (0, _reduxActions.createAction)(FETCH_RESOURCE_ENTITIES_REQUEST);
var fetchResourceEntitiesSuccess = exports.fetchResourceEntitiesSuccess = (0, _reduxActions.createAction)(FETCH_RESOURCE_ENTITIES_SUCCESS);
var fetchCurrentResourceRequest = exports.fetchCurrentResourceRequest = (0, _reduxActions.createAction)(FETCH_CURRENT_RESOURCE_REQUEST);
var fetchCurrentResourceSuccess = exports.fetchCurrentResourceSuccess = (0, _reduxActions.createAction)(FETCH_CURRENT_RESOURCE_SUCCESS);
var submitResourceRequest = exports.submitResourceRequest = (0, _reduxActions.createAction)(SUBMIT_RESOURCE_REQUEST);
var submitResourceSuccess = exports.submitResourceSuccess = (0, _reduxActions.createAction)(SUBMIT_RESOURCE_SUCCESS);
var submitResourceFailure = exports.submitResourceFailure = (0, _reduxActions.createAction)(SUBMIT_RESOURCE_FAILURE);
var updateResourceElementRequest = exports.updateResourceElementRequest = (0, _reduxActions.createAction)(UPDATE_RESOURCE_ELEMENT_REQUEST);
var updateResourceElementSuccess = exports.updateResourceElementSuccess = (0, _reduxActions.createAction)(UPDATE_RESOURCE_ELEMENT_SUCCESS);
var updateResourceElementFailure = exports.updateResourceElementFailure = (0, _reduxActions.createAction)(UPDATE_RESOURCE_ELEMENT_FAILURE);
var setCurrentResourceElement = exports.setCurrentResourceElement = (0, _reduxActions.createAction)(SET_CURRENT_RESOURCE_ELEMENT);
var deleteResourceElementRequest = exports.deleteResourceElementRequest = (0, _reduxActions.createAction)(DELETE_RESOURCE_ELEMENT_REQUEST);
var initialState = {
entities: null,
currentResourceElement: null,
rowsPerPage: null,
totalCount: null,
currentPage: null,
errors: null
};
exports.default = (0, _reduxActions.handleActions)((_handleActions = {}, (0, _defineProperty3.default)(_handleActions, FETCH_RESOURCE_ENTITIES_SUCCESS, function (state, _ref) {
var payload = _ref.payload;
return (0, _extends3.default)({}, state, {
entities: payload.resources.data,
currentResourceElement: null,
rowsPerPage: payload.resources.meta.page_size,
currentPage: payload.resources.meta.page,
totalCount: payload.resources.meta.count
});
}), (0, _defineProperty3.default)(_handleActions, FETCH_CURRENT_RESOURCE_SUCCESS, function (state, _ref2) {
var payload = _ref2.payload;
return (0, _extends3.default)({}, state, {
currentResourceElement: payload
});
}), (0, _defineProperty3.default)(_handleActions, SUBMIT_RESOURCE_SUCCESS, function (state, _ref3) {
var payload = _ref3.payload;
return (0, _extends3.default)({}, state, {
entities: [].concat((0, _toConsumableArray3.default)(state.entities), [payload])
});
}), (0, _defineProperty3.default)(_handleActions, SUBMIT_RESOURCE_FAILURE, function (state, _ref4) {
var payload = _ref4.payload;
return (0, _extends3.default)({}, state, {
errors: payload
});
}), (0, _defineProperty3.default)(_handleActions, SET_CURRENT_RESOURCE_ELEMENT, function (state, _ref5) {
var payload = _ref5.payload;
return (0, _extends3.default)({}, state, {
currentResourceElement: (0, _extends3.default)({}, state.currentResourceElement, payload)
});
}), _handleActions), initialState);
/***/ }),
/***/ "./admin/index.js":
/*!************************!*\
!*** ./admin/index.js ***!
\************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.history = undefined;
var _react = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _react2 = _interopRequireDefault(_react);
var _reactDom = __webpack_require__(/*! react-dom */ "./node_modules/react-dom/index.js");
var _reactDom2 = _interopRequireDefault(_reactDom);
var _AppContainer = __webpack_require__(/*! ./AppContainer */ "./admin/AppContainer.js");
var _AppContainer2 = _interopRequireDefault(_AppContainer);
__webpack_require__(/*! ./index.css */ "./admin/index.css");
var _createBrowserHistory = __webpack_require__(/*! history/createBrowserHistory */ "./node_modules/history/createBrowserHistory.js");
var _createBrowserHistory2 = _interopRequireDefault(_createBrowserHistory);
var _reactRedux = __webpack_require__(/*! react-redux */ "./node_modules/react-redux/es/index.js");
var _redux = __webpack_require__(/*! redux */ "./node_modules/redux/es/index.js");
var _connectedReactRouter = __webpack_require__(/*! connected-react-router */ "./node_modules/connected-react-router/lib/index.js");
var _reduxSaga = __webpack_require__(/*! redux-saga */ "./node_modules/redux-saga/es/index.js");
var _reduxSaga2 = _interopRequireDefault(_reduxSaga);
var _ducks = __webpack_require__(/*! ./ducks */ "./admin/ducks/index.js");
var _ducks2 = _interopRequireDefault(_ducks);
var _sagas = __webpack_require__(/*! ./sagas */ "./admin/sagas/index.js");
var _sagas2 = _interopRequireDefault(_sagas);
var _reactTapEventPlugin = __webpack_require__(/*! react-tap-event-plugin */ "./node_modules/react-tap-event-plugin/src/injectTapEventPlugin.js");
var _reactTapEventPlugin2 = _interopRequireDefault(_reactTapEventPlugin);
var _styles = __webpack_require__(/*! @material-ui/core/styles/ */ "./node_modules/@material-ui/core/styles/index.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var muiTheme = (0, _styles.createMuiTheme)({
palette: {
primary: { main: '#31CACC', contrastText: '#fff' }
}
});
var history = exports.history = (0, _createBrowserHistory2.default)();
var sagaMiddleware = (0, _reduxSaga2.default)();
var composeEnhancers = _redux.compose;
if (true) {
var composeWithDevToolsExtension = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;
if (typeof composeWithDevToolsExtension === 'function') {
composeEnhancers = composeWithDevToolsExtension;
}
}
var store = (0, _redux.createStore)((0, _connectedReactRouter.connectRouter)(history)(_ducks2.default), composeEnhancers((0, _redux.applyMiddleware)((0, _connectedReactRouter.routerMiddleware)(history), sagaMiddleware)));
sagaMiddleware.run(_sagas2.default);
(0, _reactTapEventPlugin2.default)();
_reactDom2.default.render(_react2.default.createElement(
_styles.MuiThemeProvider,
{ theme: muiTheme },
_react2.default.createElement(
_reactRedux.Provider,
{ store: store },
_react2.default.createElement(_AppContainer2.default, null)
)
), document.getElementById('root'));
/***/ }),
/***/ "./admin/routes/DetailPage.jsx":
/*!*************************************!*\
!*** ./admin/routes/DetailPage.jsx ***!
\*************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _extends2 = __webpack_require__(/*! babel-runtime/helpers/extends */ "./node_modules/babel-runtime/helpers/extends.js");
var _extends3 = _interopRequireDefault(_extends2);
var _getPrototypeOf = __webpack_require__(/*! babel-runtime/core-js/object/get-prototype-of */ "./node_modules/babel-runtime/core-js/object/get-prototype-of.js");
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
var _classCallCheck2 = __webpack_require__(/*! babel-runtime/helpers/classCallCheck */ "./node_modules/babel-runtime/helpers/classCallCheck.js");
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = __webpack_require__(/*! babel-runtime/helpers/createClass */ "./node_modules/babel-runtime/helpers/createClass.js");
var _createClass3 = _interopRequireDefault(_createClass2);
var _possibleConstructorReturn2 = __webpack_require__(/*! babel-runtime/helpers/possibleConstructorReturn */ "./node_modules/babel-runtime/helpers/possibleConstructorReturn.js");
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
var _inherits2 = __webpack_require__(/*! babel-runtime/helpers/inherits */ "./node_modules/babel-runtime/helpers/inherits.js");
var _inherits3 = _interopRequireDefault(_inherits2);
var _react = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _react2 = _interopRequireDefault(_react);
var _reactRedux = __webpack_require__(/*! react-redux */ "./node_modules/react-redux/es/index.js");
var _reactRouterDom = __webpack_require__(/*! react-router-dom */ "./node_modules/react-router-dom/es/index.js");
var _propTypes = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js");
var _propTypes2 = _interopRequireDefault(_propTypes);
var _core = __webpack_require__(/*! @material-ui/core */ "./node_modules/@material-ui/core/index.es.js");
var _api = __webpack_require__(/*! ../api */ "./admin/api.js");
var _ResourceForm = __webpack_require__(/*! ../components/ResourceForm */ "./admin/components/ResourceForm/index.js");
var _ResourceForm2 = _interopRequireDefault(_ResourceForm);
var _resource = __webpack_require__(/*! ../ducks/resource */ "./admin/ducks/resource.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var propTypes = {
metadata: _propTypes2.default.shape({
resources: _propTypes2.default.object,
client: _propTypes2.default.object,
schema: _propTypes2.default.string
}),
match: _propTypes2.default.object,
fetchResource: _propTypes2.default.func.isRequired
};
var DetailPage = function (_React$Component) {
(0, _inherits3.default)(DetailPage, _React$Component);
function DetailPage() {
(0, _classCallCheck3.default)(this, DetailPage);
return (0, _possibleConstructorReturn3.default)(this, (DetailPage.__proto__ || (0, _getPrototypeOf2.default)(DetailPage)).apply(this, arguments));
}
(0, _createClass3.default)(DetailPage, [{
key: 'componentDidMount',
value: function componentDidMount() {
if (this.props.match.params.id !== 'new') {
this.props.fetchResource({
resourceName: this.props.match.params.resource,
resourceId: this.props.match.params.id
});
}
}
}, {
key: 'render',
value: function render() {
var resourceName = this.props.match.params.resource;
var resourceId = this.props.match.params.id;
return _react2.default.createElement(
_core.Grid,
{ container: true, className: 'MainContainer' },
_react2.default.createElement(
_core.Grid,
{ item: true, xs: 12 },
_react2.default.createElement(
_core.Button,
{
className: 'ButtonBack',
component: function component(props) {
return _react2.default.createElement(_reactRouterDom.Link, (0, _extends3.default)({ to: '' + _api.REL_PATH + resourceName + '/' }, props));
}
},
_react2.default.createElement(
_core.Icon,
null,
'arrow_back'
),
'\xA0Back'
),
_react2.default.createElement(_ResourceForm2.default, { resourceName: resourceName, resourceId: resourceId })
)
);
}
}]);
return DetailPage;
}(_react2.default.Component);
DetailPage.propTypes = propTypes;
var mapStateToProps = function mapStateToProps(state) {
return {
metadata: state.metadata
};
};
var mapDispatchToProps = {
fetchResource: _resource.fetchCurrentResourceRequest
};
exports.default = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)(DetailPage);
/***/ }),
/***/ "./admin/routes/ErrorPage.jsx":
/*!************************************!*\
!*** ./admin/routes/ErrorPage.jsx ***!
\************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js");
var _propTypes2 = _interopRequireDefault(_propTypes);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var propTypes = {};
var defaultProps = {};
var ErrorPage = function ErrorPage(props) {
return _react2.default.createElement(
'div',
null,
'404 Not found'
);
};
ErrorPage.propTypes = propTypes;
ErrorPage.defaultProps = defaultProps;
exports.default = ErrorPage;
/***/ }),
/***/ "./admin/routes/HomePage.js":
/*!**********************************!*\
!*** ./admin/routes/HomePage.js ***!
\**********************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _extends2 = __webpack_require__(/*! babel-runtime/helpers/extends */ "./node_modules/babel-runtime/helpers/extends.js");
var _extends3 = _interopRequireDefault(_extends2);
var _entries = __webpack_require__(/*! babel-runtime/core-js/object/entries */ "./node_modules/babel-runtime/core-js/object/entries.js");
var _entries2 = _interopRequireDefault(_entries);
var _getPrototypeOf = __webpack_require__(/*! babel-runtime/core-js/object/get-prototype-of */ "./node_modules/babel-runtime/core-js/object/get-prototype-of.js");
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
var _classCallCheck2 = __webpack_require__(/*! babel-runtime/helpers/classCallCheck */ "./node_modules/babel-runtime/helpers/classCallCheck.js");
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = __webpack_require__(/*! babel-runtime/helpers/createClass */ "./node_modules/babel-runtime/helpers/createClass.js");
var _createClass3 = _interopRequireDefault(_createClass2);
var _possibleConstructorReturn2 = __webpack_require__(/*! babel-runtime/helpers/possibleConstructorReturn */ "./node_modules/babel-runtime/helpers/possibleConstructorReturn.js");
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
var _inherits2 = __webpack_require__(/*! babel-runtime/helpers/inherits */ "./node_modules/babel-runtime/helpers/inherits.js");
var _inherits3 = _interopRequireDefault(_inherits2);
var _react = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _react2 = _interopRequireDefault(_react);
var _reactRedux = __webpack_require__(/*! react-redux */ "./node_modules/react-redux/es/index.js");
var _reactRouterDom = __webpack_require__(/*! react-router-dom */ "./node_modules/react-router-dom/es/index.js");
var _propTypes = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js");
var _propTypes2 = _interopRequireDefault(_propTypes);
var _core = __webpack_require__(/*! @material-ui/core */ "./node_modules/@material-ui/core/index.es.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var propTypes = {
metadata: _propTypes2.default.shape({
resources: _propTypes2.default.object,
schema: _propTypes2.default.string,
client: _propTypes2.default.object
})
};
var HomePage = function (_React$Component) {
(0, _inherits3.default)(HomePage, _React$Component);
function HomePage() {
(0, _classCallCheck3.default)(this, HomePage);
return (0, _possibleConstructorReturn3.default)(this, (HomePage.__proto__ || (0, _getPrototypeOf2.default)(HomePage)).apply(this, arguments));
}
(0, _createClass3.default)(HomePage, [{
key: 'render',
value: function render() {
var resources = this.props.metadata.resources;
return resources && _react2.default.createElement(
_core.Grid,
{ container: true, alignItems: 'center', className: 'MainContainer' },
_react2.default.createElement(
_core.Grid,
{ item: true, xs: 12, sm: 6 },
_react2.default.createElement(
_core.Paper,
{ square: true },
_react2.default.createElement(
_core.Typography,
{ variant: 'title', className: 'PanelTitle' },
'Resources'
),
_react2.default.createElement(
_core.List,
{ component: 'nav' },
(0, _entries2.default)(resources).map(function (resource) {
return _react2.default.createElement(
_core.ListItem,
{
key: resource[0],
button: true,
component: function component(props) {
return _react2.default.createElement(_reactRouterDom.Link, (0, _extends3.default)({ to: resource[1] + '/' }, props));
}
},
_react2.default.createElement(_core.ListItemText, { primary: resource[0] })
);
})
)
)
)
);
}
}]);
return HomePage;
}(_react2.default.Component);
HomePage.propTypes = propTypes;
var mapStateToProps = function mapStateToProps(state) {
return {
metadata: state.metadata
};
};
exports.default = (0, _reactRedux.connect)(mapStateToProps)(HomePage);
/***/ }),
/***/ "./admin/routes/ListPage.jsx":
/*!***********************************!*\
!*** ./admin/routes/ListPage.jsx ***!
\***********************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _values = __webpack_require__(/*! babel-runtime/core-js/object/values */ "./node_modules/babel-runtime/core-js/object/values.js");
var _values2 = _interopRequireDefault(_values);
var _extends2 = __webpack_require__(/*! babel-runtime/helpers/extends */ "./node_modules/babel-runtime/helpers/extends.js");
var _extends3 = _interopRequireDefault(_extends2);
var _getPrototypeOf = __webpack_require__(/*! babel-runtime/core-js/object/get-prototype-of */ "./node_modules/babel-runtime/core-js/object/get-prototype-of.js");
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
var _classCallCheck2 = __webpack_require__(/*! babel-runtime/helpers/classCallCheck */ "./node_modules/babel-runtime/helpers/classCallCheck.js");
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = __webpack_require__(/*! babel-runtime/helpers/createClass */ "./node_modules/babel-runtime/helpers/createClass.js");
var _createClass3 = _interopRequireDefault(_createClass2);
var _possibleConstructorReturn2 = __webpack_require__(/*! babel-runtime/helpers/possibleConstructorReturn */ "./node_modules/babel-runtime/helpers/possibleConstructorReturn.js");
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
var _inherits2 = __webpack_require__(/*! babel-runtime/helpers/inherits */ "./node_modules/babel-runtime/helpers/inherits.js");
var _inherits3 = _interopRequireDefault(_inherits2);
var _react = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js");
var _propTypes2 = _interopRequireDefault(_propTypes);
var _reactRedux = __webpack_require__(/*! react-redux */ "./node_modules/react-redux/es/index.js");
var _findKey = __webpack_require__(/*! lodash/findKey */ "./node_modules/lodash/findKey.js");
var _findKey2 = _interopRequireDefault(_findKey);
var _core = __webpack_require__(/*! @material-ui/core */ "./node_modules/@material-ui/core/index.es.js");
var _reactRouterDom = __webpack_require__(/*! react-router-dom */ "./node_modules/react-router-dom/es/index.js");
var _api = __webpack_require__(/*! ../api */ "./admin/api.js");
var _TablePaginationActions = __webpack_require__(/*! ../components/TablePaginationActions */ "./admin/components/TablePaginationActions/index.jsx");
var _TablePaginationActions2 = _interopRequireDefault(_TablePaginationActions);
var _resource = __webpack_require__(/*! ../ducks/resource */ "./admin/ducks/resource.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var propTypes = {
match: _propTypes2.default.object,
fetchResources: _propTypes2.default.func,
schema: _propTypes2.default.PropTypes.object,
resources: _propTypes2.default.arrayOf(_propTypes2.default.object),
rowsPerPage: _propTypes2.default.number,
currentPage: _propTypes2.default.number
};
var DEFAULT_PAGE_SIZE = 10;
var ListPage = function (_React$Component) {
(0, _inherits3.default)(ListPage, _React$Component);
function ListPage() {
(0, _classCallCheck3.default)(this, ListPage);
var _this = (0, _possibleConstructorReturn3.default)(this, (ListPage.__proto__ || (0, _getPrototypeOf2.default)(ListPage)).call(this));
_this.handleChangePage = _this.handleChangePage.bind(_this);
return _this;
}
(0, _createClass3.default)(ListPage, [{
key: 'componentDidMount',
value: function componentDidMount() {
this.props.fetchResources({
resourceName: this.props.match.params.resource,
query: {
page_size: DEFAULT_PAGE_SIZE,
page: 1
}
});
}
}, {
key: 'handleChangePage',
value: function handleChangePage(evt, page) {
// Mui has some weird default pagination behaviour on cDU
if (evt) {
this.props.fetchResources({
resourceName: this.props.match.params.resource,
query: {
page: page + 1, // TablePagination starts at 0;
page_size: DEFAULT_PAGE_SIZE
}
});
}
}
}, {
key: 'render',
value: function render() {
var resource = this.props.match.params.resource;
var resourceSchema = this.props.schema && this.props.schema.spec.paths['/' + resource + '/'].post.requestBody.content['application/json'].schema;
return resourceSchema && _react2.default.createElement(
_core.Grid,
{ container: true, spacing: 8, className: 'MainContainer' },
_react2.default.createElement(
_core.Grid,
{ item: true, xs: 12 },
_react2.default.createElement(
_core.Paper,
{ square: true },
_react2.default.createElement(
_core.Typography,
{ variant: 'title', className: 'TableTitle PanelTitle' },
(0, _findKey2.default)(this.props.resourceList, function (resource) {
return resource === resource;
})
),
_react2.default.createElement(
_core.Button,
{
component: function component(props) {
return _react2.default.createElement(_reactRouterDom.Link, (0, _extends3.default)({ to: 'new' }, props));
},
variant: 'contained',
color: 'primary',
className: 'ButtonNew'
},
'Create New'
),
this.props.resources ? _react2.default.createElement(
_react.Fragment,
null,
_react2.default.createElement(
'div',
{ className: 'TableContainer' },
_react2.default.createElement(
_core.Table,
{ className: 'TableContainer' },
_react2.default.createElement(
_core.TableHead,
null,
_react2.default.createElement(
_core.TableRow,
null,
_react2.default.createElement(
_core.TableCell,
{ key: 'edit' },
'Edit'
),
(0, _values2.default)(resourceSchema.properties).map(function (field) {
return _react2.default.createElement(
_core.TableCell,
{ key: field.title },
field.description
);
})
)
),
_react2.default.createElement(
_core.TableBody,
null,
this.props.resources.map(function (item) {
return _react2.default.createElement(
_core.TableRow,
{ key: item.id },
_react2.default.createElement(
_core.TableCell,
null,
_react2.default.createElement(
_reactRouterDom.Link,
{ to: '' + _api.REL_PATH + resource + '/' + item.id },
_react2.default.createElement(
_core.Icon,
null,
'edit'
)
)
),
(0, _values2.default)(resourceSchema.properties).map(function (field) {
return _react2.default.createElement(
_core.TableCell,
{ key: field.title },
item[field.title]
);
})
);
})
),
_react2.default.createElement(
_core.TableFooter,
null,
_react2.default.createElement(_core.TableRow, null)
)
)
),
_react2.default.createElement(_core.TablePagination, {
colSpan: 3,
component: 'div',
className: 'TablePagination',
count: this.props.totalCount,
rowsPerPage: this.props.rowsPerPage,
page: this.props.currentPage - 1,
onChangePage: this.handleChangePage,
onChangeRowsPerPage: this.handleChangeRowsPerPage,
ActionsComponent: _TablePaginationActions2.default,
rowsPerPageOptions: [0]
})
) : _react2.default.createElement(
'div',
{ className: 'SpinnerContainer' },
_react2.default.createElement(_core.CircularProgress, null)
)
)
)
);
}
}]);
return ListPage;
}(_react2.default.Component);
ListPage.propTypes = propTypes;
var mapStateToProps = function mapStateToProps(state) {
return {
rowsPerPage: state.resource.rowsPerPage,
currentPage: state.resource.currentPage,
totalCount: state.resource.totalCount,
resources: state.resource.entities,
schema: state.metadata.client,
resourceList: state.metadata.resources
};
};
var mapDispatchToProps = {
fetchResources: _resource.fetchResourceEntitiesRequest
};
exports.default = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)(ListPage);
/***/ }),
/***/ "./admin/routes/index.js":
/*!*******************************!*\
!*** ./admin/routes/index.js ***!
\*******************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _getPrototypeOf = __webpack_require__(/*! babel-runtime/core-js/object/get-prototype-of */ "./node_modules/babel-runtime/core-js/object/get-prototype-of.js");
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
var _classCallCheck2 = __webpack_require__(/*! babel-runtime/helpers/classCallCheck */ "./node_modules/babel-runtime/helpers/classCallCheck.js");
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = __webpack_require__(/*! babel-runtime/helpers/createClass */ "./node_modules/babel-runtime/helpers/createClass.js");
var _createClass3 = _interopRequireDefault(_createClass2);
var _possibleConstructorReturn2 = __webpack_require__(/*! babel-runtime/helpers/possibleConstructorReturn */ "./node_modules/babel-runtime/helpers/possibleConstructorReturn.js");
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
var _inherits2 = __webpack_require__(/*! babel-runtime/helpers/inherits */ "./node_modules/babel-runtime/helpers/inherits.js");
var _inherits3 = _interopRequireDefault(_inherits2);
var _react = __webpack_require__(/*! react */ "./node_modules/react/index.js");
var _react2 = _interopRequireDefault(_react);
var _reactRouterDom = __webpack_require__(/*! react-router-dom */ "./node_modules/react-router-dom/es/index.js");
var _reactRouterRedux = __webpack_require__(/*! react-router-redux */ "./node_modules/react-router-redux/es/index.js");
var _Header = __webpack_require__(/*! ../components/Header */ "./admin/components/Header/index.js");
var _Header2 = _interopRequireDefault(_Header);
var _HomePage = __webpack_require__(/*! ./HomePage */ "./admin/routes/HomePage.js");
var _HomePage2 = _interopRequireDefault(_HomePage);
var _ListPage = __webpack_require__(/*! ./ListPage */ "./admin/routes/ListPage.jsx");
var _ListPage2 = _interopRequireDefault(_ListPage);
var _DetailPage = __webpack_require__(/*! ./DetailPage */ "./admin/routes/DetailPage.jsx");
var _DetailPage2 = _interopRequireDefault(_DetailPage);
var _ErrorPage = __webpack_require__(/*! ./ErrorPage */ "./admin/routes/ErrorPage.jsx");
var _ErrorPage2 = _interopRequireDefault(_ErrorPage);
var _api = __webpack_require__(/*! ../api */ "./admin/api.js");
var _index = __webpack_require__(/*! ../index.js */ "./admin/index.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var Routes = function (_Component) {
(0, _inherits3.default)(Routes, _Component);
function Routes() {
(0, _classCallCheck3.default)(this, Routes);
return (0, _possibleConstructorReturn3.default)(this, (Routes.__proto__ || (0, _getPrototypeOf2.default)(Routes)).apply(this, arguments));
}
(0, _createClass3.default)(Routes, [{
key: 'render',
value: function render() {
return _react2.default.createElement(
_reactRouterRedux.ConnectedRouter,
{ history: _index.history },
_react2.default.createElement(
'div',
null,
_react2.default.createElement(_Header2.default, null),
_react2.default.createElement(
_reactRouterDom.Switch,
null,
_react2.default.createElement(_reactRouterDom.Route, { exact: true, path: _api.REL_PATH, component: _HomePage2.default }),
_react2.default.createElement(_reactRouterDom.Route, { exact: true, path: _api.REL_PATH + ':resource', component: _ListPage2.default }),
_react2.default.createElement(_reactRouterDom.Route, {
exact: true,
path: _api.REL_PATH + ':resource/:id',
component: _DetailPage2.default
}),
_react2.default.createElement(_reactRouterDom.Route, { path: '/not-found', component: _ErrorPage2.default }),
_react2.default.createElement(_reactRouterDom.Route, { component: _ErrorPage2.default })
)
)
);
}
}]);
return Routes;
}(_react.Component);
exports.default = Routes;
/***/ }),
/***/ "./admin/sagas/index.js":
/*!******************************!*\
!*** ./admin/sagas/index.js ***!
\******************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _regenerator = __webpack_require__(/*! babel-runtime/regenerator */ "./node_modules/babel-runtime/regenerator/index.js");
var _regenerator2 = _interopRequireDefault(_regenerator);
exports.default = root;
var _effects = __webpack_require__(/*! redux-saga/effects */ "./node_modules/redux-saga/es/effects.js");
var _metadata = __webpack_require__(/*! ./metadata */ "./admin/sagas/metadata.js");
var _metadata2 = _interopRequireDefault(_metadata);
var _resource = __webpack_require__(/*! ./resource */ "./admin/sagas/resource.js");
var _resource2 = _interopRequireDefault(_resource);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var _marked = /*#__PURE__*/_regenerator2.default.mark(root);
function root() {
return _regenerator2.default.wrap(function root$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return (0, _effects.all)([(0, _metadata2.default)(), (0, _resource2.default)()]);
case 2:
case 'end':
return _context.stop();
}
}
}, _marked, this);
}
/***/ }),
/***/ "./admin/sagas/metadata.js":
/*!*********************************!*\
!*** ./admin/sagas/metadata.js ***!
\*********************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _regenerator = __webpack_require__(/*! babel-runtime/regenerator */ "./node_modules/babel-runtime/regenerator/index.js");
var _regenerator2 = _interopRequireDefault(_regenerator);
var _extends2 = __webpack_require__(/*! babel-runtime/helpers/extends */ "./node_modules/babel-runtime/helpers/extends.js");
var _extends3 = _interopRequireDefault(_extends2);
exports.default = watchMetadata;
var _effects = __webpack_require__(/*! redux-saga/effects */ "./node_modules/redux-saga/es/effects.js");
var _metadata = __webpack_require__(/*! ../ducks/metadata */ "./admin/ducks/metadata.js");
var _api = __webpack_require__(/*! ../api */ "./admin/api.js");
var _api2 = _interopRequireDefault(_api);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var _marked = /*#__PURE__*/_regenerator2.default.mark(fetchMetadata),
_marked2 = /*#__PURE__*/_regenerator2.default.mark(watchMetadata);
function fetchMetadata() {
var metadata, client;
return _regenerator2.default.wrap(function fetchMetadata$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
_context.prev = 0;
_context.next = 3;
return (0, _effects.call)(_api2.default.fetchMetadata);
case 3:
metadata = _context.sent;
_context.next = 6;
return (0, _effects.call)(_api2.default.fetchSwaggerSchema, metadata.schema);
case 6:
client = _context.sent;
_context.next = 9;
return (0, _effects.put)((0, _metadata.fetchMetadataSuccess)((0, _extends3.default)({}, metadata, {
client: client
})));
case 9:
_context.next = 14;
break;
case 11:
_context.prev = 11;
_context.t0 = _context['catch'](0);
throw Error(_context.t0);
case 14:
case 'end':
return _context.stop();
}
}
}, _marked, this, [[0, 11]]);
}
function watchMetadata() {
return _regenerator2.default.wrap(function watchMetadata$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return (0, _effects.takeLatest)(_metadata.FETCH_METADATA_REQUEST, fetchMetadata);
case 2:
case 'end':
return _context2.stop();
}
}
}, _marked2, this);
}
/***/ }),
/***/ "./admin/sagas/resource.js":
/*!*********************************!*\
!*** ./admin/sagas/resource.js ***!
\*********************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var _regenerator = __webpack_require__(/*! babel-runtime/regenerator */ "./node_modules/babel-runtime/regenerator/index.js");
var _regenerator2 = _interopRequireDefault(_regenerator);
exports.default = watchResource;
var _effects = __webpack_require__(/*! redux-saga/effects */ "./node_modules/redux-saga/es/effects.js");
var _schema = __webpack_require__(/*! ../selectors/schema */ "./admin/selectors/schema.js");
var _reactRouterRedux = __webpack_require__(/*! react-router-redux */ "./node_modules/react-router-redux/es/index.js");
var _api = __webpack_require__(/*! ../api */ "./admin/api.js");
var _api2 = _interopRequireDefault(_api);
var _resource = __webpack_require__(/*! ../ducks/resource */ "./admin/ducks/resource.js");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var _marked = /*#__PURE__*/_regenerator2.default.mark(fetchResource),
_marked2 = /*#__PURE__*/_regenerator2.default.mark(submitResource),
_marked3 = /*#__PURE__*/_regenerator2.default.mark(updateResourceElement),
_marked4 = /*#__PURE__*/_regenerator2.default.mark(fetchResourceElement),
_marked5 = /*#__PURE__*/_regenerator2.default.mark(deleteResourceElement),
_marked6 = /*#__PURE__*/_regenerator2.default.mark(watchResource);
function fetchResource(_ref) {
var payload = _ref.payload;
var client, metadata, schema, resources;
return _regenerator2.default.wrap(function fetchResource$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
_context.prev = 0;
_context.next = 3;
return (0, _effects.select)(_schema.selectClient);
case 3:
client = _context.sent;
if (client) {
_context.next = 12;
break;
}
_context.next = 7;
return (0, _effects.call)(_api2.default.fetchMetadata);
case 7:
metadata = _context.sent;
schema = metadata.schema;
_context.next = 11;
return (0, _effects.call)(_api2.default.fetchSwaggerSchema, schema);
case 11:
client = _context.sent;
case 12:
_context.next = 14;
return (0, _effects.call)(_api2.default.fetchResource, payload, client);
case 14:
resources = _context.sent;
_context.next = 17;
return (0, _effects.put)((0, _resource.fetchResourceEntitiesSuccess)({ resources: resources }));
case 17:
_context.next = 23;
break;
case 19:
_context.prev = 19;
_context.t0 = _context['catch'](0);
_context.next = 23;
return (0, _effects.put)((0, _reactRouterRedux.push)('/not-found'));
case 23:
case 'end':
return _context.stop();
}
}
}, _marked, this, [[0, 19]]);
}
function submitResource(_ref2) {
var payload = _ref2.payload;
var client, response, errors;
return _regenerator2.default.wrap(function submitResource$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
_context2.prev = 0;
_context2.next = 3;
return (0, _effects.select)(_schema.selectClient);
case 3:
client = _context2.sent;
_context2.next = 6;
return (0, _effects.call)(_api2.default.submitResource, payload, client);
case 6:
response = _context2.sent;
_context2.next = 9;
return (0, _effects.put)((0, _resource.submitResourceSuccess)(response));
case 9:
_context2.next = 11;
return (0, _effects.put)((0, _reactRouterRedux.push)('' + _api.REL_PATH + payload.resourceName + '/'));
case 11:
_context2.next = 18;
break;
case 13:
_context2.prev = 13;
_context2.t0 = _context2['catch'](0);
errors = JSON.parse(_context2.t0.message);
_context2.next = 18;
return (0, _effects.put)((0, _resource.submitResourceFailure)(errors));
case 18:
case 'end':
return _context2.stop();
}
}
}, _marked2, this, [[0, 13]]);
}
function updateResourceElement(_ref3) {
var payload = _ref3.payload;
var client, response;
return _regenerator2.default.wrap(function updateResourceElement$(_context3) {
while (1) {
switch (_context3.prev = _context3.next) {
case 0:
_context3.prev = 0;
_context3.next = 3;
return (0, _effects.select)(_schema.selectClient);
case 3:
client = _context3.sent;
_context3.next = 6;
return (0, _effects.call)(_api2.default.updateResourceElement, payload, client);
case 6:
response = _context3.sent;
_context3.next = 9;
return (0, _effects.put)((0, _resource.updateResourceElementSuccess)(response));
case 9:
_context3.next = 11;
return (0, _effects.put)((0, _reactRouterRedux.push)('' + _api.REL_PATH + payload.resourceName + '/'));
case 11:
_context3.next = 15;
break;
case 13:
_context3.prev = 13;
_context3.t0 = _context3['catch'](0);
case 15:
case 'end':
return _context3.stop();
}
}
}, _marked3, this, [[0, 13]]);
}
function fetchResourceElement(_ref4) {
var payload = _ref4.payload;
var client, metadata, schema, resource;
return _regenerator2.default.wrap(function fetchResourceElement$(_context4) {
while (1) {
switch (_context4.prev = _context4.next) {
case 0:
_context4.prev = 0;
_context4.next = 3;
return (0, _effects.select)(_schema.selectClient);
case 3:
client = _context4.sent;
if (client) {
_context4.next = 12;
break;
}
_context4.next = 7;
return (0, _effects.call)(_api2.default.fetchMetadata);
case 7:
metadata = _context4.sent;
schema = metadata.schema;
_context4.next = 11;
return (0, _effects.call)(_api2.default.fetchSwaggerSchema, schema);
case 11:
client = _context4.sent;
case 12:
_context4.next = 14;
return (0, _effects.call)(_api2.default.fetchResourceElement, payload, client);
case 14:
resource = _context4.sent;
_context4.next = 17;
return (0, _effects.put)((0, _resource.fetchCurrentResourceSuccess)(resource));
case 17:
_context4.next = 23;
break;
case 19:
_context4.prev = 19;
_context4.t0 = _context4['catch'](0);
_context4.next = 23;
return (0, _effects.put)((0, _reactRouterRedux.push)('/not-found'));
case 23:
case 'end':
return _context4.stop();
}
}
}, _marked4, this, [[0, 19]]);
}
function deleteResourceElement(_ref5) {
var payload = _ref5.payload;
var client, metadata, schema;
return _regenerator2.default.wrap(function deleteResourceElement$(_context5) {
while (1) {
switch (_context5.prev = _context5.next) {
case 0:
_context5.prev = 0;
_context5.next = 3;
return (0, _effects.select)(_schema.selectClient);
case 3:
client = _context5.sent;
if (client) {
_context5.next = 12;
break;
}
_context5.next = 7;
return (0, _effects.call)(_api2.default.fetchMetadata);
case 7:
metadata = _context5.sent;
schema = metadata.schema;
_context5.next = 11;
return (0, _effects.call)(_api2.default.fetchSwaggerSchema, schema);
case 11:
client = _context5.sent;
case 12:
_context5.next = 14;
return (0, _effects.call)(_api2.default.deleteResourceElement, payload, client);
case 14:
_context5.next = 16;
return (0, _effects.put)((0, _reactRouterRedux.push)('' + _api.REL_PATH + payload.resourceName + '/'));
case 16:
_context5.next = 20;
break;
case 18:
_context5.prev = 18;
_context5.t0 = _context5['catch'](0);
case 20:
case 'end':
return _context5.stop();
}
}
}, _marked5, this, [[0, 18]]);
}
function watchResource() {
return _regenerator2.default.wrap(function watchResource$(_context6) {
while (1) {
switch (_context6.prev = _context6.next) {
case 0:
_context6.next = 2;
return (0, _effects.takeLatest)(_resource.FETCH_RESOURCE_ENTITIES_REQUEST, fetchResource);
case 2:
_context6.next = 4;
return (0, _effects.takeLatest)(_resource.SUBMIT_RESOURCE_REQUEST, submitResource);
case 4:
_context6.next = 6;
return (0, _effects.takeLatest)(_resource.FETCH_CURRENT_RESOURCE_REQUEST, fetchResourceElement);
case 6:
_context6.next = 8;
return (0, _effects.takeLatest)(_resource.UPDATE_RESOURCE_ELEMENT_REQUEST, updateResourceElement);
case 8:
_context6.next = 10;
return (0, _effects.takeLatest)(_resource.DELETE_RESOURCE_ELEMENT_REQUEST, deleteResourceElement);
case 10:
case 'end':
return _context6.stop();
}
}
}, _marked6, this);
}
/***/ }),
/***/ "./admin/selectors/schema.js":
/*!***********************************!*\
!*** ./admin/selectors/schema.js ***!
\***********************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var selectSchemaUrl = exports.selectSchemaUrl = function selectSchemaUrl(state) {
return state.metadata.schema;
};
var selectClient = exports.selectClient = function selectClient(state) {
return state.metadata.client;
};
/***/ })
},[["./admin/index.js","runtime~index","styles.react","vendors~index"]]]);
//# sourceMappingURL=index.js.mapPK ! _ _ apistar_crud/static/index.js.map{"version":3,"sources":["webpack:///./admin/App.js","webpack:///./admin/AppContainer.js","webpack:///./admin/api.js","webpack:///./admin/components/Header/Header.js","webpack:///./admin/components/Header/index.js","webpack:///./admin/components/ResourceForm/ResourceForm.jsx","webpack:///./admin/components/ResourceForm/index.js","webpack:///./admin/components/TablePaginationActions/TablePaginationActions.jsx","webpack:///./admin/components/TablePaginationActions/index.jsx","webpack:///./admin/ducks/index.js","webpack:///./admin/ducks/metadata.js","webpack:///./admin/ducks/resource.js","webpack:///./admin/index.js","webpack:///./admin/routes/DetailPage.jsx","webpack:///./admin/routes/ErrorPage.jsx","webpack:///./admin/routes/HomePage.js","webpack:///./admin/routes/ListPage.jsx","webpack:///./admin/routes/index.js","webpack:///./admin/sagas/index.js","webpack:///./admin/sagas/metadata.js","webpack:///./admin/sagas/resource.js","webpack:///./admin/selectors/schema.js"],"names":["propTypes","fetchMetadata","func","isRequired","App","props","mapStatetoProps","mapDispatchToProps","REL_PATH","urls","host","metadata","Api","get","then","response","body","catch","Error","error","message","payload","client","resourceName","query","apis","list","resource","id","resourceId","retrieve","element_id","schemaUrl","create","requestBody","resourceData","update","delete","Header","Component","mapStateToProps","state","schema","object","setCurrentResourceElement","updateResourceElement","submitResource","deleteResourceElement","string","currentResourceElement","defaultProps","typeMaps","integer","float","datetime","ResourceForm","handleInputChange","bind","handleSubmit","handleDialogClose","handleDialogOpen","handleDeleteConfirmClick","data","isDialogOpen","evt","target","name","value","preventDefault","setState","errors","resourceSchema","spec","paths","post","content","requiredFields","required","properties","map","field","title","type","minimum","maximum","description","includes","resources","entities","onChangePage","rowsPerPage","number","count","page","TablePaginationActions","handleBackButtonClick","handleFirstPageButtonClick","handleNextButtonClick","handleLastPageButtonClick","event","Math","max","ceil","FETCH_METADATA_REQUEST","FETCH_METADATA_SUCCESS","FETCH_METADATA_FAILURE","fetchMetadataRequest","fetchMetadataSuccess","fetchMetadataFailure","initialState","FETCH_RESOURCE_ENTITIES_REQUEST","FETCH_RESOURCE_ENTITIES_SUCCESS","FETCH_RESOURCE_ENTITIES_FAILURE","FETCH_CURRENT_RESOURCE_REQUEST","FETCH_CURRENT_RESOURCE_SUCCESS","FETCH_CURRENT_RESOURCE_FAILURE","SUBMIT_RESOURCE_REQUEST","SUBMIT_RESOURCE_SUCCESS","SUBMIT_RESOURCE_FAILURE","UPDATE_RESOURCE_ELEMENT_REQUEST","UPDATE_RESOURCE_ELEMENT_SUCCESS","UPDATE_RESOURCE_ELEMENT_FAILURE","SET_CURRENT_RESOURCE_ELEMENT","DELETE_RESOURCE_ELEMENT_REQUEST","fetchResourceEntitiesRequest","fetchResourceEntitiesSuccess","fetchCurrentResourceRequest","fetchCurrentResourceSuccess","submitResourceRequest","submitResourceSuccess","submitResourceFailure","updateResourceElementRequest","updateResourceElementSuccess","updateResourceElementFailure","deleteResourceElementRequest","totalCount","currentPage","meta","page_size","muiTheme","palette","primary","main","contrastText","history","sagaMiddleware","composeEnhancers","composeWithDevToolsExtension","window","__REDUX_DEVTOOLS_EXTENSION_COMPOSE__","store","run","render","document","getElementById","shape","match","fetchResource","DetailPage","params","ErrorPage","HomePage","fetchResources","PropTypes","arrayOf","DEFAULT_PAGE_SIZE","ListPage","handleChangePage","resourceList","item","handleChangeRowsPerPage","Routes","root","watchMetadata","fetchSwaggerSchema","watchResource","fetchResourceElement","JSON","parse","selectSchemaUrl","selectClient"],"mappings":"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","file":"index.js","sourcesContent":["import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Routes from './routes';\n\nimport './App.css';\n\nconst propTypes = {\n fetchMetadata: PropTypes.func.isRequired,\n};\n\nclass App extends Component {\n componentDidMount() {\n this.props.fetchMetadata();\n }\n render() {\n return (\n
\n \n
\n );\n }\n}\n\nApp.propTypes = propTypes;\n\nexport default App;\n","import { connect } from 'react-redux';\n\nimport AppComponent from './App';\n\nimport { fetchMetadataRequest } from './ducks/metadata';\n\nconst mapStatetoProps = state => {\n return {};\n};\n\nconst mapDispatchToProps = {\n fetchMetadata: fetchMetadataRequest,\n};\n\nexport default connect(\n mapStatetoProps,\n mapDispatchToProps\n)(AppComponent);\n","import request from 'superagent';\nimport Swagger from 'swagger-client';\n\nexport const REL_PATH = '/admin/';\n\nconst urls = {\n host: 'http://localhost:8000',\n metadata: '/admin/metadata/',\n};\n\nexport default class Api {\n static fetchMetadata() {\n return request\n .get(urls.host + urls.metadata)\n .then(response => response.body)\n .catch(error => {\n throw Error(error.message);\n });\n }\n\n static fetchResource(payload, client) {\n const { resourceName, query } = payload;\n return client.apis[resourceName]\n .list(query)\n .then(response => response.body)\n .catch(error => {\n throw Error(error.message);\n });\n }\n\n static fetchResourceElement(payload, client) {\n const resource = payload.resourceName;\n const id = payload.resourceId;\n return client.apis[resource]\n .retrieve({ element_id: id })\n .then(response => response.body)\n .catch(error => {\n throw Error(error.message);\n });\n }\n\n static fetchSwaggerSchema(schemaUrl) {\n return Swagger(urls.host + schemaUrl).then(client => client);\n }\n\n static submitResource(payload, client) {\n return client.apis[payload.resourceName]\n .create({}, { requestBody: payload.resourceData })\n .then(response => response.body)\n .catch(error => {\n throw Error(JSON.stringify(error.response.body));\n });\n }\n\n static updateResourceElement(payload, client) {\n const { resourceName, resourceId, resourceData } = payload;\n return client.apis[resourceName]\n .update({ element_id: resourceId }, { requestBody: resourceData })\n .then(response => response.body);\n }\n\n static deleteResourceElement(payload, client) {\n const { resourceName, resourceId } = payload;\n return client.apis[resourceName]\n .delete({ element_id: resourceId })\n .then(response => response.body)\n .catch(error => {\n throw Error(error.message);\n });\n }\n}\n","import React from 'react';\n\nimport { Toolbar, AppBar, Typography } from '@material-ui/core';\nimport { Link } from 'react-router-dom';\nimport { connect } from 'react-redux';\nimport { withTheme } from '@material-ui/core/styles';\nimport { REL_PATH } from '../../api';\n\nclass Header extends React.Component {\n render() {\n return (\n \n \n \n \n APISTAR\n \n \n \n \n );\n }\n}\n\nconst mapStateToProps = state => ({\n metadata: state.metadata,\n});\n\nexport default withTheme()(connect(mapStateToProps)(Header));\n","import Header from './Header';\n\nexport default Header;\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport {\n Grid,\n TextField,\n Button,\n CircularProgress,\n Dialog,\n DialogTitle,\n DialogContent,\n DialogContentText,\n DialogActions,\n} from '@material-ui/core';\n\nimport {\n submitResourceRequest,\n setCurrentResourceElement,\n updateResourceElementRequest,\n deleteResourceElementRequest,\n} from '../../ducks/resource';\n\nconst propTypes = {\n schema: PropTypes.object,\n setCurrentResourceElement: PropTypes.func,\n updateResourceElement: PropTypes.func,\n submitResource: PropTypes.func,\n deleteResourceElement: PropTypes.func,\n resourceId: PropTypes.string,\n resourceName: PropTypes.string,\n currentResourceElement: PropTypes.object,\n};\nconst defaultProps = {};\n\nconst typeMaps = {\n string: 'text',\n integer: 'number',\n float: 'number', // TODO: fix\n datetime: 'datetime', // TODO: fix\n};\n\nclass ResourceForm extends React.Component {\n constructor() {\n super();\n this.handleInputChange = this.handleInputChange.bind(this);\n this.handleSubmit = this.handleSubmit.bind(this);\n this.handleDialogClose = this.handleDialogClose.bind(this);\n this.handleDialogOpen = this.handleDialogOpen.bind(this);\n this.handleDeleteConfirmClick = this.handleDeleteConfirmClick.bind(this);\n this.state = { data: null, isDialogOpen: false };\n }\n\n handleInputChange(evt) {\n const { name, value } = evt.target;\n this.props.setCurrentResourceElement({ [name]: value });\n }\n\n handleSubmit(evt) {\n evt.preventDefault();\n if (this.props.resourceId !== 'new') {\n this.props.updateResourceElement({\n resourceName: this.props.resourceName,\n resourceData: this.props.currentResourceElement,\n resourceId: this.props.resourceId,\n });\n } else {\n this.props.submitResource({\n resourceName: this.props.resourceName,\n resourceData: this.props.currentResourceElement,\n });\n }\n }\n\n handleDialogClose() {\n this.setState({ isDialogOpen: false });\n }\n\n handleDialogOpen() {\n this.setState({ isDialogOpen: true });\n }\n\n handleDeleteConfirmClick() {\n this.props.deleteResourceElement({\n resourceName: this.props.resourceName,\n resourceId: this.props.resourceId,\n });\n }\n\n render() {\n const data = this.props.currentResourceElement;\n const errors = this.props.errors;\n const resourceSchema =\n this.props.schema &&\n this.props.schema.spec.paths[`/${this.props.resourceName}/`].post\n .requestBody.content['application/json'].schema;\n const requiredFields = resourceSchema && resourceSchema.required;\n return resourceSchema ? (\n \n ) : (\n \n \n
\n );\n }\n}\n\nResourceForm.propTypes = propTypes;\nResourceForm.defaultProps = defaultProps;\n\nconst mapStateToProps = state => ({\n resources: state.resource.entities,\n schema: state.metadata.client,\n currentResourceElement: state.resource.currentResourceElement,\n errors: state.resource.errors,\n});\n\nconst mapDispatchToProps = {\n submitResource: submitResourceRequest,\n setCurrentResourceElement,\n updateResourceElement: updateResourceElementRequest,\n deleteResourceElement: deleteResourceElementRequest,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(ResourceForm);\n","import ResourceForm from './ResourceForm';\n\nexport default ResourceForm;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { IconButton } from '@material-ui/core';\nimport { KeyboardArrowLeft, KeyboardArrowRight } from '@material-ui/icons/';\n\nimport FirstPageIcon from '@material-ui/icons/FirstPage';\nimport LastPageIcon from '@material-ui/icons/LastPage';\n\nconst propTypes = {\n onChangePage: PropTypes.func,\n rowsPerPage: PropTypes.number,\n count: PropTypes.number,\n page: PropTypes.number,\n};\n\nclass TablePaginationActions extends React.Component {\n constructor() {\n super();\n this.handleBackButtonClick = this.handleBackButtonClick.bind(this);\n this.handleFirstPageButtonClick = this.handleFirstPageButtonClick.bind(\n this\n );\n this.handleNextButtonClick = this.handleNextButtonClick.bind(this);\n this.handleLastPageButtonClick = this.handleLastPageButtonClick.bind(this);\n }\n handleFirstPageButtonClick(event) {\n this.props.onChangePage(event, 0);\n }\n\n handleBackButtonClick(event) {\n this.props.onChangePage(event, this.props.page - 1);\n }\n\n handleNextButtonClick(event) {\n this.props.onChangePage(event, this.props.page + 1);\n }\n\n handleLastPageButtonClick(event) {\n this.props.onChangePage(\n event,\n Math.max(0, Math.ceil(this.props.count / this.props.rowsPerPage) - 1)\n );\n }\n\n render() {\n const { count, page, rowsPerPage } = this.props;\n return (\n \n \n \n \n \n \n \n = Math.ceil(count / rowsPerPage) - 1}\n aria-label=\"Next Page\"\n >\n \n \n = Math.ceil(count / rowsPerPage) - 1}\n aria-label=\"Last Page\"\n >\n \n \n
\n );\n }\n}\n\nTablePaginationActions.propTypes = propTypes;\n\nexport default TablePaginationActions;\n","import TablePaginationActions from './TablePaginationActions';\n\nexport default TablePaginationActions;\n","import { combineReducers } from 'redux';\n\nimport metadata from './metadata';\nimport resource from './resource';\n\nexport default combineReducers({\n metadata,\n resource,\n});\n","import { createAction, handleActions } from 'redux-actions';\n\nexport const FETCH_METADATA_REQUEST = 'metadata/fetch/REQUEST';\nexport const FETCH_METADATA_SUCCESS = 'metadata/fetch/SUCCESS';\nexport const FETCH_METADATA_FAILURE = 'metadata/fetch/FAILURE';\n\nexport const fetchMetadataRequest = createAction(FETCH_METADATA_REQUEST);\nexport const fetchMetadataSuccess = createAction(FETCH_METADATA_SUCCESS);\nexport const fetchMetadataFailure = createAction(FETCH_METADATA_FAILURE);\n\nconst initialState = {\n resources: null,\n schema: null,\n client: null,\n};\n\nexport default handleActions(\n {\n [FETCH_METADATA_SUCCESS]: (state, { payload }) => ({\n ...state,\n resources: payload.resources,\n schema: payload.schema,\n client: payload.client,\n }),\n [FETCH_METADATA_FAILURE]: (state, { payload }) => ({\n ...state,\n error: payload,\n }),\n },\n initialState\n);\n","import { createAction, handleActions } from 'redux-actions';\n\nexport const FETCH_RESOURCE_ENTITIES_REQUEST =\n 'resource/entities/fetch/REQUEST';\nexport const FETCH_RESOURCE_ENTITIES_SUCCESS =\n 'resource/entities/fetch/SUCCESS';\nexport const FETCH_RESOURCE_ENTITIES_FAILURE =\n 'resource/entities/fetch/FAILURE';\n\nexport const FETCH_CURRENT_RESOURCE_REQUEST =\n 'resource/current-resource/REQUEST';\nexport const FETCH_CURRENT_RESOURCE_SUCCESS =\n 'resource/current-resource/SUCCESS';\nexport const FETCH_CURRENT_RESOURCE_FAILURE =\n 'resource/current-resource/FAILURE';\n\nexport const SUBMIT_RESOURCE_REQUEST = 'resource/submit/REQUEST';\nexport const SUBMIT_RESOURCE_SUCCESS = 'resource/submit/SUCCESS';\nexport const SUBMIT_RESOURCE_FAILURE = 'resource/submit/FAILURE';\n\nexport const UPDATE_RESOURCE_ELEMENT_REQUEST = 'resource/update/REQUEST';\nexport const UPDATE_RESOURCE_ELEMENT_SUCCESS = 'resource/update/SUCCESS';\nexport const UPDATE_RESOURCE_ELEMENT_FAILURE = 'resource/update/FAILURE';\n\nexport const SET_CURRENT_RESOURCE_ELEMENT = 'resource/current-resource/SET';\n\nexport const DELETE_RESOURCE_ELEMENT_REQUEST = 'resource/delete/REQUEST';\n\nexport const fetchResourceEntitiesRequest = createAction(\n FETCH_RESOURCE_ENTITIES_REQUEST\n);\nexport const fetchResourceEntitiesSuccess = createAction(\n FETCH_RESOURCE_ENTITIES_SUCCESS\n);\nexport const fetchCurrentResourceRequest = createAction(\n FETCH_CURRENT_RESOURCE_REQUEST\n);\nexport const fetchCurrentResourceSuccess = createAction(\n FETCH_CURRENT_RESOURCE_SUCCESS\n);\n\nexport const submitResourceRequest = createAction(SUBMIT_RESOURCE_REQUEST);\nexport const submitResourceSuccess = createAction(SUBMIT_RESOURCE_SUCCESS);\nexport const submitResourceFailure = createAction(SUBMIT_RESOURCE_FAILURE);\nexport const updateResourceElementRequest = createAction(\n UPDATE_RESOURCE_ELEMENT_REQUEST\n);\nexport const updateResourceElementSuccess = createAction(\n UPDATE_RESOURCE_ELEMENT_SUCCESS\n);\nexport const updateResourceElementFailure = createAction(\n UPDATE_RESOURCE_ELEMENT_FAILURE\n);\nexport const setCurrentResourceElement = createAction(\n SET_CURRENT_RESOURCE_ELEMENT\n);\n\nexport const deleteResourceElementRequest = createAction(\n DELETE_RESOURCE_ELEMENT_REQUEST\n);\n\nconst initialState = {\n entities: null,\n currentResourceElement: null,\n rowsPerPage: null,\n totalCount: null,\n currentPage: null,\n errors: null,\n};\n\nexport default handleActions(\n {\n [FETCH_RESOURCE_ENTITIES_SUCCESS]: (state, { payload }) => ({\n ...state,\n entities: payload.resources.data,\n currentResourceElement: null,\n rowsPerPage: payload.resources.meta.page_size,\n currentPage: payload.resources.meta.page,\n totalCount: payload.resources.meta.count,\n }),\n [FETCH_CURRENT_RESOURCE_SUCCESS]: (state, { payload }) => ({\n ...state,\n currentResourceElement: payload,\n }),\n [SUBMIT_RESOURCE_SUCCESS]: (state, { payload }) => ({\n ...state,\n entities: [...state.entities, payload],\n }),\n [SUBMIT_RESOURCE_FAILURE]: (state, { payload }) => ({\n ...state,\n errors: payload,\n }),\n [SET_CURRENT_RESOURCE_ELEMENT]: (state, { payload }) => ({\n ...state,\n currentResourceElement: { ...state.currentResourceElement, ...payload },\n }),\n },\n initialState\n);\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport App from './AppContainer';\nimport './index.css';\n\nimport createHistory from 'history/createBrowserHistory';\n\nimport { Provider } from 'react-redux';\nimport { createStore, applyMiddleware, compose } from 'redux';\nimport { connectRouter, routerMiddleware } from 'connected-react-router';\n\nimport createSagaMiddleware from 'redux-saga';\n\nimport reducers from './ducks';\nimport sagas from './sagas';\n\nimport injectTapEventPlugin from 'react-tap-event-plugin';\nimport { createMuiTheme, MuiThemeProvider } from '@material-ui/core/styles/';\n\nconst muiTheme = createMuiTheme({\n palette: {\n primary: { main: '#31CACC', contrastText: '#fff' },\n },\n});\n\nexport const history = createHistory();\nconst sagaMiddleware = createSagaMiddleware();\n\nlet composeEnhancers = compose;\n\nif (process.env.NODE_ENV === 'development') {\n const composeWithDevToolsExtension =\n window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;\n if (typeof composeWithDevToolsExtension === 'function') {\n composeEnhancers = composeWithDevToolsExtension;\n }\n}\n\nconst store = createStore(\n connectRouter(history)(reducers),\n composeEnhancers(applyMiddleware(routerMiddleware(history), sagaMiddleware))\n);\n\nsagaMiddleware.run(sagas);\n\ninjectTapEventPlugin();\n\nReactDOM.render(\n \n \n \n \n ,\n document.getElementById('root')\n);\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport { Link } from 'react-router-dom';\nimport PropTypes from 'prop-types';\nimport { Icon, Grid, Button } from '@material-ui/core';\n\nimport { REL_PATH } from '../api';\nimport ResourceForm from '../components/ResourceForm';\nimport { fetchCurrentResourceRequest } from '../ducks/resource';\n\nconst propTypes = {\n metadata: PropTypes.shape({\n resources: PropTypes.object,\n client: PropTypes.object,\n schema: PropTypes.string,\n }),\n match: PropTypes.object,\n fetchResource: PropTypes.func.isRequired,\n};\n\nclass DetailPage extends React.Component {\n componentDidMount() {\n if (this.props.match.params.id !== 'new') {\n this.props.fetchResource({\n resourceName: this.props.match.params.resource,\n resourceId: this.props.match.params.id,\n });\n }\n }\n\n render() {\n const resourceName = this.props.match.params.resource;\n const resourceId = this.props.match.params.id;\n\n return (\n \n \n \n \n \n \n );\n }\n}\n\nDetailPage.propTypes = propTypes;\n\nconst mapStateToProps = state => ({\n metadata: state.metadata,\n});\n\nconst mapDispatchToProps = {\n fetchResource: fetchCurrentResourceRequest,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(DetailPage);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst propTypes = {};\nconst defaultProps = {};\n\nconst ErrorPage = props => 404 Not found
;\n\nErrorPage.propTypes = propTypes;\nErrorPage.defaultProps = defaultProps;\n\nexport default ErrorPage;\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport { Link } from 'react-router-dom';\nimport PropTypes from 'prop-types';\n\nimport {\n Typography,\n Grid,\n Paper,\n List,\n ListItem,\n ListItemText,\n} from '@material-ui/core';\n\nconst propTypes = {\n metadata: PropTypes.shape({\n resources: PropTypes.object,\n schema: PropTypes.string,\n client: PropTypes.object,\n }),\n};\n\nclass HomePage extends React.Component {\n render() {\n const { resources } = this.props.metadata;\n return (\n resources && (\n \n \n \n \n Resources\n \n \n {Object.entries(resources).map(resource => (\n (\n \n )}\n >\n \n \n ))}\n
\n \n \n \n )\n );\n }\n}\n\nHomePage.propTypes = propTypes;\n\nconst mapStateToProps = state => ({\n metadata: state.metadata,\n});\n\nexport default connect(mapStateToProps)(HomePage);\n","import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { findKey } from 'lodash';\nimport {\n Paper,\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableRow,\n TableFooter,\n TablePagination,\n Button,\n Typography,\n Icon,\n CircularProgress,\n Grid,\n} from '@material-ui/core';\nimport { Link } from 'react-router-dom';\n\nimport { REL_PATH } from '../api';\nimport TablePaginationActions from '../components/TablePaginationActions';\nimport { fetchResourceEntitiesRequest } from '../ducks/resource';\n\nconst propTypes = {\n match: PropTypes.object,\n fetchResources: PropTypes.func,\n schema: PropTypes.PropTypes.object,\n resources: PropTypes.arrayOf(PropTypes.object),\n rowsPerPage: PropTypes.number,\n currentPage: PropTypes.number,\n};\n\nconst DEFAULT_PAGE_SIZE = 10;\n\nclass ListPage extends React.Component {\n constructor() {\n super();\n this.handleChangePage = this.handleChangePage.bind(this);\n }\n componentDidMount() {\n this.props.fetchResources({\n resourceName: this.props.match.params.resource,\n query: {\n page_size: DEFAULT_PAGE_SIZE,\n page: 1,\n },\n });\n }\n\n handleChangePage(evt, page) {\n // Mui has some weird default pagination behaviour on cDU\n if (evt) {\n this.props.fetchResources({\n resourceName: this.props.match.params.resource,\n query: {\n page: page + 1, // TablePagination starts at 0;\n page_size: DEFAULT_PAGE_SIZE,\n },\n });\n }\n }\n\n render() {\n const { resource } = this.props.match.params;\n const resourceSchema =\n this.props.schema &&\n this.props.schema.spec.paths[`/${resource}/`].post.requestBody.content[\n 'application/json'\n ].schema;\n return (\n resourceSchema && (\n \n \n \n \n {findKey(\n this.props.resourceList,\n resource => resource === resource\n )}\n \n\n \n {this.props.resources ? (\n \n \n
\n \n \n Edit\n {Object.values(resourceSchema.properties).map(\n field => (\n \n {field.description}\n \n )\n )}\n \n \n \n {this.props.resources.map(item => (\n \n \n \n edit\n \n \n {Object.values(resourceSchema.properties).map(\n field => (\n \n {item[field.title]}\n \n )\n )}\n \n ))}\n \n \n \n \n
\n
\n \n \n ) : (\n \n \n
\n )}\n \n \n \n )\n );\n }\n}\n\nListPage.propTypes = propTypes;\n\nconst mapStateToProps = state => ({\n rowsPerPage: state.resource.rowsPerPage,\n currentPage: state.resource.currentPage,\n totalCount: state.resource.totalCount,\n resources: state.resource.entities,\n schema: state.metadata.client,\n resourceList: state.metadata.resources,\n});\n\nconst mapDispatchToProps = {\n fetchResources: fetchResourceEntitiesRequest,\n};\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(ListPage);\n","import React, { Component } from 'react';\nimport { Route, Switch } from 'react-router-dom';\nimport { ConnectedRouter } from 'react-router-redux';\nimport Header from '../components/Header';\nimport HomePage from './HomePage';\nimport ListPage from './ListPage';\nimport DetailPage from './DetailPage';\nimport ErrorPage from './ErrorPage';\n\nimport { REL_PATH } from '../api';\n\nimport { history } from '../index.js';\nexport default class Routes extends Component {\n render() {\n return (\n \n \n \n \n \n \n \n \n \n \n
\n \n );\n }\n}\n","import { all } from 'redux-saga/effects';\n\nimport watchMetadata from './metadata';\nimport watchResource from './resource';\nexport default function* root() {\n yield all([watchMetadata(), watchResource()]);\n}\n","import { call, put, takeLatest } from 'redux-saga/effects';\n\nimport {\n FETCH_METADATA_REQUEST,\n fetchMetadataSuccess,\n} from '../ducks/metadata';\nimport Api from '../api';\n\nfunction* fetchMetadata() {\n try {\n const metadata = yield call(Api.fetchMetadata);\n const client = yield call(Api.fetchSwaggerSchema, metadata.schema);\n yield put(\n fetchMetadataSuccess({\n ...metadata,\n client,\n })\n );\n } catch (error) {\n throw Error(error);\n }\n}\n\nexport default function* watchMetadata() {\n yield takeLatest(FETCH_METADATA_REQUEST, fetchMetadata);\n}\n","import { call, put, select, takeLatest } from 'redux-saga/effects';\nimport { selectClient } from '../selectors/schema';\nimport { push } from 'react-router-redux';\n\nimport { REL_PATH } from '../api';\nimport {\n FETCH_RESOURCE_ENTITIES_REQUEST,\n FETCH_CURRENT_RESOURCE_REQUEST,\n SUBMIT_RESOURCE_REQUEST,\n UPDATE_RESOURCE_ELEMENT_REQUEST,\n DELETE_RESOURCE_ELEMENT_REQUEST,\n fetchResourceEntitiesSuccess,\n fetchCurrentResourceSuccess,\n submitResourceSuccess,\n updateResourceElementSuccess,\n submitResourceFailure,\n} from '../ducks/resource';\nimport Api from '../api';\n\nfunction* fetchResource({ payload }) {\n try {\n let client = yield select(selectClient);\n if (!client) {\n const metadata = yield call(Api.fetchMetadata);\n const { schema } = metadata;\n client = yield call(Api.fetchSwaggerSchema, schema);\n }\n const resources = yield call(Api.fetchResource, payload, client);\n yield put(fetchResourceEntitiesSuccess({ resources }));\n } catch (error) {\n yield put(push('/not-found'));\n }\n}\n\nfunction* submitResource({ payload }) {\n try {\n const client = yield select(selectClient);\n const response = yield call(Api.submitResource, payload, client);\n yield put(submitResourceSuccess(response));\n yield put(push(`${REL_PATH}${payload.resourceName}/`));\n } catch (error) {\n const errors = JSON.parse(error.message);\n yield put(submitResourceFailure(errors));\n }\n}\n\nfunction* updateResourceElement({ payload }) {\n try {\n const client = yield select(selectClient);\n const response = yield call(Api.updateResourceElement, payload, client);\n yield put(updateResourceElementSuccess(response));\n yield put(push(`${REL_PATH}${payload.resourceName}/`));\n } catch (error) {}\n}\n\nfunction* fetchResourceElement({ payload }) {\n try {\n let client = yield select(selectClient);\n if (!client) {\n const metadata = yield call(Api.fetchMetadata);\n const { schema } = metadata;\n client = yield call(Api.fetchSwaggerSchema, schema);\n }\n const resource = yield call(Api.fetchResourceElement, payload, client);\n yield put(fetchCurrentResourceSuccess(resource));\n } catch (error) {\n yield put(push('/not-found'));\n }\n}\n\nfunction* deleteResourceElement({ payload }) {\n try {\n let client = yield select(selectClient);\n if (!client) {\n const metadata = yield call(Api.fetchMetadata);\n const { schema } = metadata;\n client = yield call(Api.fetchSwaggerSchema, schema);\n }\n yield call(Api.deleteResourceElement, payload, client);\n yield put(push(`${REL_PATH}${payload.resourceName}/`));\n } catch (error) {}\n}\n\nexport default function* watchResource() {\n yield takeLatest(FETCH_RESOURCE_ENTITIES_REQUEST, fetchResource);\n yield takeLatest(SUBMIT_RESOURCE_REQUEST, submitResource);\n yield takeLatest(FETCH_CURRENT_RESOURCE_REQUEST, fetchResourceElement);\n yield takeLatest(UPDATE_RESOURCE_ELEMENT_REQUEST, updateResourceElement);\n yield takeLatest(DELETE_RESOURCE_ELEMENT_REQUEST, deleteResourceElement);\n}\n","export const selectSchemaUrl = state => state.metadata.schema;\nexport const selectClient = state => state.metadata.client;\n"],"sourceRoot":""}PK ! _ _ apistar_crud/static/index.js.map{"version":3,"sources":["webpack:///./admin/App.js","webpack:///./admin/AppContainer.js","webpack:///./admin/api.js","webpack:///./admin/components/Header/Header.js","webpack:///./admin/components/Header/index.js","webpack:///./admin/components/ResourceForm/ResourceForm.jsx","webpack:///./admin/components/ResourceForm/index.js","webpack:///./admin/components/TablePaginationActions/TablePaginationActions.jsx","webpack:///./admin/components/TablePaginationActions/index.jsx","webpack:///./admin/ducks/index.js","webpack:///./admin/ducks/metadata.js","webpack:///./admin/ducks/resource.js","webpack:///./admin/index.js","webpack:///./admin/routes/DetailPage.jsx","webpack:///./admin/routes/ErrorPage.jsx","webpack:///./admin/routes/HomePage.js","webpack:///./admin/routes/ListPage.jsx","webpack:///./admin/routes/index.js","webpack:///./admin/sagas/index.js","webpack:///./admin/sagas/metadata.js","webpack:///./admin/sagas/resource.js","webpack:///./admin/selectors/schema.js"],"names":["propTypes","fetchMetadata","func","isRequired","App","props","mapStatetoProps","mapDispatchToProps","REL_PATH","urls","host","metadata","Api","get","then","response","body","catch","Error","error","message","payload","client","resourceName","query","apis","list","resource","id","resourceId","retrieve","element_id","schemaUrl","create","requestBody","resourceData","update","delete","Header","Component","mapStateToProps","state","schema","object","setCurrentResourceElement","updateResourceElement","submitResource","deleteResourceElement","string","currentResourceElement","defaultProps","typeMaps","integer","float","datetime","ResourceForm","handleInputChange","bind","handleSubmit","handleDialogClose","handleDialogOpen","handleDeleteConfirmClick","data","isDialogOpen","evt","target","name","value","preventDefault","setState","errors","resourceSchema","spec","paths","post","content","requiredFields","required","properties","map","field","title","type","minimum","maximum","description","includes","resources","entities","onChangePage","rowsPerPage","number","count","page","TablePaginationActions","handleBackButtonClick","handleFirstPageButtonClick","handleNextButtonClick","handleLastPageButtonClick","event","Math","max","ceil","FETCH_METADATA_REQUEST","FETCH_METADATA_SUCCESS","FETCH_METADATA_FAILURE","fetchMetadataRequest","fetchMetadataSuccess","fetchMetadataFailure","initialState","FETCH_RESOURCE_ENTITIES_REQUEST","FETCH_RESOURCE_ENTITIES_SUCCESS","FETCH_RESOURCE_ENTITIES_FAILURE","FETCH_CURRENT_RESOURCE_REQUEST","FETCH_CURRENT_RESOURCE_SUCCESS","FETCH_CURRENT_RESOURCE_FAILURE","SUBMIT_RESOURCE_REQUEST","SUBMIT_RESOURCE_SUCCESS","SUBMIT_RESOURCE_FAILURE","UPDATE_RESOURCE_ELEMENT_REQUEST","UPDATE_RESOURCE_ELEMENT_SUCCESS","UPDATE_RESOURCE_ELEMENT_FAILURE","SET_CURRENT_RESOURCE_ELEMENT","DELETE_RESOURCE_ELEMENT_REQUEST","fetchResourceEntitiesRequest","fetchResourceEntitiesSuccess","fetchCurrentResourceRequest","fetchCurrentResourceSuccess","submitResourceRequest","submitResourceSuccess","submitResourceFailure","updateResourceElementRequest","updateResourceElementSuccess","updateResourceElementFailure","deleteResourceElementRequest","totalCount","currentPage","meta","page_size","muiTheme","palette","primary","main","contrastText","history","sagaMiddleware","composeEnhancers","composeWithDevToolsExtension","window","__REDUX_DEVTOOLS_EXTENSION_COMPOSE__","store","run","render","document","getElementById","shape","match","fetchResource","DetailPage","params","ErrorPage","HomePage","fetchResources","PropTypes","arrayOf","DEFAULT_PAGE_SIZE","ListPage","handleChangePage","resourceList","item","handleChangeRowsPerPage","Routes","root","watchMetadata","fetchSwaggerSchema","watchResource","fetchResourceElement","JSON","parse","selectSchemaUrl","selectClient"],"mappings":"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","file":"index.js","sourcesContent":["import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport Routes from './routes';\n\nimport './App.css';\n\nconst propTypes = {\n fetchMetadata: PropTypes.func.isRequired,\n};\n\nclass App extends Component {\n componentDidMount() {\n this.props.fetchMetadata();\n }\n render() {\n return (\n \n \n
\n );\n }\n}\n\nApp.propTypes = propTypes;\n\nexport default App;\n","import { connect } from 'react-redux';\n\nimport AppComponent from './App';\n\nimport { fetchMetadataRequest } from './ducks/metadata';\n\nconst mapStatetoProps = state => {\n return {};\n};\n\nconst mapDispatchToProps = {\n fetchMetadata: fetchMetadataRequest,\n};\n\nexport default connect(\n mapStatetoProps,\n mapDispatchToProps\n)(AppComponent);\n","import request from 'superagent';\nimport Swagger from 'swagger-client';\n\nexport const REL_PATH = '/admin/';\n\nconst urls = {\n host: 'http://localhost:8000',\n metadata: '/admin/metadata/',\n};\n\nexport default class Api {\n static fetchMetadata() {\n return request\n .get(urls.host + urls.metadata)\n .then(response => response.body)\n .catch(error => {\n throw Error(error.message);\n });\n }\n\n static fetchResource(payload, client) {\n const { resourceName, query } = payload;\n return client.apis[resourceName]\n .list(query)\n .then(response => response.body)\n .catch(error => {\n throw Error(error.message);\n });\n }\n\n static fetchResourceElement(payload, client) {\n const resource = payload.resourceName;\n const id = payload.resourceId;\n return client.apis[resource]\n .retrieve({ element_id: id })\n .then(response => response.body)\n .catch(error => {\n throw Error(error.message);\n });\n }\n\n static fetchSwaggerSchema(schemaUrl) {\n return Swagger(urls.host + schemaUrl).then(client => client);\n }\n\n static submitResource(payload, client) {\n return client.apis[payload.resourceName]\n .create({}, { requestBody: payload.resourceData })\n .then(response => response.body)\n .catch(error => {\n throw Error(JSON.stringify(error.response.body));\n });\n }\n\n static updateResourceElement(payload, client) {\n const { resourceName, resourceId, resourceData } = payload;\n return client.apis[resourceName]\n .update({ element_id: resourceId }, { requestBody: resourceData })\n .then(response => response.body);\n }\n\n static deleteResourceElement(payload, client) {\n const { resourceName, resourceId } = payload;\n return client.apis[resourceName]\n .delete({ element_id: resourceId })\n .then(response => response.body)\n .catch(error => {\n throw Error(error.message);\n });\n }\n}\n","import React from 'react';\n\nimport { Toolbar, AppBar, Typography } from '@material-ui/core';\nimport { Link } from 'react-router-dom';\nimport { connect } from 'react-redux';\nimport { withTheme } from '@material-ui/core/styles';\nimport { REL_PATH } from '../../api';\n\nclass Header extends React.Component {\n render() {\n return (\n \n \n \n \n APISTAR\n \n \n \n \n );\n }\n}\n\nconst mapStateToProps = state => ({\n metadata: state.metadata,\n});\n\nexport default withTheme()(connect(mapStateToProps)(Header));\n","import Header from './Header';\n\nexport default Header;\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport {\n Grid,\n TextField,\n Button,\n CircularProgress,\n Dialog,\n DialogTitle,\n DialogContent,\n DialogContentText,\n DialogActions,\n} from '@material-ui/core';\n\nimport {\n submitResourceRequest,\n setCurrentResourceElement,\n updateResourceElementRequest,\n deleteResourceElementRequest,\n} from '../../ducks/resource';\n\nconst propTypes = {\n schema: PropTypes.object,\n setCurrentResourceElement: PropTypes.func,\n updateResourceElement: PropTypes.func,\n submitResource: PropTypes.func,\n deleteResourceElement: PropTypes.func,\n resourceId: PropTypes.string,\n resourceName: PropTypes.string,\n currentResourceElement: PropTypes.object,\n};\nconst defaultProps = {};\n\nconst typeMaps = {\n string: 'text',\n integer: 'number',\n float: 'number', // TODO: fix\n datetime: 'datetime', // TODO: fix\n};\n\nclass ResourceForm extends React.Component {\n constructor() {\n super();\n this.handleInputChange = this.handleInputChange.bind(this);\n this.handleSubmit = this.handleSubmit.bind(this);\n this.handleDialogClose = this.handleDialogClose.bind(this);\n this.handleDialogOpen = this.handleDialogOpen.bind(this);\n this.handleDeleteConfirmClick = this.handleDeleteConfirmClick.bind(this);\n this.state = { data: null, isDialogOpen: false };\n }\n\n handleInputChange(evt) {\n const { name, value } = evt.target;\n this.props.setCurrentResourceElement({ [name]: value });\n }\n\n handleSubmit(evt) {\n evt.preventDefault();\n if (this.props.resourceId !== 'new') {\n this.props.updateResourceElement({\n resourceName: this.props.resourceName,\n resourceData: this.props.currentResourceElement,\n resourceId: this.props.resourceId,\n });\n } else {\n this.props.submitResource({\n resourceName: this.props.resourceName,\n resourceData: this.props.currentResourceElement,\n });\n }\n }\n\n handleDialogClose() {\n this.setState({ isDialogOpen: false });\n }\n\n handleDialogOpen() {\n this.setState({ isDialogOpen: true });\n }\n\n handleDeleteConfirmClick() {\n this.props.deleteResourceElement({\n resourceName: this.props.resourceName,\n resourceId: this.props.resourceId,\n });\n }\n\n render() {\n const data = this.props.currentResourceElement;\n const errors = this.props.errors;\n const resourceSchema =\n this.props.schema &&\n this.props.schema.spec.paths[`/${this.props.resourceName}/`].post\n .requestBody.content['application/json'].schema;\n const requiredFields = resourceSchema && resourceSchema.required;\n return resourceSchema ? (\n \n ) : (\n \n \n
\n );\n }\n}\n\nResourceForm.propTypes = propTypes;\nResourceForm.defaultProps = defaultProps;\n\nconst mapStateToProps = state => ({\n resources: state.resource.entities,\n schema: state.metadata.client,\n currentResourceElement: state.resource.currentResourceElement,\n errors: state.resource.errors,\n});\n\nconst mapDispatchToProps = {\n submitResource: submitResourceRequest,\n setCurrentResourceElement,\n updateResourceElement: updateResourceElementRequest,\n deleteResourceElement: deleteResourceElementRequest,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(ResourceForm);\n","import ResourceForm from './ResourceForm';\n\nexport default ResourceForm;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { IconButton } from '@material-ui/core';\nimport { KeyboardArrowLeft, KeyboardArrowRight } from '@material-ui/icons/';\n\nimport FirstPageIcon from '@material-ui/icons/FirstPage';\nimport LastPageIcon from '@material-ui/icons/LastPage';\n\nconst propTypes = {\n onChangePage: PropTypes.func,\n rowsPerPage: PropTypes.number,\n count: PropTypes.number,\n page: PropTypes.number,\n};\n\nclass TablePaginationActions extends React.Component {\n constructor() {\n super();\n this.handleBackButtonClick = this.handleBackButtonClick.bind(this);\n this.handleFirstPageButtonClick = this.handleFirstPageButtonClick.bind(\n this\n );\n this.handleNextButtonClick = this.handleNextButtonClick.bind(this);\n this.handleLastPageButtonClick = this.handleLastPageButtonClick.bind(this);\n }\n handleFirstPageButtonClick(event) {\n this.props.onChangePage(event, 0);\n }\n\n handleBackButtonClick(event) {\n this.props.onChangePage(event, this.props.page - 1);\n }\n\n handleNextButtonClick(event) {\n this.props.onChangePage(event, this.props.page + 1);\n }\n\n handleLastPageButtonClick(event) {\n this.props.onChangePage(\n event,\n Math.max(0, Math.ceil(this.props.count / this.props.rowsPerPage) - 1)\n );\n }\n\n render() {\n const { count, page, rowsPerPage } = this.props;\n return (\n \n \n \n \n \n \n \n = Math.ceil(count / rowsPerPage) - 1}\n aria-label=\"Next Page\"\n >\n \n \n = Math.ceil(count / rowsPerPage) - 1}\n aria-label=\"Last Page\"\n >\n \n \n
\n );\n }\n}\n\nTablePaginationActions.propTypes = propTypes;\n\nexport default TablePaginationActions;\n","import TablePaginationActions from './TablePaginationActions';\n\nexport default TablePaginationActions;\n","import { combineReducers } from 'redux';\n\nimport metadata from './metadata';\nimport resource from './resource';\n\nexport default combineReducers({\n metadata,\n resource,\n});\n","import { createAction, handleActions } from 'redux-actions';\n\nexport const FETCH_METADATA_REQUEST = 'metadata/fetch/REQUEST';\nexport const FETCH_METADATA_SUCCESS = 'metadata/fetch/SUCCESS';\nexport const FETCH_METADATA_FAILURE = 'metadata/fetch/FAILURE';\n\nexport const fetchMetadataRequest = createAction(FETCH_METADATA_REQUEST);\nexport const fetchMetadataSuccess = createAction(FETCH_METADATA_SUCCESS);\nexport const fetchMetadataFailure = createAction(FETCH_METADATA_FAILURE);\n\nconst initialState = {\n resources: null,\n schema: null,\n client: null,\n};\n\nexport default handleActions(\n {\n [FETCH_METADATA_SUCCESS]: (state, { payload }) => ({\n ...state,\n resources: payload.resources,\n schema: payload.schema,\n client: payload.client,\n }),\n [FETCH_METADATA_FAILURE]: (state, { payload }) => ({\n ...state,\n error: payload,\n }),\n },\n initialState\n);\n","import { createAction, handleActions } from 'redux-actions';\n\nexport const FETCH_RESOURCE_ENTITIES_REQUEST =\n 'resource/entities/fetch/REQUEST';\nexport const FETCH_RESOURCE_ENTITIES_SUCCESS =\n 'resource/entities/fetch/SUCCESS';\nexport const FETCH_RESOURCE_ENTITIES_FAILURE =\n 'resource/entities/fetch/FAILURE';\n\nexport const FETCH_CURRENT_RESOURCE_REQUEST =\n 'resource/current-resource/REQUEST';\nexport const FETCH_CURRENT_RESOURCE_SUCCESS =\n 'resource/current-resource/SUCCESS';\nexport const FETCH_CURRENT_RESOURCE_FAILURE =\n 'resource/current-resource/FAILURE';\n\nexport const SUBMIT_RESOURCE_REQUEST = 'resource/submit/REQUEST';\nexport const SUBMIT_RESOURCE_SUCCESS = 'resource/submit/SUCCESS';\nexport const SUBMIT_RESOURCE_FAILURE = 'resource/submit/FAILURE';\n\nexport const UPDATE_RESOURCE_ELEMENT_REQUEST = 'resource/update/REQUEST';\nexport const UPDATE_RESOURCE_ELEMENT_SUCCESS = 'resource/update/SUCCESS';\nexport const UPDATE_RESOURCE_ELEMENT_FAILURE = 'resource/update/FAILURE';\n\nexport const SET_CURRENT_RESOURCE_ELEMENT = 'resource/current-resource/SET';\n\nexport const DELETE_RESOURCE_ELEMENT_REQUEST = 'resource/delete/REQUEST';\n\nexport const fetchResourceEntitiesRequest = createAction(\n FETCH_RESOURCE_ENTITIES_REQUEST\n);\nexport const fetchResourceEntitiesSuccess = createAction(\n FETCH_RESOURCE_ENTITIES_SUCCESS\n);\nexport const fetchCurrentResourceRequest = createAction(\n FETCH_CURRENT_RESOURCE_REQUEST\n);\nexport const fetchCurrentResourceSuccess = createAction(\n FETCH_CURRENT_RESOURCE_SUCCESS\n);\n\nexport const submitResourceRequest = createAction(SUBMIT_RESOURCE_REQUEST);\nexport const submitResourceSuccess = createAction(SUBMIT_RESOURCE_SUCCESS);\nexport const submitResourceFailure = createAction(SUBMIT_RESOURCE_FAILURE);\nexport const updateResourceElementRequest = createAction(\n UPDATE_RESOURCE_ELEMENT_REQUEST\n);\nexport const updateResourceElementSuccess = createAction(\n UPDATE_RESOURCE_ELEMENT_SUCCESS\n);\nexport const updateResourceElementFailure = createAction(\n UPDATE_RESOURCE_ELEMENT_FAILURE\n);\nexport const setCurrentResourceElement = createAction(\n SET_CURRENT_RESOURCE_ELEMENT\n);\n\nexport const deleteResourceElementRequest = createAction(\n DELETE_RESOURCE_ELEMENT_REQUEST\n);\n\nconst initialState = {\n entities: null,\n currentResourceElement: null,\n rowsPerPage: null,\n totalCount: null,\n currentPage: null,\n errors: null,\n};\n\nexport default handleActions(\n {\n [FETCH_RESOURCE_ENTITIES_SUCCESS]: (state, { payload }) => ({\n ...state,\n entities: payload.resources.data,\n currentResourceElement: null,\n rowsPerPage: payload.resources.meta.page_size,\n currentPage: payload.resources.meta.page,\n totalCount: payload.resources.meta.count,\n }),\n [FETCH_CURRENT_RESOURCE_SUCCESS]: (state, { payload }) => ({\n ...state,\n currentResourceElement: payload,\n }),\n [SUBMIT_RESOURCE_SUCCESS]: (state, { payload }) => ({\n ...state,\n entities: [...state.entities, payload],\n }),\n [SUBMIT_RESOURCE_FAILURE]: (state, { payload }) => ({\n ...state,\n errors: payload,\n }),\n [SET_CURRENT_RESOURCE_ELEMENT]: (state, { payload }) => ({\n ...state,\n currentResourceElement: { ...state.currentResourceElement, ...payload },\n }),\n },\n initialState\n);\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport App from './AppContainer';\nimport './index.css';\n\nimport createHistory from 'history/createBrowserHistory';\n\nimport { Provider } from 'react-redux';\nimport { createStore, applyMiddleware, compose } from 'redux';\nimport { connectRouter, routerMiddleware } from 'connected-react-router';\n\nimport createSagaMiddleware from 'redux-saga';\n\nimport reducers from './ducks';\nimport sagas from './sagas';\n\nimport injectTapEventPlugin from 'react-tap-event-plugin';\nimport { createMuiTheme, MuiThemeProvider } from '@material-ui/core/styles/';\n\nconst muiTheme = createMuiTheme({\n palette: {\n primary: { main: '#31CACC', contrastText: '#fff' },\n },\n});\n\nexport const history = createHistory();\nconst sagaMiddleware = createSagaMiddleware();\n\nlet composeEnhancers = compose;\n\nif (process.env.NODE_ENV === 'development') {\n const composeWithDevToolsExtension =\n window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;\n if (typeof composeWithDevToolsExtension === 'function') {\n composeEnhancers = composeWithDevToolsExtension;\n }\n}\n\nconst store = createStore(\n connectRouter(history)(reducers),\n composeEnhancers(applyMiddleware(routerMiddleware(history), sagaMiddleware))\n);\n\nsagaMiddleware.run(sagas);\n\ninjectTapEventPlugin();\n\nReactDOM.render(\n \n \n \n \n ,\n document.getElementById('root')\n);\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport { Link } from 'react-router-dom';\nimport PropTypes from 'prop-types';\nimport { Icon, Grid, Button } from '@material-ui/core';\n\nimport { REL_PATH } from '../api';\nimport ResourceForm from '../components/ResourceForm';\nimport { fetchCurrentResourceRequest } from '../ducks/resource';\n\nconst propTypes = {\n metadata: PropTypes.shape({\n resources: PropTypes.object,\n client: PropTypes.object,\n schema: PropTypes.string,\n }),\n match: PropTypes.object,\n fetchResource: PropTypes.func.isRequired,\n};\n\nclass DetailPage extends React.Component {\n componentDidMount() {\n if (this.props.match.params.id !== 'new') {\n this.props.fetchResource({\n resourceName: this.props.match.params.resource,\n resourceId: this.props.match.params.id,\n });\n }\n }\n\n render() {\n const resourceName = this.props.match.params.resource;\n const resourceId = this.props.match.params.id;\n\n return (\n \n \n \n \n \n \n );\n }\n}\n\nDetailPage.propTypes = propTypes;\n\nconst mapStateToProps = state => ({\n metadata: state.metadata,\n});\n\nconst mapDispatchToProps = {\n fetchResource: fetchCurrentResourceRequest,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(DetailPage);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst propTypes = {};\nconst defaultProps = {};\n\nconst ErrorPage = props => 404 Not found
;\n\nErrorPage.propTypes = propTypes;\nErrorPage.defaultProps = defaultProps;\n\nexport default ErrorPage;\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport { Link } from 'react-router-dom';\nimport PropTypes from 'prop-types';\n\nimport {\n Typography,\n Grid,\n Paper,\n List,\n ListItem,\n ListItemText,\n} from '@material-ui/core';\n\nconst propTypes = {\n metadata: PropTypes.shape({\n resources: PropTypes.object,\n schema: PropTypes.string,\n client: PropTypes.object,\n }),\n};\n\nclass HomePage extends React.Component {\n render() {\n const { resources } = this.props.metadata;\n return (\n resources && (\n \n \n \n \n Resources\n \n \n {Object.entries(resources).map(resource => (\n (\n \n )}\n >\n \n \n ))}\n
\n \n \n \n )\n );\n }\n}\n\nHomePage.propTypes = propTypes;\n\nconst mapStateToProps = state => ({\n metadata: state.metadata,\n});\n\nexport default connect(mapStateToProps)(HomePage);\n","import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { findKey } from 'lodash';\nimport {\n Paper,\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableRow,\n TableFooter,\n TablePagination,\n Button,\n Typography,\n Icon,\n CircularProgress,\n Grid,\n} from '@material-ui/core';\nimport { Link } from 'react-router-dom';\n\nimport { REL_PATH } from '../api';\nimport TablePaginationActions from '../components/TablePaginationActions';\nimport { fetchResourceEntitiesRequest } from '../ducks/resource';\n\nconst propTypes = {\n match: PropTypes.object,\n fetchResources: PropTypes.func,\n schema: PropTypes.PropTypes.object,\n resources: PropTypes.arrayOf(PropTypes.object),\n rowsPerPage: PropTypes.number,\n currentPage: PropTypes.number,\n};\n\nconst DEFAULT_PAGE_SIZE = 10;\n\nclass ListPage extends React.Component {\n constructor() {\n super();\n this.handleChangePage = this.handleChangePage.bind(this);\n }\n componentDidMount() {\n this.props.fetchResources({\n resourceName: this.props.match.params.resource,\n query: {\n page_size: DEFAULT_PAGE_SIZE,\n page: 1,\n },\n });\n }\n\n handleChangePage(evt, page) {\n // Mui has some weird default pagination behaviour on cDU\n if (evt) {\n this.props.fetchResources({\n resourceName: this.props.match.params.resource,\n query: {\n page: page + 1, // TablePagination starts at 0;\n page_size: DEFAULT_PAGE_SIZE,\n },\n });\n }\n }\n\n render() {\n const { resource } = this.props.match.params;\n const resourceSchema =\n this.props.schema &&\n this.props.schema.spec.paths[`/${resource}/`].post.requestBody.content[\n 'application/json'\n ].schema;\n return (\n resourceSchema && (\n \n \n \n \n {findKey(\n this.props.resourceList,\n resource => resource === resource\n )}\n \n\n \n {this.props.resources ? (\n \n \n
\n \n \n Edit\n {Object.values(resourceSchema.properties).map(\n field => (\n \n {field.description}\n \n )\n )}\n \n \n \n {this.props.resources.map(item => (\n \n \n \n edit\n \n \n {Object.values(resourceSchema.properties).map(\n field => (\n \n {item[field.title]}\n \n )\n )}\n \n ))}\n \n \n \n \n
\n
\n \n \n ) : (\n \n \n
\n )}\n \n \n \n )\n );\n }\n}\n\nListPage.propTypes = propTypes;\n\nconst mapStateToProps = state => ({\n rowsPerPage: state.resource.rowsPerPage,\n currentPage: state.resource.currentPage,\n totalCount: state.resource.totalCount,\n resources: state.resource.entities,\n schema: state.metadata.client,\n resourceList: state.metadata.resources,\n});\n\nconst mapDispatchToProps = {\n fetchResources: fetchResourceEntitiesRequest,\n};\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(ListPage);\n","import React, { Component } from 'react';\nimport { Route, Switch } from 'react-router-dom';\nimport { ConnectedRouter } from 'react-router-redux';\nimport Header from '../components/Header';\nimport HomePage from './HomePage';\nimport ListPage from './ListPage';\nimport DetailPage from './DetailPage';\nimport ErrorPage from './ErrorPage';\n\nimport { REL_PATH } from '../api';\n\nimport { history } from '../index.js';\nexport default class Routes extends Component {\n render() {\n return (\n \n \n \n \n \n \n \n \n \n \n
\n \n );\n }\n}\n","import { all } from 'redux-saga/effects';\n\nimport watchMetadata from './metadata';\nimport watchResource from './resource';\nexport default function* root() {\n yield all([watchMetadata(), watchResource()]);\n}\n","import { call, put, takeLatest } from 'redux-saga/effects';\n\nimport {\n FETCH_METADATA_REQUEST,\n fetchMetadataSuccess,\n} from '../ducks/metadata';\nimport Api from '../api';\n\nfunction* fetchMetadata() {\n try {\n const metadata = yield call(Api.fetchMetadata);\n const client = yield call(Api.fetchSwaggerSchema, metadata.schema);\n yield put(\n fetchMetadataSuccess({\n ...metadata,\n client,\n })\n );\n } catch (error) {\n throw Error(error);\n }\n}\n\nexport default function* watchMetadata() {\n yield takeLatest(FETCH_METADATA_REQUEST, fetchMetadata);\n}\n","import { call, put, select, takeLatest } from 'redux-saga/effects';\nimport { selectClient } from '../selectors/schema';\nimport { push } from 'react-router-redux';\n\nimport { REL_PATH } from '../api';\nimport {\n FETCH_RESOURCE_ENTITIES_REQUEST,\n FETCH_CURRENT_RESOURCE_REQUEST,\n SUBMIT_RESOURCE_REQUEST,\n UPDATE_RESOURCE_ELEMENT_REQUEST,\n DELETE_RESOURCE_ELEMENT_REQUEST,\n fetchResourceEntitiesSuccess,\n fetchCurrentResourceSuccess,\n submitResourceSuccess,\n updateResourceElementSuccess,\n submitResourceFailure,\n} from '../ducks/resource';\nimport Api from '../api';\n\nfunction* fetchResource({ payload }) {\n try {\n let client = yield select(selectClient);\n if (!client) {\n const metadata = yield call(Api.fetchMetadata);\n const { schema } = metadata;\n client = yield call(Api.fetchSwaggerSchema, schema);\n }\n const resources = yield call(Api.fetchResource, payload, client);\n yield put(fetchResourceEntitiesSuccess({ resources }));\n } catch (error) {\n yield put(push('/not-found'));\n }\n}\n\nfunction* submitResource({ payload }) {\n try {\n const client = yield select(selectClient);\n const response = yield call(Api.submitResource, payload, client);\n yield put(submitResourceSuccess(response));\n yield put(push(`${REL_PATH}${payload.resourceName}/`));\n } catch (error) {\n const errors = JSON.parse(error.message);\n yield put(submitResourceFailure(errors));\n }\n}\n\nfunction* updateResourceElement({ payload }) {\n try {\n const client = yield select(selectClient);\n const response = yield call(Api.updateResourceElement, payload, client);\n yield put(updateResourceElementSuccess(response));\n yield put(push(`${REL_PATH}${payload.resourceName}/`));\n } catch (error) {}\n}\n\nfunction* fetchResourceElement({ payload }) {\n try {\n let client = yield select(selectClient);\n if (!client) {\n const metadata = yield call(Api.fetchMetadata);\n const { schema } = metadata;\n client = yield call(Api.fetchSwaggerSchema, schema);\n }\n const resource = yield call(Api.fetchResourceElement, payload, client);\n yield put(fetchCurrentResourceSuccess(resource));\n } catch (error) {\n yield put(push('/not-found'));\n }\n}\n\nfunction* deleteResourceElement({ payload }) {\n try {\n let client = yield select(selectClient);\n if (!client) {\n const metadata = yield call(Api.fetchMetadata);\n const { schema } = metadata;\n client = yield call(Api.fetchSwaggerSchema, schema);\n }\n yield call(Api.deleteResourceElement, payload, client);\n yield put(push(`${REL_PATH}${payload.resourceName}/`));\n } catch (error) {}\n}\n\nexport default function* watchResource() {\n yield takeLatest(FETCH_RESOURCE_ENTITIES_REQUEST, fetchResource);\n yield takeLatest(SUBMIT_RESOURCE_REQUEST, submitResource);\n yield takeLatest(FETCH_CURRENT_RESOURCE_REQUEST, fetchResourceElement);\n yield takeLatest(UPDATE_RESOURCE_ELEMENT_REQUEST, updateResourceElement);\n yield takeLatest(DELETE_RESOURCE_ELEMENT_REQUEST, deleteResourceElement);\n}\n","export const selectSchemaUrl = state => state.metadata.schema;\nexport const selectClient = state => state.metadata.client;\n"],"sourceRoot":""}PK ! ^דp p $ apistar_crud/static/runtime~index.js/******/ (function(modules) { // webpackBootstrap
/******/ // install a JSONP callback for chunk loading
/******/ function webpackJsonpCallback(data) {
/******/ var chunkIds = data[0];
/******/ var moreModules = data[1];
/******/ var executeModules = data[2];
/******/
/******/ // add "moreModules" to the modules object,
/******/ // then flag all "chunkIds" as loaded and fire callback
/******/ var moduleId, chunkId, i = 0, resolves = [];
/******/ for(;i < chunkIds.length; i++) {
/******/ chunkId = chunkIds[i];
/******/ if(installedChunks[chunkId]) {
/******/ resolves.push(installedChunks[chunkId][0]);
/******/ }
/******/ installedChunks[chunkId] = 0;
/******/ }
/******/ for(moduleId in moreModules) {
/******/ if(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {
/******/ modules[moduleId] = moreModules[moduleId];
/******/ }
/******/ }
/******/ if(parentJsonpFunction) parentJsonpFunction(data);
/******/
/******/ while(resolves.length) {
/******/ resolves.shift()();
/******/ }
/******/
/******/ // add entry modules from loaded chunk to deferred list
/******/ deferredModules.push.apply(deferredModules, executeModules || []);
/******/
/******/ // run deferred modules when all chunks ready
/******/ return checkDeferredModules();
/******/ };
/******/ function checkDeferredModules() {
/******/ var result;
/******/ for(var i = 0; i < deferredModules.length; i++) {
/******/ var deferredModule = deferredModules[i];
/******/ var fulfilled = true;
/******/ for(var j = 1; j < deferredModule.length; j++) {
/******/ var depId = deferredModule[j];
/******/ if(installedChunks[depId] !== 0) fulfilled = false;
/******/ }
/******/ if(fulfilled) {
/******/ deferredModules.splice(i--, 1);
/******/ result = __webpack_require__(__webpack_require__.s = deferredModule[0]);
/******/ }
/******/ }
/******/ return result;
/******/ }
/******/
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // object to store loaded and loading chunks
/******/ // undefined = chunk not loaded, null = chunk preloaded/prefetched
/******/ // Promise = chunk loading, 0 = chunk loaded
/******/ var installedChunks = {
/******/ "runtime~index": 0
/******/ };
/******/
/******/ var deferredModules = [];
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "apistar_crud/static/";
/******/
/******/ var jsonpArray = window["webpackJsonp"] = window["webpackJsonp"] || [];
/******/ var oldJsonpFunction = jsonpArray.push.bind(jsonpArray);
/******/ jsonpArray.push = webpackJsonpCallback;
/******/ jsonpArray = jsonpArray.slice();
/******/ for(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);
/******/ var parentJsonpFunction = oldJsonpFunction;
/******/
/******/
/******/ // run deferred modules from other chunks
/******/ checkDeferredModules();
/******/ })
/************************************************************************/
/******/ ([]);
//# sourceMappingURL=runtime~index.js.mapPK ! ^דp p $ apistar_crud/static/runtime~index.js/******/ (function(modules) { // webpackBootstrap
/******/ // install a JSONP callback for chunk loading
/******/ function webpackJsonpCallback(data) {
/******/ var chunkIds = data[0];
/******/ var moreModules = data[1];
/******/ var executeModules = data[2];
/******/
/******/ // add "moreModules" to the modules object,
/******/ // then flag all "chunkIds" as loaded and fire callback
/******/ var moduleId, chunkId, i = 0, resolves = [];
/******/ for(;i < chunkIds.length; i++) {
/******/ chunkId = chunkIds[i];
/******/ if(installedChunks[chunkId]) {
/******/ resolves.push(installedChunks[chunkId][0]);
/******/ }
/******/ installedChunks[chunkId] = 0;
/******/ }
/******/ for(moduleId in moreModules) {
/******/ if(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {
/******/ modules[moduleId] = moreModules[moduleId];
/******/ }
/******/ }
/******/ if(parentJsonpFunction) parentJsonpFunction(data);
/******/
/******/ while(resolves.length) {
/******/ resolves.shift()();
/******/ }
/******/
/******/ // add entry modules from loaded chunk to deferred list
/******/ deferredModules.push.apply(deferredModules, executeModules || []);
/******/
/******/ // run deferred modules when all chunks ready
/******/ return checkDeferredModules();
/******/ };
/******/ function checkDeferredModules() {
/******/ var result;
/******/ for(var i = 0; i < deferredModules.length; i++) {
/******/ var deferredModule = deferredModules[i];
/******/ var fulfilled = true;
/******/ for(var j = 1; j < deferredModule.length; j++) {
/******/ var depId = deferredModule[j];
/******/ if(installedChunks[depId] !== 0) fulfilled = false;
/******/ }
/******/ if(fulfilled) {
/******/ deferredModules.splice(i--, 1);
/******/ result = __webpack_require__(__webpack_require__.s = deferredModule[0]);
/******/ }
/******/ }
/******/ return result;
/******/ }
/******/
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // object to store loaded and loading chunks
/******/ // undefined = chunk not loaded, null = chunk preloaded/prefetched
/******/ // Promise = chunk loading, 0 = chunk loaded
/******/ var installedChunks = {
/******/ "runtime~index": 0
/******/ };
/******/
/******/ var deferredModules = [];
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "apistar_crud/static/";
/******/
/******/ var jsonpArray = window["webpackJsonp"] = window["webpackJsonp"] || [];
/******/ var oldJsonpFunction = jsonpArray.push.bind(jsonpArray);
/******/ jsonpArray.push = webpackJsonpCallback;
/******/ jsonpArray = jsonpArray.slice();
/******/ for(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);
/******/ var parentJsonpFunction = oldJsonpFunction;
/******/
/******/
/******/ // run deferred modules from other chunks
/******/ checkDeferredModules();
/******/ })
/************************************************************************/
/******/ ([]);
//# sourceMappingURL=runtime~index.js.mapPK ! cf f ( apistar_crud/static/runtime~index.js.map{"version":3,"sources":["webpack:///webpack/bootstrap"],"names":[],"mappings":";AAAA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,gBAAQ,oBAAoB;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,yBAAiB,4BAA4B;AAC7C;AACA;AACA,0BAAkB,2BAA2B;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,kDAA0C,gCAAgC;AAC1E;AACA;;AAEA;AACA;AACA;AACA,gEAAwD,kBAAkB;AAC1E;AACA,yDAAiD,cAAc;AAC/D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAyC,iCAAiC;AAC1E,wHAAgH,mBAAmB,EAAE;AACrI;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;AAEA;AACA;AACA;AACA;AACA,wBAAgB,uBAAuB;AACvC;;;AAGA;AACA","file":"runtime~index.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"runtime~index\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"apistar_crud/static/\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// run deferred modules from other chunks\n \tcheckDeferredModules();\n"],"sourceRoot":""}PK ! cf f ( apistar_crud/static/runtime~index.js.map{"version":3,"sources":["webpack:///webpack/bootstrap"],"names":[],"mappings":";AAAA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,gBAAQ,oBAAoB;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,yBAAiB,4BAA4B;AAC7C;AACA;AACA,0BAAkB,2BAA2B;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,kDAA0C,gCAAgC;AAC1E;AACA;;AAEA;AACA;AACA;AACA,gEAAwD,kBAAkB;AAC1E;AACA,yDAAiD,cAAc;AAC/D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAyC,iCAAiC;AAC1E,wHAAgH,mBAAmB,EAAE;AACrI;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;AAEA;AACA;AACA;AACA;AACA,wBAAgB,uBAAuB;AACvC;;;AAGA;AACA","file":"runtime~index.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"runtime~index\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"apistar_crud/static/\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// run deferred modules from other chunks\n \tcheckDeferredModules();\n"],"sourceRoot":""}PK ! ;LE $ apistar_crud/static/styles.react.cssbody {
background-color: #FAFAFA;
}
.MainContainer {
padding-top: 25px;
padding-right: 15px;
padding-left: 15px;
margin-right: auto;
margin-left: auto;
}
@media (min-width: 768px) {
.MainContainer {
width: 750px;
}
}
@media (min-width: 992px) {
.MainContainer {
width: 970px;
}
}
@media (min-width: 1200px) {
.MainContainer {
width: 1170px;
}
}
.HeaderLink {
color: #fff;
text-decoration: none;
}
.TableContainer {
overflow-x: scroll;
}
.TableContainer td a {
color: #31CACC;
}
.TableTitle {
display: inline-block !important;
}
.TableActions {
display: flex;
}
.PanelTitle {
padding: 15px 25px;
}
.ButtonNew {
margin-top: 10px !important;
margin-right: 10px !important;
float: right;
}
.ButtonSave {
margin-top: 20px !important;
float: right;
}
.ButtonDelete {
margin-top: 20px !important;
}
.ButtonBack {
padding-left: 0 !important;
}
.ResourceFormContainer {
padding: 15px 25px;
}
.SpinnerContainer {
width: 100%;
height: 100%;
padding: 25px;
display: flex;
align-items: center;
justify-content: center;
}
.TablePagination {
overflow: auto;
}
body {
margin: 0;
padding: 0;
font-family: sans-serif;
}
/*# sourceMappingURL=styles.react.css.map*/PK ! ;LE $ apistar_crud/static/styles.react.cssbody {
background-color: #FAFAFA;
}
.MainContainer {
padding-top: 25px;
padding-right: 15px;
padding-left: 15px;
margin-right: auto;
margin-left: auto;
}
@media (min-width: 768px) {
.MainContainer {
width: 750px;
}
}
@media (min-width: 992px) {
.MainContainer {
width: 970px;
}
}
@media (min-width: 1200px) {
.MainContainer {
width: 1170px;
}
}
.HeaderLink {
color: #fff;
text-decoration: none;
}
.TableContainer {
overflow-x: scroll;
}
.TableContainer td a {
color: #31CACC;
}
.TableTitle {
display: inline-block !important;
}
.TableActions {
display: flex;
}
.PanelTitle {
padding: 15px 25px;
}
.ButtonNew {
margin-top: 10px !important;
margin-right: 10px !important;
float: right;
}
.ButtonSave {
margin-top: 20px !important;
float: right;
}
.ButtonDelete {
margin-top: 20px !important;
}
.ButtonBack {
padding-left: 0 !important;
}
.ResourceFormContainer {
padding: 15px 25px;
}
.SpinnerContainer {
width: 100%;
height: 100%;
padding: 25px;
display: flex;
align-items: center;
justify-content: center;
}
.TablePagination {
overflow: auto;
}
body {
margin: 0;
padding: 0;
font-family: sans-serif;
}
/*# sourceMappingURL=styles.react.css.map*/PK ! W W ( apistar_crud/static/styles.react.css.map{"version":3,"sources":["webpack:///./admin/App.css","webpack:///./admin/index.css"],"names":[],"mappings":"AAAA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,8B;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,C;ACtFA;AACA;AACA;AACA;AACA","file":"styles.react.css","sourcesContent":["body {\n background-color: #FAFAFA;\n}\n\n.MainContainer {\n padding-top: 25px;\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n@media (min-width: 768px) {\n .MainContainer {\n width: 750px;\n }\n}\n@media (min-width: 992px) {\n .MainContainer {\n width: 970px;\n }\n}\n@media (min-width: 1200px) {\n .MainContainer {\n width: 1170px;\n }\n}\n\n.HeaderLink {\n color: #fff;\n text-decoration: none;\n}\n\n.TableContainer {\n overflow-x: scroll;\n}\n\n.TableContainer td a {\n color: #31CACC;\n}\n\n.TableTitle {\n display: inline-block !important;\n}\n\n.TableActions {\n display: flex;\n}\n\n.PanelTitle {\n padding: 15px 25px;\n}\n\n.ButtonNew {\n margin-top: 10px !important;\n margin-right: 10px !important;\n float: right;\n}\n\n.ButtonSave {\n margin-top: 20px !important;\n float: right;\n}\n\n.ButtonDelete {\n margin-top: 20px !important; \n}\n\n.ButtonBack {\n padding-left: 0 !important;\n}\n\n.ResourceFormContainer {\n padding: 15px 25px;\n}\n\n.SpinnerContainer {\n width: 100%;\n height: 100%;\n padding: 25px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.TablePagination {\n overflow: auto;\n}","body {\n margin: 0;\n padding: 0;\n font-family: sans-serif;\n}\n"],"sourceRoot":""}PK ! W W ( apistar_crud/static/styles.react.css.map{"version":3,"sources":["webpack:///./admin/App.css","webpack:///./admin/index.css"],"names":[],"mappings":"AAAA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,8B;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,C;ACtFA;AACA;AACA;AACA;AACA","file":"styles.react.css","sourcesContent":["body {\n background-color: #FAFAFA;\n}\n\n.MainContainer {\n padding-top: 25px;\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n@media (min-width: 768px) {\n .MainContainer {\n width: 750px;\n }\n}\n@media (min-width: 992px) {\n .MainContainer {\n width: 970px;\n }\n}\n@media (min-width: 1200px) {\n .MainContainer {\n width: 1170px;\n }\n}\n\n.HeaderLink {\n color: #fff;\n text-decoration: none;\n}\n\n.TableContainer {\n overflow-x: scroll;\n}\n\n.TableContainer td a {\n color: #31CACC;\n}\n\n.TableTitle {\n display: inline-block !important;\n}\n\n.TableActions {\n display: flex;\n}\n\n.PanelTitle {\n padding: 15px 25px;\n}\n\n.ButtonNew {\n margin-top: 10px !important;\n margin-right: 10px !important;\n float: right;\n}\n\n.ButtonSave {\n margin-top: 20px !important;\n float: right;\n}\n\n.ButtonDelete {\n margin-top: 20px !important; \n}\n\n.ButtonBack {\n padding-left: 0 !important;\n}\n\n.ResourceFormContainer {\n padding: 15px 25px;\n}\n\n.SpinnerContainer {\n width: 100%;\n height: 100%;\n padding: 25px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.TablePagination {\n overflow: auto;\n}","body {\n margin: 0;\n padding: 0;\n font-family: sans-serif;\n}\n"],"sourceRoot":""}PK ! HP| | # apistar_crud/static/styles.react.js(window["webpackJsonp"] = window["webpackJsonp"] || []).push([["styles.react"],{
/***/ "./admin/App.css":
/*!***********************!*\
!*** ./admin/App.css ***!
\***********************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
// extracted by mini-css-extract-plugin
/***/ }),
/***/ "./admin/index.css":
/*!*************************!*\
!*** ./admin/index.css ***!
\*************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
// extracted by mini-css-extract-plugin
/***/ })
}]);
//# sourceMappingURL=styles.react.js.mapPK ! HP| | # apistar_crud/static/styles.react.js(window["webpackJsonp"] = window["webpackJsonp"] || []).push([["styles.react"],{
/***/ "./admin/App.css":
/*!***********************!*\
!*** ./admin/App.css ***!
\***********************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
// extracted by mini-css-extract-plugin
/***/ }),
/***/ "./admin/index.css":
/*!*************************!*\
!*** ./admin/index.css ***!
\*************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
// extracted by mini-css-extract-plugin
/***/ })
}]);
//# sourceMappingURL=styles.react.js.mapPK ! "* * ' apistar_crud/static/styles.react.js.map{"version":3,"sources":["webpack:///./admin/App.css?bb11","webpack:///./admin/index.css?037c"],"names":[],"mappings":";;;;;;;;;AAAA,uC;;;;;;;;;;;ACAA,uC","file":"styles.react.js","sourcesContent":["// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin"],"sourceRoot":""}PK ! "* * ' apistar_crud/static/styles.react.js.map{"version":3,"sources":["webpack:///./admin/App.css?bb11","webpack:///./admin/index.css?037c"],"names":[],"mappings":";;;;;;;;;AAAA,uC;;;;;;;;;;;ACAA,uC","file":"styles.react.js","sourcesContent":["// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin"],"sourceRoot":""}PK ! ls`X s`X $ apistar_crud/static/vendors~index.js(window["webpackJsonp"] = window["webpackJsonp"] || []).push([["vendors~index"],{
/***/ "./node_modules/@babel/runtime/helpers/builtin/arrayWithoutHoles.js":
/*!**************************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/builtin/arrayWithoutHoles.js ***!
\**************************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
function _arrayWithoutHoles(arr) {
if (Array.isArray(arr)) {
for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) {
arr2[i] = arr[i];
}
return arr2;
}
}
module.exports = _arrayWithoutHoles;
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/builtin/assertThisInitialized.js":
/*!******************************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/builtin/assertThisInitialized.js ***!
\******************************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
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;
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js":
/*!***********************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js ***!
\***********************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
function _classCallCheck(instance, Constructor) {
if (!(instance instanceof Constructor)) {
throw new TypeError("Cannot call a class as a function");
}
}
module.exports = _classCallCheck;
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/builtin/createClass.js":
/*!********************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/builtin/createClass.js ***!
\********************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
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;
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js":
/*!***********************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/builtin/defineProperty.js ***!
\***********************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
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;
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/builtin/extends.js":
/*!****************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/builtin/extends.js ***!
\****************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
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;
};
return _extends.apply(this, arguments);
}
module.exports = _extends;
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/builtin/inherits.js":
/*!*****************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/builtin/inherits.js ***!
\*****************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf */ "./node_modules/@babel/runtime/helpers/builtin/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;
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js":
/*!******************************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js ***!
\******************************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
function _interopRequireDefault(obj) {
return obj && obj.__esModule ? obj : {
default: obj
};
}
module.exports = _interopRequireDefault;
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/builtin/interopRequireWildcard.js":
/*!*******************************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/builtin/interopRequireWildcard.js ***!
\*******************************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
function _interopRequireWildcard(obj) {
if (obj && obj.__esModule) {
return obj;
} else {
var newObj = {};
if (obj != null) {
for (var key in obj) {
if (Object.prototype.hasOwnProperty.call(obj, key)) {
var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {};
if (desc.get || desc.set) {
Object.defineProperty(newObj, key, desc);
} else {
newObj[key] = obj[key];
}
}
}
}
newObj.default = obj;
return newObj;
}
}
module.exports = _interopRequireWildcard;
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/builtin/iterableToArray.js":
/*!************************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/builtin/iterableToArray.js ***!
\************************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
function _iterableToArray(iter) {
if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter);
}
module.exports = _iterableToArray;
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/builtin/nonIterableSpread.js":
/*!**************************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/builtin/nonIterableSpread.js ***!
\**************************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
function _nonIterableSpread() {
throw new TypeError("Invalid attempt to spread non-iterable instance");
}
module.exports = _nonIterableSpread;
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/builtin/objectSpread.js":
/*!*********************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/builtin/objectSpread.js ***!
\*********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
var defineProperty = __webpack_require__(/*! ./defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js");
function _objectSpread(target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i] != null ? 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;
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js":
/*!********************************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js ***!
\********************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
var objectWithoutPropertiesLoose = __webpack_require__(/*! ./objectWithoutPropertiesLoose */ "./node_modules/@babel/runtime/helpers/builtin/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;
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutPropertiesLoose.js":
/*!*************************************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/builtin/objectWithoutPropertiesLoose.js ***!
\*************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
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;
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js":
/*!**********************************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js ***!
\**********************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
var _typeof = __webpack_require__(/*! ../../helpers/builtin/typeof */ "./node_modules/@babel/runtime/helpers/builtin/typeof.js");
var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized */ "./node_modules/@babel/runtime/helpers/builtin/assertThisInitialized.js");
function _possibleConstructorReturn(self, call) {
if (call && (_typeof(call) === "object" || typeof call === "function")) {
return call;
}
return assertThisInitialized(self);
}
module.exports = _possibleConstructorReturn;
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/builtin/setPrototypeOf.js":
/*!***********************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/builtin/setPrototypeOf.js ***!
\***********************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
function _setPrototypeOf(o, p) {
module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
o.__proto__ = p;
return o;
};
return _setPrototypeOf(o, p);
}
module.exports = _setPrototypeOf;
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/builtin/toConsumableArray.js":
/*!**************************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/builtin/toConsumableArray.js ***!
\**************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
var arrayWithoutHoles = __webpack_require__(/*! ./arrayWithoutHoles */ "./node_modules/@babel/runtime/helpers/builtin/arrayWithoutHoles.js");
var iterableToArray = __webpack_require__(/*! ./iterableToArray */ "./node_modules/@babel/runtime/helpers/builtin/iterableToArray.js");
var nonIterableSpread = __webpack_require__(/*! ./nonIterableSpread */ "./node_modules/@babel/runtime/helpers/builtin/nonIterableSpread.js");
function _toConsumableArray(arr) {
return arrayWithoutHoles(arr) || iterableToArray(arr) || nonIterableSpread();
}
module.exports = _toConsumableArray;
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/builtin/typeof.js":
/*!***************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/builtin/typeof.js ***!
\***************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
function _typeof2(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof2 = function _typeof2(obj) { return typeof obj; }; } else { _typeof2 = function _typeof2(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof2(obj); }
function _typeof(obj) {
if (typeof Symbol === "function" && _typeof2(Symbol.iterator) === "symbol") {
module.exports = _typeof = function _typeof(obj) {
return _typeof2(obj);
};
} else {
module.exports = _typeof = function _typeof(obj) {
return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : _typeof2(obj);
};
}
return _typeof(obj);
}
module.exports = _typeof;
/***/ }),
/***/ "./node_modules/@kyleshockey/object-assign-deep/dist/objectAssignDeep.js":
/*!*******************************************************************************!*\
!*** ./node_modules/@kyleshockey/object-assign-deep/dist/objectAssignDeep.js ***!
\*******************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/*
* OBJECT ASSIGN DEEP
* Allows deep cloning of plain objects that contain primitives, nested plain objects, or nested plain arrays.
*/
/*
* A unified way of returning a string that describes the type of the given variable.
*/
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
function getTypeOf(input) {
if (input === null) {
return 'null';
} else if (typeof input === 'undefined') {
return 'undefined';
} else if ((typeof input === 'undefined' ? 'undefined' : _typeof(input)) === 'object') {
return Array.isArray(input) ? 'array' : 'object';
}
return typeof input === 'undefined' ? 'undefined' : _typeof(input);
}
/*
* Branching logic which calls the correct function to clone the given value base on its type.
*/
function cloneValue(value) {
// The value is an object so lets clone it.
if (getTypeOf(value) === 'object') {
return quickCloneObject(value);
}
// The value is an array so lets clone it.
else if (getTypeOf(value) === 'array') {
return quickCloneArray(value);
}
// Any other value can just be copied.
return value;
}
/*
* Enumerates the given array and returns a new array, with each of its values cloned (i.e. references broken).
*/
function quickCloneArray(input) {
return input.map(cloneValue);
}
/*
* Enumerates the properties of the given object (ignoring the prototype chain) and returns a new object, with each of
* its values cloned (i.e. references broken).
*/
function quickCloneObject(input) {
var output = {};
for (var key in input) {
if (!input.hasOwnProperty(key)) {
continue;
}
output[key] = cloneValue(input[key]);
}
return output;
}
/*
* Does the actual deep merging.
*/
function executeDeepMerge(target) {
var _objects = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
var _options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
var options = {
arrayBehaviour: _options.arrayBehaviour || 'replace' // Can be "merge" or "replace".
};
// Ensure we have actual objects for each.
var objects = _objects.map(function (object) {
return object || {};
});
var output = target || {};
// Enumerate the objects and their keys.
for (var oindex = 0; oindex < objects.length; oindex++) {
var object = objects[oindex];
var keys = Object.keys(object);
for (var kindex = 0; kindex < keys.length; kindex++) {
var key = keys[kindex];
var value = object[key];
var type = getTypeOf(value);
var existingValueType = getTypeOf(output[key]);
if (type === 'object') {
if (existingValueType !== 'undefined') {
var existingValue = existingValueType === 'object' ? output[key] : {};
output[key] = executeDeepMerge({}, [existingValue, quickCloneObject(value)], options);
} else {
output[key] = quickCloneObject(value);
}
} else if (type === 'array') {
if (existingValueType === 'array') {
var newValue = quickCloneArray(value);
output[key] = options.arrayBehaviour === 'merge' ? output[key].concat(newValue) : newValue;
} else {
output[key] = quickCloneArray(value);
}
} else {
output[key] = value;
}
}
}
return output;
}
/*
* Merge all the supplied objects into the target object, breaking all references, including those of nested objects
* and arrays, and even objects nested inside arrays. The first parameter is not mutated unlike Object.assign().
* Properties in later objects will always overwrite.
*/
module.exports = function objectAssignDeep(target) {
for (var _len = arguments.length, objects = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
objects[_key - 1] = arguments[_key];
}
return executeDeepMerge(target, objects);
};
/*
* Same as objectAssignDeep() except it doesn't mutate the target object and returns an entirely new object.
*/
module.exports.noMutate = function objectAssignDeepInto() {
for (var _len2 = arguments.length, objects = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
objects[_key2] = arguments[_key2];
}
return executeDeepMerge({}, objects);
};
/*
* Allows an options object to be passed in to customise the behaviour of the function.
*/
module.exports.withOptions = function objectAssignDeepInto(target, objects, options) {
return executeDeepMerge(target, objects, options);
};
/***/ }),
/***/ "./node_modules/@material-ui/core/AppBar/AppBar.js":
/*!*********************************************************!*\
!*** ./node_modules/@material-ui/core/AppBar/AppBar.js ***!
\*********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _helpers = __webpack_require__(/*! ../utils/helpers */ "./node_modules/@material-ui/core/utils/helpers.js");
var _Paper = _interopRequireDefault(__webpack_require__(/*! ../Paper */ "./node_modules/@material-ui/core/Paper/index.js"));
// @inheritedComponent Paper
var styles = function styles(theme) {
var backgroundColorDefault = theme.palette.type === 'light' ? theme.palette.grey[100] : theme.palette.grey[900];
return {
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
},
positionFixed: {
position: 'fixed',
top: 0,
left: 'auto',
right: 0
},
positionAbsolute: {
position: 'absolute',
top: 0,
left: 'auto',
right: 0
},
positionSticky: {
position: 'sticky',
top: 0,
left: 'auto',
right: 0
},
positionStatic: {
position: 'static'
},
colorDefault: {
backgroundColor: backgroundColorDefault,
color: theme.palette.getContrastText(backgroundColorDefault)
},
colorPrimary: {
backgroundColor: theme.palette.primary.main,
color: theme.palette.primary.contrastText
},
colorSecondary: {
backgroundColor: theme.palette.secondary.main,
color: theme.palette.secondary.contrastText
}
};
};
exports.styles = styles;
function AppBar(props) {
var _classNames;
var children = props.children,
classes = props.classes,
classNameProp = props.className,
color = props.color,
position = props.position,
other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "color", "position"]);
var className = (0, _classnames.default)(classes.root, classes["position".concat((0, _helpers.capitalize)(position))], (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes["color".concat((0, _helpers.capitalize)(color))], color !== 'inherit'), (0, _defineProperty2.default)(_classNames, 'mui-fixed', position === 'fixed'), _classNames), classNameProp);
return _react.default.createElement(_Paper.default, (0, _extends2.default)({
square: true,
component: "header",
elevation: 4,
className: className
}, other), children);
}
AppBar.propTypes = true ? {
/**
* The content of the component.
*/
children: _propTypes.default.node.isRequired,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @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(['inherit', 'primary', 'secondary', 'default']),
/**
* The positioning type. The behavior of the different options is described
* [here](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(['fixed', 'absolute', 'sticky', 'static'])
} : undefined;
AppBar.defaultProps = {
color: 'primary',
position: 'fixed'
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiAppBar'
})(AppBar);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/AppBar/index.js":
/*!********************************************************!*\
!*** ./node_modules/@material-ui/core/AppBar/index.js ***!
\********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _AppBar.default;
}
});
var _AppBar = _interopRequireDefault(__webpack_require__(/*! ./AppBar */ "./node_modules/@material-ui/core/AppBar/AppBar.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/Avatar/Avatar.js":
/*!*********************************************************!*\
!*** ./node_modules/@material-ui/core/Avatar/Avatar.js ***!
\*********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var styles = function styles(theme) {
return {
root: {
position: 'relative',
display: 'flex',
alignItems: 'center',
justifyContent: 'center',
flexShrink: 0,
width: 40,
height: 40,
fontFamily: theme.typography.fontFamily,
fontSize: theme.typography.pxToRem(20),
borderRadius: '50%',
overflow: 'hidden',
userSelect: 'none'
},
colorDefault: {
color: theme.palette.background.default,
backgroundColor: theme.palette.type === 'light' ? theme.palette.grey[400] : theme.palette.grey[600]
},
img: {
width: '100%',
height: '100%',
textAlign: 'center',
// Handle non-square image. The property isn't supported by IE11.
objectFit: 'cover'
}
};
};
exports.styles = styles;
function Avatar(props) {
var alt = props.alt,
childrenProp = props.children,
childrenClassNameProp = props.childrenClassName,
classes = props.classes,
classNameProp = props.className,
Component = props.component,
imgProps = props.imgProps,
sizes = props.sizes,
src = props.src,
srcSet = props.srcSet,
other = (0, _objectWithoutProperties2.default)(props, ["alt", "children", "childrenClassName", "classes", "className", "component", "imgProps", "sizes", "src", "srcSet"]);
var className = (0, _classnames.default)(classes.root, (0, _defineProperty2.default)({}, classes.colorDefault, childrenProp && !src && !srcSet), classNameProp);
var children = null;
if (childrenProp) {
if (childrenClassNameProp && typeof childrenProp !== 'string' && _react.default.isValidElement(childrenProp)) {
var childrenClassName = (0, _classnames.default)(childrenClassNameProp, childrenProp.props.className);
children = _react.default.cloneElement(childrenProp, {
className: childrenClassName
});
} else {
children = childrenProp;
}
} else if (src || srcSet) {
children = _react.default.createElement("img", (0, _extends2.default)({
alt: alt,
src: src,
srcSet: srcSet,
sizes: sizes,
className: classes.img
}, imgProps));
}
return _react.default.createElement(Component, (0, _extends2.default)({
className: className
}, other), children);
}
Avatar.propTypes = true ? {
/**
* 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.
* `src` and `alt` props will not be used and no `img` will
* be rendered by default.
*
* This can be an element, or just a string.
*/
children: _propTypes.default.node,
/**
* @ignore
* The className of the child element.
* Used by Chip and ListItemIcon to style the Avatar icon.
*/
childrenClassName: _propTypes.default.string,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* The component used for the root node.
* Either a string to use a DOM element or a component.
*/
component: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* Attributes applied to the `img` element when the component
* is used to display an image.
*/
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.
*/
srcSet: _propTypes.default.string
} : undefined;
Avatar.defaultProps = {
component: 'div'
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiAvatar'
})(Avatar);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Avatar/index.js":
/*!********************************************************!*\
!*** ./node_modules/@material-ui/core/Avatar/index.js ***!
\********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _Avatar.default;
}
});
var _Avatar = _interopRequireDefault(__webpack_require__(/*! ./Avatar */ "./node_modules/@material-ui/core/Avatar/Avatar.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/Backdrop/Backdrop.js":
/*!*************************************************************!*\
!*** ./node_modules/@material-ui/core/Backdrop/Backdrop.js ***!
\*************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _Fade = _interopRequireDefault(__webpack_require__(/*! ../Fade */ "./node_modules/@material-ui/core/Fade/index.js"));
var styles = {
root: {
zIndex: -1,
width: '100%',
height: '100%',
position: 'fixed',
top: 0,
left: 0,
// Remove grey highlight
WebkitTapHighlightColor: 'transparent',
backgroundColor: 'rgba(0, 0, 0, 0.5)'
},
invisible: {
backgroundColor: 'transparent'
}
};
exports.styles = styles;
function Backdrop(props) {
var classes = props.classes,
className = props.className,
invisible = props.invisible,
open = props.open,
transitionDuration = props.transitionDuration,
other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "invisible", "open", "transitionDuration"]);
return _react.default.createElement(_Fade.default, (0, _extends2.default)({
appear: true,
"in": open,
timeout: transitionDuration
}, other), _react.default.createElement("div", {
className: (0, _classnames.default)(classes.root, (0, _defineProperty2.default)({}, classes.invisible, invisible), className),
"aria-hidden": "true"
}));
}
Backdrop.propTypes = true ? {
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @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({
enter: _propTypes.default.number,
exit: _propTypes.default.number
})])
} : undefined;
Backdrop.defaultProps = {
invisible: false
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiBackdrop'
})(Backdrop);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Backdrop/index.js":
/*!**********************************************************!*\
!*** ./node_modules/@material-ui/core/Backdrop/index.js ***!
\**********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _Backdrop.default;
}
});
var _Backdrop = _interopRequireDefault(__webpack_require__(/*! ./Backdrop */ "./node_modules/@material-ui/core/Backdrop/Backdrop.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/Badge/Badge.js":
/*!*******************************************************!*\
!*** ./node_modules/@material-ui/core/Badge/Badge.js ***!
\*******************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _helpers = __webpack_require__(/*! ../utils/helpers */ "./node_modules/@material-ui/core/utils/helpers.js");
var RADIUS = 12;
var styles = function styles(theme) {
return {
root: {
position: 'relative',
display: 'inline-flex',
// For correct alignment with the text.
verticalAlign: 'middle'
},
badge: {
display: 'flex',
flexDirection: 'row',
flexWrap: 'wrap',
justifyContent: 'center',
alignContent: 'center',
alignItems: 'center',
position: 'absolute',
top: -RADIUS,
right: -RADIUS,
fontFamily: theme.typography.fontFamily,
fontWeight: theme.typography.fontWeight,
fontSize: theme.typography.pxToRem(RADIUS),
width: RADIUS * 2,
height: RADIUS * 2,
borderRadius: '50%',
backgroundColor: theme.palette.color,
color: theme.palette.textColor,
zIndex: 1 // Render the badge on top of potential ripples.
},
colorPrimary: {
backgroundColor: theme.palette.primary.main,
color: theme.palette.primary.contrastText
},
colorSecondary: {
backgroundColor: theme.palette.secondary.main,
color: theme.palette.secondary.contrastText
},
colorError: {
backgroundColor: theme.palette.error.main,
color: theme.palette.error.contrastText
}
};
};
exports.styles = styles;
function Badge(props) {
var badgeContent = props.badgeContent,
children = props.children,
classes = props.classes,
classNameProp = props.className,
color = props.color,
ComponentProp = props.component,
other = (0, _objectWithoutProperties2.default)(props, ["badgeContent", "children", "classes", "className", "color", "component"]);
var badgeClassName = (0, _classnames.default)(classes.badge, (0, _defineProperty2.default)({}, classes["color".concat((0, _helpers.capitalize)(color))], color !== 'default'));
return _react.default.createElement(ComponentProp, (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, classNameProp)
}, other), children, _react.default.createElement("span", {
className: badgeClassName
}, badgeContent));
}
Badge.propTypes = true ? {
/**
* The content rendered within the badge.
*/
badgeContent: _propTypes.default.node.isRequired,
/**
* The badge will be added relative to this node.
*/
children: _propTypes.default.node.isRequired,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @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', 'primary', 'secondary', 'error']),
/**
* The component used for the root node.
* Either a string to use a DOM element or a component.
*/
component: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object])
} : undefined;
Badge.defaultProps = {
color: 'default',
component: 'span'
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiBadge'
})(Badge);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Badge/index.js":
/*!*******************************************************!*\
!*** ./node_modules/@material-ui/core/Badge/index.js ***!
\*******************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _Badge.default;
}
});
var _Badge = _interopRequireDefault(__webpack_require__(/*! ./Badge */ "./node_modules/@material-ui/core/Badge/Badge.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/BottomNavigation/BottomNavigation.js":
/*!*****************************************************************************!*\
!*** ./node_modules/@material-ui/core/BottomNavigation/BottomNavigation.js ***!
\*****************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _warning = _interopRequireDefault(__webpack_require__(/*! warning */ "./node_modules/@material-ui/core/node_modules/warning/warning.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var styles = function styles(theme) {
return {
root: {
display: 'flex',
justifyContent: 'center',
height: 56,
backgroundColor: theme.palette.background.paper
}
};
};
exports.styles = styles;
function BottomNavigation(props) {
var childrenProp = props.children,
classes = props.classes,
classNameProp = props.className,
onChange = props.onChange,
showLabels = props.showLabels,
value = props.value,
other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "onChange", "showLabels", "value"]);
var className = (0, _classnames.default)(classes.root, classNameProp);
var children = _react.default.Children.map(childrenProp, function (child, childIndex) {
if (!_react.default.isValidElement(child)) {
return null;
}
true ? (0, _warning.default)(child.type !== _react.default.Fragment, ["Material-UI: the BottomNavigation component doesn't accept a Fragment as a child.", 'Consider providing an array instead.'].join('\n')) : undefined;
var childValue = child.props.value === undefined ? childIndex : child.props.value;
return _react.default.cloneElement(child, {
selected: childValue === value,
showLabel: child.props.showLabel !== undefined ? child.props.showLabel : showLabels,
value: childValue,
onChange: onChange
});
});
return _react.default.createElement("div", (0, _extends2.default)({
className: className
}, other), children);
}
BottomNavigation.propTypes = true ? {
/**
* The content of the component.
*/
children: _propTypes.default.node.isRequired,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* 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
} : undefined;
BottomNavigation.defaultProps = {
showLabels: false
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiBottomNavigation'
})(BottomNavigation);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/BottomNavigation/index.js":
/*!******************************************************************!*\
!*** ./node_modules/@material-ui/core/BottomNavigation/index.js ***!
\******************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _BottomNavigation.default;
}
});
var _BottomNavigation = _interopRequireDefault(__webpack_require__(/*! ./BottomNavigation */ "./node_modules/@material-ui/core/BottomNavigation/BottomNavigation.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/BottomNavigationAction/BottomNavigationAction.js":
/*!*****************************************************************************************!*\
!*** ./node_modules/@material-ui/core/BottomNavigationAction/BottomNavigationAction.js ***!
\*****************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js"));
var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/inherits */ "./node_modules/@babel/runtime/helpers/builtin/inherits.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _ButtonBase = _interopRequireDefault(__webpack_require__(/*! ../ButtonBase */ "./node_modules/@material-ui/core/ButtonBase/index.js"));
var _unsupportedProp = _interopRequireDefault(__webpack_require__(/*! ../utils/unsupportedProp */ "./node_modules/@material-ui/core/utils/unsupportedProp.js"));
// @inheritedComponent ButtonBase
var styles = function styles(theme) {
return {
root: {
transition: theme.transitions.create(['color', 'padding-top'], {
duration: theme.transitions.duration.short
}),
paddingTop: 8,
paddingBottom: 10,
paddingLeft: 12,
paddingRight: 12,
minWidth: 80,
maxWidth: 168,
color: theme.palette.text.secondary,
flex: '1',
'&$iconOnly': {
paddingTop: 16
},
'&$selected': {
paddingTop: 6,
color: theme.palette.primary.main
}
},
selected: {},
iconOnly: {},
wrapper: {
display: 'inline-flex',
alignItems: 'center',
justifyContent: 'center',
width: '100%',
flexDirection: 'column'
},
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__*/
function (_React$Component) {
(0, _inherits2.default)(BottomNavigationAction, _React$Component);
function BottomNavigationAction() {
var _ref;
var _temp, _this;
(0, _classCallCheck2.default)(this, BottomNavigationAction);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
return (0, _possibleConstructorReturn2.default)(_this, (_temp = _this = (0, _possibleConstructorReturn2.default)(this, (_ref = BottomNavigationAction.__proto__ || Object.getPrototypeOf(BottomNavigationAction)).call.apply(_ref, [this].concat(args))), _this.handleChange = function (event) {
var _this$props = _this.props,
onChange = _this$props.onChange,
value = _this$props.value,
onClick = _this$props.onClick;
if (onChange) {
onChange(event, value);
}
if (onClick) {
onClick(event);
}
}, _temp));
}
(0, _createClass2.default)(BottomNavigationAction, [{
key: "render",
value: function render() {
var _classNames, _classNames2;
var _props = this.props,
classes = _props.classes,
classNameProp = _props.className,
icon = _props.icon,
label = _props.label,
onChange = _props.onChange,
onClick = _props.onClick,
selected = _props.selected,
showLabelProp = _props.showLabel,
value = _props.value,
other = (0, _objectWithoutProperties2.default)(_props, ["classes", "className", "icon", "label", "onChange", "onClick", "selected", "showLabel", "value"]);
var className = (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.selected, selected), (0, _defineProperty2.default)(_classNames, classes.iconOnly, !showLabelProp && !selected), _classNames), classNameProp);
var labelClassName = (0, _classnames.default)(classes.label, (_classNames2 = {}, (0, _defineProperty2.default)(_classNames2, classes.selected, selected), (0, _defineProperty2.default)(_classNames2, classes.iconOnly, !showLabelProp && !selected), _classNames2));
return _react.default.createElement(_ButtonBase.default, (0, _extends2.default)({
className: className,
focusRipple: true,
onClick: this.handleChange
}, other), _react.default.createElement("span", {
className: classes.wrapper
}, icon, _react.default.createElement("span", {
className: labelClassName
}, label)));
}
}]);
return BottomNavigationAction;
}(_react.default.Component);
BottomNavigationAction.propTypes = true ? {
/**
* This property isn't supported.
* Use the `component` property if you need to change the children structure.
*/
children: _unsupportedProp.default,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @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.
*/
showLabel: _propTypes.default.bool,
/**
* You can provide your own value. Otherwise, we fallback to the child position index.
*/
value: _propTypes.default.any
} : undefined;
var _default = (0, _withStyles.default)(styles, {
name: 'MuiBottomNavigationAction'
})(BottomNavigationAction);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/BottomNavigationAction/index.js":
/*!************************************************************************!*\
!*** ./node_modules/@material-ui/core/BottomNavigationAction/index.js ***!
\************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _BottomNavigationAction.default;
}
});
var _BottomNavigationAction = _interopRequireDefault(__webpack_require__(/*! ./BottomNavigationAction */ "./node_modules/@material-ui/core/BottomNavigationAction/BottomNavigationAction.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/Button/Button.js":
/*!*********************************************************!*\
!*** ./node_modules/@material-ui/core/Button/Button.js ***!
\*********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectSpread */ "./node_modules/@babel/runtime/helpers/builtin/objectSpread.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _colorManipulator = __webpack_require__(/*! ../styles/colorManipulator */ "./node_modules/@material-ui/core/styles/colorManipulator.js");
var _ButtonBase = _interopRequireDefault(__webpack_require__(/*! ../ButtonBase */ "./node_modules/@material-ui/core/ButtonBase/index.js"));
var _helpers = __webpack_require__(/*! ../utils/helpers */ "./node_modules/@material-ui/core/utils/helpers.js");
// @inheritedComponent ButtonBase
var styles = function styles(theme) {
return {
root: (0, _objectSpread2.default)({}, theme.typography.button, {
lineHeight: '1.4em',
// Improve readability for multiline button.
boxSizing: 'border-box',
minWidth: 64,
minHeight: 36,
padding: '8px 16px',
borderRadius: theme.shape.borderRadius,
color: theme.palette.text.primary,
transition: theme.transitions.create(['background-color', 'box-shadow'], {
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
}
}),
label: {
display: 'inherit',
alignItems: 'inherit',
justifyContent: 'inherit'
},
text: {},
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'
}
}
},
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'
}
}
},
flat: {},
// legacy
flatPrimary: {},
// legacy
flatSecondary: {},
// legacy
outlined: {
border: "1px solid ".concat(theme.palette.type === 'light' ? 'rgba(0, 0, 0, 0.23)' : 'rgba(255, 255, 255, 0.23)')
},
contained: {
color: theme.palette.getContrastText(theme.palette.grey[300]),
backgroundColor: theme.palette.grey[300],
boxShadow: theme.shadows[2],
'&$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
},
'&:hover': {
backgroundColor: theme.palette.grey.A100,
// Reset on touch devices, it doesn't add specificity
'@media (hover: none)': {
backgroundColor: theme.palette.grey[300]
},
'&$disabled': {
backgroundColor: theme.palette.action.disabledBackground
}
}
},
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
}
}
},
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
}
}
},
raised: {},
// legacy
raisedPrimary: {},
// legacy
raisedSecondary: {},
// legacy
fab: {
borderRadius: '50%',
padding: 0,
minWidth: 0,
width: 56,
height: 56,
boxShadow: theme.shadows[6],
'&:active': {
boxShadow: theme.shadows[12]
}
},
extendedFab: {
borderRadius: 48 / 2,
padding: '0 16px',
width: 'auto',
minWidth: 48,
height: 48
},
focusVisible: {},
disabled: {},
colorInherit: {
color: 'inherit'
},
mini: {
width: 40,
height: 40
},
sizeSmall: {
padding: '7px 8px',
minWidth: 64,
minHeight: 32,
fontSize: theme.typography.pxToRem(13)
},
sizeLarge: {
padding: '8px 24px',
minWidth: 112,
minHeight: 40,
fontSize: theme.typography.pxToRem(15)
},
fullWidth: {
width: '100%'
}
};
};
exports.styles = styles;
function Button(props) {
var _classNames;
var children = props.children,
classes = props.classes,
classNameProp = props.className,
color = props.color,
disabled = props.disabled,
disableFocusRipple = props.disableFocusRipple,
fullWidth = props.fullWidth,
focusVisibleClassName = props.focusVisibleClassName,
mini = props.mini,
size = props.size,
variant = props.variant,
other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "color", "disabled", "disableFocusRipple", "fullWidth", "focusVisibleClassName", "mini", "size", "variant"]);
var fab = variant === 'fab' || variant === 'extendedFab';
var contained = variant === 'contained' || variant === 'raised';
var text = variant === 'text' || variant === 'flat' || variant === 'outlined';
var className = (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.fab, fab), (0, _defineProperty2.default)(_classNames, classes.mini, fab && mini), (0, _defineProperty2.default)(_classNames, classes.extendedFab, variant === 'extendedFab'), (0, _defineProperty2.default)(_classNames, classes.text, text), (0, _defineProperty2.default)(_classNames, classes.textPrimary, text && color === 'primary'), (0, _defineProperty2.default)(_classNames, classes.textSecondary, text && color === 'secondary'), (0, _defineProperty2.default)(_classNames, classes.flat, variant === 'text' || variant === 'flat'), (0, _defineProperty2.default)(_classNames, classes.flatPrimary, (variant === 'text' || variant === 'flat') && color === 'primary'), (0, _defineProperty2.default)(_classNames, classes.flatSecondary, (variant === 'text' || variant === 'flat') && color === 'secondary'), (0, _defineProperty2.default)(_classNames, classes.contained, contained || fab), (0, _defineProperty2.default)(_classNames, classes.containedPrimary, (contained || fab) && color === 'primary'), (0, _defineProperty2.default)(_classNames, classes.containedSecondary, (contained || fab) && color === 'secondary'), (0, _defineProperty2.default)(_classNames, classes.raised, contained || fab), (0, _defineProperty2.default)(_classNames, classes.raisedPrimary, (contained || fab) && color === 'primary'), (0, _defineProperty2.default)(_classNames, classes.raisedSecondary, (contained || fab) && color === 'secondary'), (0, _defineProperty2.default)(_classNames, classes.outlined, variant === 'outlined'), (0, _defineProperty2.default)(_classNames, classes["size".concat((0, _helpers.capitalize)(size))], size !== 'medium'), (0, _defineProperty2.default)(_classNames, classes.disabled, disabled), (0, _defineProperty2.default)(_classNames, classes.fullWidth, fullWidth), (0, _defineProperty2.default)(_classNames, classes.colorInherit, color === 'inherit'), _classNames), classNameProp);
return _react.default.createElement(_ButtonBase.default, (0, _extends2.default)({
className: className,
disabled: disabled,
focusRipple: !disableFocusRipple,
focusVisibleClassName: (0, _classnames.default)(classes.focusVisible, focusVisibleClassName)
}, other), _react.default.createElement("span", {
className: classes.label
}, children));
}
Button.propTypes = true ? {
/**
* The content of the button.
*/
children: _propTypes.default.node.isRequired,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @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 DOM element or a component.
*/
component: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* If `true`, the button will be disabled.
*/
disabled: _propTypes.default.bool,
/**
* If `true`, the keyboard focus ripple will be disabled.
* `disableRipple` must also be true.
*/
disableFocusRipple: _propTypes.default.bool,
/**
* If `true`, the ripple effect will be disabled.
*/
disableRipple: _propTypes.default.bool,
/**
* @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,
/**
* If `true`, and `variant` is `'fab'`, will use mini floating action button styling.
*/
mini: _propTypes.default.bool,
/**
* The size of the button.
* `small` is equivalent to the dense button styling.
*/
size: _propTypes.default.oneOf(['small', 'medium', 'large']),
/**
* @ignore
*/
type: _propTypes.default.string,
/**
* The variant to use.
*/
variant: _propTypes.default.oneOf(['text', 'flat', 'outlined', 'contained', 'raised', 'fab', 'extendedFab'])
} : undefined;
Button.defaultProps = {
color: 'default',
component: 'button',
disabled: false,
disableFocusRipple: false,
fullWidth: false,
mini: false,
size: 'medium',
type: 'button',
variant: 'text'
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiButton'
})(Button);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Button/index.js":
/*!********************************************************!*\
!*** ./node_modules/@material-ui/core/Button/index.js ***!
\********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _Button.default;
}
});
var _Button = _interopRequireDefault(__webpack_require__(/*! ./Button */ "./node_modules/@material-ui/core/Button/Button.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/ButtonBase/ButtonBase.js":
/*!*****************************************************************!*\
!*** ./node_modules/@material-ui/core/ButtonBase/ButtonBase.js ***!
\*****************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js"));
var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/inherits */ "./node_modules/@babel/runtime/helpers/builtin/inherits.js"));
var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/assertThisInitialized */ "./node_modules/@babel/runtime/helpers/builtin/assertThisInitialized.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "./node_modules/react-dom/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _keycode = _interopRequireDefault(__webpack_require__(/*! keycode */ "./node_modules/keycode/index.js"));
var _ownerWindow = _interopRequireDefault(__webpack_require__(/*! ../utils/ownerWindow */ "./node_modules/@material-ui/core/utils/ownerWindow.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _focusVisible = __webpack_require__(/*! ./focusVisible */ "./node_modules/@material-ui/core/ButtonBase/focusVisible.js");
var _TouchRipple = _interopRequireDefault(__webpack_require__(/*! ./TouchRipple */ "./node_modules/@material-ui/core/ButtonBase/TouchRipple.js"));
var _createRippleHandler = _interopRequireDefault(__webpack_require__(/*! ./createRippleHandler */ "./node_modules/@material-ui/core/ButtonBase/createRippleHandler.js"));
var styles = {
root: {
display: 'inline-flex',
alignItems: 'center',
justifyContent: 'center',
position: 'relative',
// Remove grey highlight
WebkitTapHighlightColor: 'transparent',
backgroundColor: 'transparent',
// Reset default value
// We disable the focus ring for mouse, touch and keyboard users.
outline: 'none',
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'
}
},
disabled: {},
focusVisible: {}
};
/* istanbul ignore if */
exports.styles = styles;
if ("development" !== 'production' && !_react.default.createContext) {
throw new Error('Material-UI: react@16.3.0 or greater is required.');
}
/**
* `ButtonBase` contains as few styles as possible.
* It aims to be a simple building block for creating a button.
* It contains a load of style reset and some focus/ripple logic.
*/
var ButtonBase =
/*#__PURE__*/
function (_React$Component) {
(0, _inherits2.default)(ButtonBase, _React$Component);
function ButtonBase() {
var _ref;
var _temp, _this;
(0, _classCallCheck2.default)(this, ButtonBase);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
return (0, _possibleConstructorReturn2.default)(_this, (_temp = _this = (0, _possibleConstructorReturn2.default)(this, (_ref = ButtonBase.__proto__ || Object.getPrototypeOf(ButtonBase)).call.apply(_ref, [this].concat(args))), _this.ripple = null, _this.keyDown = false, _this.button = null, _this.focusVisibleTimeout = null, _this.focusVisibleCheckTime = 50, _this.focusVisibleMaxCheckTimes = 5, _this.handleMouseDown = (0, _createRippleHandler.default)((0, _assertThisInitialized2.default)(_this), 'MouseDown', 'start', function () {
clearTimeout(_this.focusVisibleTimeout);
if (_this.state.focusVisible) {
_this.setState({
focusVisible: false
});
}
}), _this.handleMouseUp = (0, _createRippleHandler.default)((0, _assertThisInitialized2.default)(_this), 'MouseUp', 'stop'), _this.handleMouseLeave = (0, _createRippleHandler.default)((0, _assertThisInitialized2.default)(_this), 'MouseLeave', 'stop', function (event) {
if (_this.state.focusVisible) {
event.preventDefault();
}
}), _this.handleTouchStart = (0, _createRippleHandler.default)((0, _assertThisInitialized2.default)(_this), 'TouchStart', 'start'), _this.handleTouchEnd = (0, _createRippleHandler.default)((0, _assertThisInitialized2.default)(_this), 'TouchEnd', 'stop'), _this.handleTouchMove = (0, _createRippleHandler.default)((0, _assertThisInitialized2.default)(_this), 'TouchMove', 'stop'), _this.handleBlur = (0, _createRippleHandler.default)((0, _assertThisInitialized2.default)(_this), 'Blur', 'stop', function () {
clearTimeout(_this.focusVisibleTimeout);
if (_this.state.focusVisible) {
_this.setState({
focusVisible: false
});
}
}), _this.state = {}, _this.onRippleRef = function (node) {
_this.ripple = node;
}, _this.onFocusVisibleHandler = function (event) {
_this.keyDown = false;
_this.setState({
focusVisible: true
});
if (_this.props.onFocusVisible) {
_this.props.onFocusVisible(event);
}
}, _this.handleKeyDown = function (event) {
var _this$props = _this.props,
component = _this$props.component,
focusRipple = _this$props.focusRipple,
onKeyDown = _this$props.onKeyDown,
onClick = _this$props.onClick;
var key = (0, _keycode.default)(event); // Check if key is already down to avoid repeats being counted as multiple activations
if (focusRipple && !_this.keyDown && _this.state.focusVisible && _this.ripple && key === 'space') {
_this.keyDown = true;
event.persist();
_this.ripple.stop(event, function () {
_this.ripple.start(event);
});
}
if (onKeyDown) {
onKeyDown(event);
} // Keyboard accessibility for non interactive elements
if (event.target === event.currentTarget && component && component !== 'button' && (key === 'space' || key === 'enter') && !(_this.button.tagName === 'A' && _this.button.href)) {
event.preventDefault();
if (onClick) {
onClick(event);
}
}
}, _this.handleKeyUp = function (event) {
if (_this.props.focusRipple && (0, _keycode.default)(event) === 'space' && _this.ripple && _this.state.focusVisible) {
_this.keyDown = false;
event.persist();
_this.ripple.stop(event, function () {
_this.ripple.pulsate(event);
});
}
if (_this.props.onKeyUp) {
_this.props.onKeyUp(event);
}
}, _this.handleFocus = function (event) {
if (_this.props.disabled) {
return;
} // Fix for https://github.com/facebook/react/issues/7769
if (!_this.button) {
_this.button = event.currentTarget;
}
event.persist();
(0, _focusVisible.detectFocusVisible)((0, _assertThisInitialized2.default)(_this), _this.button, function () {
_this.onFocusVisibleHandler(event);
});
if (_this.props.onFocus) {
_this.props.onFocus(event);
}
}, _temp));
}
(0, _createClass2.default)(ButtonBase, [{
key: "componentDidMount",
value: function componentDidMount() {
var _this2 = this;
this.button = _reactDom.default.findDOMNode(this);
(0, _focusVisible.listenForFocusKeys)((0, _ownerWindow.default)(this.button));
if (this.props.action) {
this.props.action({
focusVisible: function focusVisible() {
_this2.setState({
focusVisible: true
});
_this2.button.focus();
}
});
}
}
}, {
key: "componentDidUpdate",
value: function componentDidUpdate(prevProps, prevState) {
if (this.props.focusRipple && !this.props.disableRipple && !prevState.focusVisible && this.state.focusVisible) {
this.ripple.pulsate();
}
}
}, {
key: "componentWillUnmount",
value: function componentWillUnmount() {
this.button = null;
clearTimeout(this.focusVisibleTimeout);
}
}, {
key: "render",
value: function render() {
var _classNames;
var _props = this.props,
action = _props.action,
buttonRef = _props.buttonRef,
centerRipple = _props.centerRipple,
children = _props.children,
classes = _props.classes,
classNameProp = _props.className,
component = _props.component,
disabled = _props.disabled,
disableRipple = _props.disableRipple,
disableTouchRipple = _props.disableTouchRipple,
focusRipple = _props.focusRipple,
focusVisibleClassName = _props.focusVisibleClassName,
onBlur = _props.onBlur,
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,
tabIndex = _props.tabIndex,
TouchRippleProps = _props.TouchRippleProps,
type = _props.type,
other = (0, _objectWithoutProperties2.default)(_props, ["action", "buttonRef", "centerRipple", "children", "classes", "className", "component", "disabled", "disableRipple", "disableTouchRipple", "focusRipple", "focusVisibleClassName", "onBlur", "onFocus", "onFocusVisible", "onKeyDown", "onKeyUp", "onMouseDown", "onMouseLeave", "onMouseUp", "onTouchEnd", "onTouchMove", "onTouchStart", "tabIndex", "TouchRippleProps", "type"]);
var className = (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.disabled, disabled), (0, _defineProperty2.default)(_classNames, classes.focusVisible, this.state.focusVisible), (0, _defineProperty2.default)(_classNames, focusVisibleClassName, this.state.focusVisible), _classNames), classNameProp);
var buttonProps = {};
var ComponentProp = component;
if (ComponentProp === 'button' && other.href) {
ComponentProp = 'a';
}
if (ComponentProp === 'button') {
buttonProps.type = type || 'button';
buttonProps.disabled = disabled;
} else {
buttonProps.role = 'button';
}
return _react.default.createElement(ComponentProp, (0, _extends2.default)({
onBlur: this.handleBlur,
onFocus: this.handleFocus,
onKeyDown: this.handleKeyDown,
onKeyUp: this.handleKeyUp,
onMouseDown: this.handleMouseDown,
onMouseLeave: this.handleMouseLeave,
onMouseUp: this.handleMouseUp,
onTouchEnd: this.handleTouchEnd,
onTouchMove: this.handleTouchMove,
onTouchStart: this.handleTouchStart,
tabIndex: disabled ? '-1' : tabIndex,
className: className,
ref: buttonRef
}, buttonProps, other), children, !disableRipple && !disabled ? _react.default.createElement(_TouchRipple.default, (0, _extends2.default)({
innerRef: this.onRippleRef,
center: centerRipple
}, TouchRippleProps)) : null);
}
}], [{
key: "getDerivedStateFromProps",
value: function getDerivedStateFromProps(nextProps, prevState) {
if (typeof prevState.focusVisible === 'undefined') {
return {
focusVisible: false,
lastDisabled: nextProps.disabled
};
} // The blur won't fire when the disabled state is set on a focused input.
// We need to book keep the focused state manually.
if (!prevState.prevState && nextProps.disabled && prevState.focusVisible) {
return {
focusVisible: false,
lastDisabled: nextProps.disabled
};
}
return {
lastDisabled: nextProps.disabled
};
}
}]);
return ButtonBase;
}(_react.default.Component);
ButtonBase.propTypes = true ? {
/**
* Callback fired when the component mounts.
* This is useful when you want to trigger an action programmatically.
* It currently only supports `focusVisible()` action.
*
* @param {object} actions This object contains all possible actions
* that can be triggered programmatically.
*/
action: _propTypes.default.func,
/**
* Use that property to pass a ref callback to the native button component.
*/
buttonRef: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
/**
* If `true`, the ripples will be centered.
* They won't start at the cursor interaction position.
*/
centerRipple: _propTypes.default.bool,
/**
* The content of the component.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* The component used for the root node.
* Either a string to use a DOM element or a component.
*/
component: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* If `true`, the base button will be disabled.
*/
disabled: _propTypes.default.bool,
/**
* If `true`, the ripple effect will be disabled.
*/
disableRipple: _propTypes.default.bool,
/**
* If `true`, the touch ripple effect will be disabled.
*/
disableTouchRipple: _propTypes.default.bool,
/**
* If `true`, the base button will have a keyboard focus ripple.
* `disableRipple` must also be `false`.
*/
focusRipple: _propTypes.default.bool,
/**
* This property can help a person know which element has the keyboard focus.
* The class name will be applied when the element gain the focus throught a keyboard interaction.
* It's a polyfill for the [CSS :focus-visible feature](https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo).
* The rational for using this feature [is explain here](https://github.com/WICG/focus-visible/blob/master/explainer.md).
*/
focusVisibleClassName: _propTypes.default.string,
/**
* @ignore
*/
onBlur: _propTypes.default.func,
/**
* @ignore
*/
onClick: _propTypes.default.func,
/**
* @ignore
*/
onFocus: _propTypes.default.func,
/**
* Callback fired when the component is focused with a keyboard.
* We trigger a `onFocus` callback too.
*/
onFocusVisible: _propTypes.default.func,
/**
* @ignore
*/
onKeyDown: _propTypes.default.func,
/**
* @ignore
*/
onKeyUp: _propTypes.default.func,
/**
* @ignore
*/
onMouseDown: _propTypes.default.func,
/**
* @ignore
*/
onMouseLeave: _propTypes.default.func,
/**
* @ignore
*/
onMouseUp: _propTypes.default.func,
/**
* @ignore
*/
onTouchEnd: _propTypes.default.func,
/**
* @ignore
*/
onTouchMove: _propTypes.default.func,
/**
* @ignore
*/
onTouchStart: _propTypes.default.func,
/**
* @ignore
*/
role: _propTypes.default.string,
/**
* @ignore
*/
tabIndex: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
/**
* Properties applied to the `TouchRipple` element.
*/
TouchRippleProps: _propTypes.default.object,
/**
* Used to control the button's purpose.
* This property passes the value to the `type` attribute of the native button component.
* Valid property values include `button`, `submit`, and `reset`.
*/
type: _propTypes.default.string
} : undefined;
ButtonBase.defaultProps = {
centerRipple: false,
component: 'button',
disableRipple: false,
disableTouchRipple: false,
focusRipple: false,
tabIndex: '0',
type: 'button'
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiButtonBase'
})(ButtonBase);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/ButtonBase/Ripple.js":
/*!*************************************************************!*\
!*** ./node_modules/@material-ui/core/ButtonBase/Ripple.js ***!
\*************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js"));
var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/inherits */ "./node_modules/@babel/runtime/helpers/builtin/inherits.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _Transition = _interopRequireDefault(__webpack_require__(/*! react-transition-group/Transition */ "./node_modules/@material-ui/core/node_modules/react-transition-group/Transition.js"));
/**
* @ignore - internal component.
*/
var Ripple =
/*#__PURE__*/
function (_React$Component) {
(0, _inherits2.default)(Ripple, _React$Component);
function Ripple() {
var _ref;
var _temp, _this;
(0, _classCallCheck2.default)(this, Ripple);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
return (0, _possibleConstructorReturn2.default)(_this, (_temp = _this = (0, _possibleConstructorReturn2.default)(this, (_ref = Ripple.__proto__ || Object.getPrototypeOf(Ripple)).call.apply(_ref, [this].concat(args))), _this.state = {
visible: false,
leaving: false
}, _this.handleEnter = function () {
_this.setState({
visible: true
});
}, _this.handleExit = function () {
_this.setState({
leaving: true
});
}, _temp));
}
(0, _createClass2.default)(Ripple, [{
key: "render",
value: function render() {
var _classNames, _classNames2;
var _props = this.props,
classes = _props.classes,
classNameProp = _props.className,
pulsate = _props.pulsate,
rippleX = _props.rippleX,
rippleY = _props.rippleY,
rippleSize = _props.rippleSize,
other = (0, _objectWithoutProperties2.default)(_props, ["classes", "className", "pulsate", "rippleX", "rippleY", "rippleSize"]);
var _state = this.state,
visible = _state.visible,
leaving = _state.leaving;
var rippleClassName = (0, _classnames.default)(classes.ripple, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.rippleVisible, visible), (0, _defineProperty2.default)(_classNames, classes.ripplePulsate, pulsate), _classNames), classNameProp);
var rippleStyles = {
width: rippleSize,
height: rippleSize,
top: -(rippleSize / 2) + rippleY,
left: -(rippleSize / 2) + rippleX
};
var childClassName = (0, _classnames.default)(classes.child, (_classNames2 = {}, (0, _defineProperty2.default)(_classNames2, classes.childLeaving, leaving), (0, _defineProperty2.default)(_classNames2, classes.childPulsate, pulsate), _classNames2));
return _react.default.createElement(_Transition.default, (0, _extends2.default)({
onEnter: this.handleEnter,
onExit: this.handleExit
}, other), _react.default.createElement("span", {
className: rippleClassName,
style: rippleStyles
}, _react.default.createElement("span", {
className: childClassName
})));
}
}]);
return Ripple;
}(_react.default.Component);
Ripple.propTypes = true ? {
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* If `true`, the ripple pulsates, typically indicating the keyboard focus state of an element.
*/
pulsate: _propTypes.default.bool,
/**
* Diameter of the ripple.
*/
rippleSize: _propTypes.default.number,
/**
* Horizontal position of the ripple center.
*/
rippleX: _propTypes.default.number,
/**
* Vertical position of the ripple center.
*/
rippleY: _propTypes.default.number
} : undefined;
Ripple.defaultProps = {
pulsate: false
};
var _default = Ripple;
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/ButtonBase/TouchRipple.js":
/*!******************************************************************!*\
!*** ./node_modules/@material-ui/core/ButtonBase/TouchRipple.js ***!
\******************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = exports.DELAY_RIPPLE = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/toConsumableArray */ "./node_modules/@babel/runtime/helpers/builtin/toConsumableArray.js"));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js"));
var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/inherits */ "./node_modules/@babel/runtime/helpers/builtin/inherits.js"));
var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/assertThisInitialized */ "./node_modules/@babel/runtime/helpers/builtin/assertThisInitialized.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "./node_modules/react-dom/index.js"));
var _TransitionGroup = _interopRequireDefault(__webpack_require__(/*! react-transition-group/TransitionGroup */ "./node_modules/@material-ui/core/node_modules/react-transition-group/TransitionGroup.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _Ripple = _interopRequireDefault(__webpack_require__(/*! ./Ripple */ "./node_modules/@material-ui/core/ButtonBase/Ripple.js"));
var DURATION = 550;
var DELAY_RIPPLE = 80;
exports.DELAY_RIPPLE = DELAY_RIPPLE;
var styles = function styles(theme) {
return {
root: {
display: 'block',
position: 'absolute',
overflow: 'hidden',
borderRadius: 'inherit',
width: '100%',
height: '100%',
left: 0,
top: 0,
pointerEvents: 'none',
zIndex: 0
},
ripple: {
width: 50,
height: 50,
left: 0,
top: 0,
opacity: 0,
position: 'absolute'
},
rippleVisible: {
opacity: 0.3,
transform: 'scale(1)',
animation: "mui-ripple-enter ".concat(DURATION, "ms ").concat(theme.transitions.easing.easeInOut)
},
ripplePulsate: {
animationDuration: "".concat(theme.transitions.duration.shorter, "ms")
},
child: {
opacity: 1,
display: 'block',
width: '100%',
height: '100%',
borderRadius: '50%',
backgroundColor: 'currentColor'
},
childLeaving: {
opacity: 0,
animation: "mui-ripple-exit ".concat(DURATION, "ms ").concat(theme.transitions.easing.easeInOut)
},
childPulsate: {
position: 'absolute',
left: 0,
top: 0,
animation: "mui-ripple-pulsate 2500ms ".concat(theme.transitions.easing.easeInOut, " 200ms infinite")
},
'@keyframes mui-ripple-enter': {
'0%': {
transform: 'scale(0)',
opacity: 0.1
},
'100%': {
transform: 'scale(1)',
opacity: 0.3
}
},
'@keyframes mui-ripple-exit': {
'0%': {
opacity: 1
},
'100%': {
opacity: 0
}
},
'@keyframes mui-ripple-pulsate': {
'0%': {
transform: 'scale(1)'
},
'50%': {
transform: 'scale(0.92)'
},
'100%': {
transform: 'scale(1)'
}
}
};
};
exports.styles = styles;
var TouchRipple =
/*#__PURE__*/
function (_React$PureComponent) {
(0, _inherits2.default)(TouchRipple, _React$PureComponent);
function TouchRipple() {
var _ref;
var _temp, _this;
(0, _classCallCheck2.default)(this, TouchRipple);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
return (0, _possibleConstructorReturn2.default)(_this, (_temp = _this = (0, _possibleConstructorReturn2.default)(this, (_ref = TouchRipple.__proto__ || Object.getPrototypeOf(TouchRipple)).call.apply(_ref, [this].concat(args))), _this.ignoringMouseDown = false, _this.startTimer = null, _this.startTimerCommit = null, _this.state = {
// eslint-disable-next-line react/no-unused-state
nextKey: 0,
ripples: []
}, _this.pulsate = function () {
_this.start({}, {
pulsate: true
});
}, _this.start = function () {
var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
var cb = arguments.length > 2 ? arguments[2] : undefined;
var _options$pulsate = options.pulsate,
pulsate = _options$pulsate === void 0 ? false : _options$pulsate,
_options$center = options.center,
center = _options$center === void 0 ? _this.props.center || options.pulsate : _options$center,
_options$fakeElement = options.fakeElement,
fakeElement = _options$fakeElement === void 0 ? false : _options$fakeElement;
if (event.type === 'mousedown' && _this.ignoringMouseDown) {
_this.ignoringMouseDown = false;
return;
}
if (event.type === 'touchstart') {
_this.ignoringMouseDown = true;
}
var element = fakeElement ? null : _reactDom.default.findDOMNode((0, _assertThisInitialized2.default)(_this));
var rect = element ? element.getBoundingClientRect() : {
width: 0,
height: 0,
left: 0,
top: 0
}; // Get the size of the ripple
var rippleX;
var rippleY;
var rippleSize;
if (center || event.clientX === 0 && event.clientY === 0 || !event.clientX && !event.touches) {
rippleX = Math.round(rect.width / 2);
rippleY = Math.round(rect.height / 2);
} else {
var clientX = event.clientX ? event.clientX : event.touches[0].clientX;
var clientY = event.clientY ? event.clientY : event.touches[0].clientY;
rippleX = Math.round(clientX - rect.left);
rippleY = Math.round(clientY - rect.top);
}
if (center) {
rippleSize = Math.sqrt((2 * Math.pow(rect.width, 2) + Math.pow(rect.height, 2)) / 3); // For some reason the animation is broken on Mobile Chrome if the size if even.
if (rippleSize % 2 === 0) {
rippleSize += 1;
}
} else {
var sizeX = Math.max(Math.abs((element ? element.clientWidth : 0) - rippleX), rippleX) * 2 + 2;
var sizeY = Math.max(Math.abs((element ? element.clientHeight : 0) - rippleY), rippleY) * 2 + 2;
rippleSize = Math.sqrt(Math.pow(sizeX, 2) + Math.pow(sizeY, 2));
} // Touche devices
if (event.touches) {
// Prepare the ripple effect.
_this.startTimerCommit = function () {
_this.startCommit({
pulsate: pulsate,
rippleX: rippleX,
rippleY: rippleY,
rippleSize: rippleSize,
cb: cb
});
}; // Deplay the execution of the ripple effect.
_this.startTimer = setTimeout(function () {
if (_this.startTimerCommit) {
_this.startTimerCommit();
_this.startTimerCommit = null;
}
}, DELAY_RIPPLE); // We have to make a tradeoff with this value.
} else {
_this.startCommit({
pulsate: pulsate,
rippleX: rippleX,
rippleY: rippleY,
rippleSize: rippleSize,
cb: cb
});
}
}, _this.startCommit = function (params) {
var pulsate = params.pulsate,
rippleX = params.rippleX,
rippleY = params.rippleY,
rippleSize = params.rippleSize,
cb = params.cb;
_this.setState(function (state) {
return {
nextKey: state.nextKey + 1,
ripples: (0, _toConsumableArray2.default)(state.ripples).concat([_react.default.createElement(_Ripple.default, {
key: state.nextKey,
classes: _this.props.classes,
timeout: {
exit: DURATION,
enter: DURATION
},
pulsate: pulsate,
rippleX: rippleX,
rippleY: rippleY,
rippleSize: rippleSize
})])
};
}, cb);
}, _this.stop = function (event, cb) {
clearTimeout(_this.startTimer);
var ripples = _this.state.ripples; // The touch interaction occures to quickly.
// We still want to show ripple effect.
if (event.type === 'touchend' && _this.startTimerCommit) {
event.persist();
_this.startTimerCommit();
_this.startTimerCommit = null;
_this.startTimer = setTimeout(function () {
_this.stop(event, cb);
}, 0);
return;
}
_this.startTimerCommit = null;
if (ripples && ripples.length) {
_this.setState({
ripples: ripples.slice(1)
}, cb);
}
}, _temp));
}
(0, _createClass2.default)(TouchRipple, [{
key: "componentWillUnmount",
value: function componentWillUnmount() {
clearTimeout(this.startTimer);
}
}, {
key: "render",
value: function render() {
var _props = this.props,
center = _props.center,
classes = _props.classes,
className = _props.className,
other = (0, _objectWithoutProperties2.default)(_props, ["center", "classes", "className"]);
return _react.default.createElement(_TransitionGroup.default, (0, _extends2.default)({
component: "span",
enter: true,
exit: true,
className: (0, _classnames.default)(classes.root, className)
}, other), this.state.ripples);
}
}]);
return TouchRipple;
}(_react.default.PureComponent);
TouchRipple.propTypes = true ? {
/**
* If `true`, the ripple starts at the center of the component
* rather than at the point of interaction.
*/
center: _propTypes.default.bool,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string
} : undefined;
TouchRipple.defaultProps = {
center: false
};
var _default = (0, _withStyles.default)(styles, {
flip: false,
name: 'MuiTouchRipple'
})(TouchRipple);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/ButtonBase/createRippleHandler.js":
/*!**************************************************************************!*\
!*** ./node_modules/@material-ui/core/ButtonBase/createRippleHandler.js ***!
\**************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
function createRippleHandler(instance, eventName, action, cb) {
return function handleEvent(event) {
if (cb) {
cb.call(instance, event);
}
var ignore = false;
if (event.defaultPrevented) {
ignore = true;
}
if (instance.props.disableTouchRipple && eventName !== 'Blur') {
ignore = true;
}
if (!ignore && instance.ripple) {
instance.ripple[action](event);
}
if (typeof instance.props["on".concat(eventName)] === 'function') {
instance.props["on".concat(eventName)](event);
}
return true;
};
}
var _default = createRippleHandler;
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/ButtonBase/focusVisible.js":
/*!*******************************************************************!*\
!*** ./node_modules/@material-ui/core/ButtonBase/focusVisible.js ***!
\*******************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.detectFocusVisible = detectFocusVisible;
exports.listenForFocusKeys = listenForFocusKeys;
var _keycode = _interopRequireDefault(__webpack_require__(/*! keycode */ "./node_modules/keycode/index.js"));
var _warning = _interopRequireDefault(__webpack_require__(/*! warning */ "./node_modules/@material-ui/core/node_modules/warning/warning.js"));
var _ownerDocument = _interopRequireDefault(__webpack_require__(/*! ../utils/ownerDocument */ "./node_modules/@material-ui/core/utils/ownerDocument.js"));
// weak
var internal = {
focusKeyPressed: false,
keyUpEventTimeout: -1
};
function detectFocusVisible(instance, element, callback) {
var attempt = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 1;
true ? (0, _warning.default)(instance.focusVisibleCheckTime, 'Material-UI: missing instance.focusVisibleCheckTime.') : undefined;
true ? (0, _warning.default)(instance.focusVisibleMaxCheckTimes, 'Material-UI: missing instance.focusVisibleMaxCheckTimes.') : undefined;
instance.focusVisibleTimeout = setTimeout(function () {
var doc = (0, _ownerDocument.default)(element);
if (internal.focusKeyPressed && (doc.activeElement === element || element.contains(doc.activeElement))) {
callback();
} else if (attempt < instance.focusVisibleMaxCheckTimes) {
detectFocusVisible(instance, element, callback, attempt + 1);
}
}, instance.focusVisibleCheckTime);
}
var FOCUS_KEYS = ['tab', 'enter', 'space', 'esc', 'up', 'down', 'left', 'right'];
function isFocusKey(event) {
return FOCUS_KEYS.indexOf((0, _keycode.default)(event)) > -1;
}
var handleKeyUpEvent = function handleKeyUpEvent(event) {
if (isFocusKey(event)) {
internal.focusKeyPressed = true; // Let's consider that the user is using a keyboard during a window frame of 1s.
clearTimeout(internal.keyUpEventTimeout);
internal.keyUpEventTimeout = setTimeout(function () {
internal.focusKeyPressed = false;
}, 1e3);
}
};
function listenForFocusKeys(win) {
// The event listener will only be added once per window.
// Duplicate event listeners will be ignored by addEventListener.
// Also, this logic is client side only, we don't need a teardown.
win.addEventListener('keyup', handleKeyUpEvent);
}
/***/ }),
/***/ "./node_modules/@material-ui/core/ButtonBase/index.js":
/*!************************************************************!*\
!*** ./node_modules/@material-ui/core/ButtonBase/index.js ***!
\************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _ButtonBase.default;
}
});
var _ButtonBase = _interopRequireDefault(__webpack_require__(/*! ./ButtonBase */ "./node_modules/@material-ui/core/ButtonBase/ButtonBase.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/Card/Card.js":
/*!*****************************************************!*\
!*** ./node_modules/@material-ui/core/Card/Card.js ***!
\*****************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _Paper = _interopRequireDefault(__webpack_require__(/*! ../Paper */ "./node_modules/@material-ui/core/Paper/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
// @inheritedComponent Paper
var styles = {
root: {
overflow: 'hidden'
}
};
exports.styles = styles;
function Card(props) {
var classes = props.classes,
className = props.className,
raised = props.raised,
other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "raised"]);
return _react.default.createElement(_Paper.default, (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, className),
elevation: raised ? 8 : 1
}, other));
}
Card.propTypes = true ? {
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* If `true`, the card will use raised styling.
*/
raised: _propTypes.default.bool
} : undefined;
Card.defaultProps = {
raised: false
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiCard'
})(Card);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Card/index.js":
/*!******************************************************!*\
!*** ./node_modules/@material-ui/core/Card/index.js ***!
\******************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _Card.default;
}
});
var _Card = _interopRequireDefault(__webpack_require__(/*! ./Card */ "./node_modules/@material-ui/core/Card/Card.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/CardActions/CardActions.js":
/*!*******************************************************************!*\
!*** ./node_modules/@material-ui/core/CardActions/CardActions.js ***!
\*******************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _reactHelpers = __webpack_require__(/*! ../utils/reactHelpers */ "./node_modules/@material-ui/core/utils/reactHelpers.js");
__webpack_require__(/*! ../Button */ "./node_modules/@material-ui/core/Button/index.js");
// So we don't have any override priority issue.
var styles = function styles(theme) {
return {
root: (0, _defineProperty2.default)({
display: 'flex',
alignItems: 'center',
boxSizing: 'border-box',
padding: '8px 4px'
}, theme.breakpoints.up('sm'), {
padding: '8px 12px'
}),
action: {
margin: '0 4px'
}
};
};
exports.styles = styles;
function CardActions(props) {
var disableActionSpacing = props.disableActionSpacing,
children = props.children,
classes = props.classes,
className = props.className,
other = (0, _objectWithoutProperties2.default)(props, ["disableActionSpacing", "children", "classes", "className"]);
return _react.default.createElement("div", (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, className)
}, other), disableActionSpacing ? children : (0, _reactHelpers.cloneChildrenWithClassName)(children, classes.action));
}
CardActions.propTypes = true ? {
/**
* The content of the component.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* If `true`, the card actions do not have additional margin.
*/
disableActionSpacing: _propTypes.default.bool
} : undefined;
CardActions.defaultProps = {
disableActionSpacing: false
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiCardActions'
})(CardActions);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/CardActions/index.js":
/*!*************************************************************!*\
!*** ./node_modules/@material-ui/core/CardActions/index.js ***!
\*************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _CardActions.default;
}
});
var _CardActions = _interopRequireDefault(__webpack_require__(/*! ./CardActions */ "./node_modules/@material-ui/core/CardActions/CardActions.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/CardContent/CardContent.js":
/*!*******************************************************************!*\
!*** ./node_modules/@material-ui/core/CardContent/CardContent.js ***!
\*******************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var styles = function styles(theme) {
return {
root: theme.mixins.gutters({
paddingTop: 16,
paddingBottom: 16,
'&:last-child': {
paddingBottom: 24
}
})
};
};
exports.styles = styles;
function CardContent(props) {
var classes = props.classes,
className = props.className,
Component = props.component,
other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "component"]);
return _react.default.createElement(Component, (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, className)
}, other));
}
CardContent.propTypes = true ? {
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* The component used for the root node.
* Either a string to use a DOM element or a component.
*/
component: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object])
} : undefined;
CardContent.defaultProps = {
component: 'div'
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiCardContent'
})(CardContent);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/CardContent/index.js":
/*!*************************************************************!*\
!*** ./node_modules/@material-ui/core/CardContent/index.js ***!
\*************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _CardContent.default;
}
});
var _CardContent = _interopRequireDefault(__webpack_require__(/*! ./CardContent */ "./node_modules/@material-ui/core/CardContent/CardContent.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/CardHeader/CardHeader.js":
/*!*****************************************************************!*\
!*** ./node_modules/@material-ui/core/CardHeader/CardHeader.js ***!
\*****************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _Typography = _interopRequireDefault(__webpack_require__(/*! ../Typography */ "./node_modules/@material-ui/core/Typography/index.js"));
var styles = function styles(theme) {
return {
root: theme.mixins.gutters({
display: 'flex',
alignItems: 'center',
paddingTop: 16,
paddingBottom: 16
}),
avatar: {
flex: '0 0 auto',
marginRight: 16
},
action: {
flex: '0 0 auto',
alignSelf: 'flex-start',
marginTop: -8,
marginRight: -16
},
content: {
flex: '1 1 auto'
},
title: {},
subheader: {}
};
};
exports.styles = styles;
function CardHeader(props) {
var action = props.action,
avatar = props.avatar,
classes = props.classes,
classNameProp = props.className,
Component = props.component,
subheader = props.subheader,
title = props.title,
other = (0, _objectWithoutProperties2.default)(props, ["action", "avatar", "classes", "className", "component", "subheader", "title"]);
return _react.default.createElement(Component, (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, classNameProp)
}, other), avatar && _react.default.createElement("div", {
className: classes.avatar
}, avatar), _react.default.createElement("div", {
className: classes.content
}, _react.default.createElement(_Typography.default, {
variant: avatar ? 'body2' : 'headline',
component: "span",
className: classes.title
}, title), subheader && _react.default.createElement(_Typography.default, {
variant: avatar ? 'body2' : 'body1',
component: "span",
color: "textSecondary",
className: classes.subheader
}, subheader)), action && _react.default.createElement("div", {
className: classes.action
}, action));
}
CardHeader.propTypes = true ? {
/**
* The action to display in the card header.
*/
action: _propTypes.default.node,
/**
* The Avatar for the Card Header.
*/
avatar: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* The component used for the root node.
* Either a string to use a DOM element or a component.
*/
component: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* The content of the component.
*/
subheader: _propTypes.default.node,
/**
* The content of the Card Title.
*/
title: _propTypes.default.node
} : undefined;
CardHeader.defaultProps = {
component: 'div'
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiCardHeader'
})(CardHeader);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/CardHeader/index.js":
/*!************************************************************!*\
!*** ./node_modules/@material-ui/core/CardHeader/index.js ***!
\************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _CardHeader.default;
}
});
var _CardHeader = _interopRequireDefault(__webpack_require__(/*! ./CardHeader */ "./node_modules/@material-ui/core/CardHeader/CardHeader.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/CardMedia/CardMedia.js":
/*!***************************************************************!*\
!*** ./node_modules/@material-ui/core/CardMedia/CardMedia.js ***!
\***************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectSpread */ "./node_modules/@babel/runtime/helpers/builtin/objectSpread.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _warning = _interopRequireDefault(__webpack_require__(/*! warning */ "./node_modules/@material-ui/core/node_modules/warning/warning.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var styles = {
root: {
display: 'block',
backgroundSize: 'cover',
backgroundRepeat: 'no-repeat',
backgroundPosition: 'center'
},
media: {
width: '100%'
}
};
exports.styles = styles;
var MEDIA_COMPONENTS = ['video', 'audio', 'picture', 'iframe', 'img'];
function CardMedia(props) {
var classes = props.classes,
className = props.className,
Component = props.component,
image = props.image,
src = props.src,
style = props.style,
other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "component", "image", "src", "style"]);
true ? (0, _warning.default)(Boolean(image || src), 'Material-UI: either `image` or `src` property must be specified.') : undefined;
var isMediaComponent = MEDIA_COMPONENTS.indexOf(Component) !== -1;
var composedStyle = !isMediaComponent && image ? (0, _objectSpread2.default)({
backgroundImage: "url(\"".concat(image, "\")")
}, style) : style;
return _react.default.createElement(Component, (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, (0, _defineProperty2.default)({}, classes.media, isMediaComponent), className),
style: composedStyle,
src: isMediaComponent ? image || src : undefined
}, other));
}
CardMedia.propTypes = true ? {
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* Component for rendering image.
* Either a string to use a DOM element or a component.
*/
component: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* Image to be displayed as a background image.
* Either `image` or `src` prop must be specified.
* Note that caller must specify height otherwise the image will not be visible.
*/
image: _propTypes.default.string,
/**
* An alias for `image` property.
* Available only with media components.
* Media components: `video`, `audio`, `picture`, `iframe`, `img`.
*/
src: _propTypes.default.string,
/**
* @ignore
*/
style: _propTypes.default.object
} : undefined;
CardMedia.defaultProps = {
component: 'div'
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiCardMedia'
})(CardMedia);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/CardMedia/index.js":
/*!***********************************************************!*\
!*** ./node_modules/@material-ui/core/CardMedia/index.js ***!
\***********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _CardMedia.default;
}
});
var _CardMedia = _interopRequireDefault(__webpack_require__(/*! ./CardMedia */ "./node_modules/@material-ui/core/CardMedia/CardMedia.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/Checkbox/Checkbox.js":
/*!*************************************************************!*\
!*** ./node_modules/@material-ui/core/Checkbox/Checkbox.js ***!
\*************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _SwitchBase = _interopRequireDefault(__webpack_require__(/*! ../internal/SwitchBase */ "./node_modules/@material-ui/core/internal/SwitchBase.js"));
var _CheckBoxOutlineBlank = _interopRequireDefault(__webpack_require__(/*! ../internal/svg-icons/CheckBoxOutlineBlank */ "./node_modules/@material-ui/core/internal/svg-icons/CheckBoxOutlineBlank.js"));
var _CheckBox = _interopRequireDefault(__webpack_require__(/*! ../internal/svg-icons/CheckBox */ "./node_modules/@material-ui/core/internal/svg-icons/CheckBox.js"));
var _IndeterminateCheckBox = _interopRequireDefault(__webpack_require__(/*! ../internal/svg-icons/IndeterminateCheckBox */ "./node_modules/@material-ui/core/internal/svg-icons/IndeterminateCheckBox.js"));
var _helpers = __webpack_require__(/*! ../utils/helpers */ "./node_modules/@material-ui/core/utils/helpers.js");
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var styles = function styles(theme) {
return {
root: {
color: theme.palette.text.secondary
},
checked: {},
disabled: {},
colorPrimary: {
'&$checked': {
color: theme.palette.primary.main
},
'&$disabled': {
color: theme.palette.action.disabled
}
},
colorSecondary: {
'&$checked': {
color: theme.palette.secondary.main
},
'&$disabled': {
color: theme.palette.action.disabled
}
}
};
};
exports.styles = styles;
function Checkbox(props) {
var checkedIcon = props.checkedIcon,
classes = props.classes,
color = props.color,
icon = props.icon,
indeterminate = props.indeterminate,
indeterminateIcon = props.indeterminateIcon,
other = (0, _objectWithoutProperties2.default)(props, ["checkedIcon", "classes", "color", "icon", "indeterminate", "indeterminateIcon"]);
return _react.default.createElement(_SwitchBase.default, (0, _extends2.default)({
checkedIcon: indeterminate ? indeterminateIcon : checkedIcon,
classes: {
root: (0, _classnames.default)(classes.root, classes["color".concat((0, _helpers.capitalize)(color))]),
checked: classes.checked,
disabled: classes.disabled
},
icon: indeterminate ? indeterminateIcon : icon
}, other));
}
Checkbox.propTypes = true ? {
/**
* If `true`, the component is checked.
*/
checked: _propTypes.default.oneOfType([_propTypes.default.bool, _propTypes.default.string]),
/**
* The icon to display when the component is checked.
*/
checkedIcon: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* The color of the component. It supports those theme colors that make sense for this component.
*/
color: _propTypes.default.oneOf(['primary', 'secondary', 'default']),
/**
* If `true`, the switch will be disabled.
*/
disabled: _propTypes.default.bool,
/**
* If `true`, the ripple effect will be disabled.
*/
disableRipple: _propTypes.default.bool,
/**
* The icon to display when the component is unchecked.
*/
icon: _propTypes.default.node,
/**
* The id of the `input` element.
*/
id: _propTypes.default.string,
/**
* If `true`, the component appears indeterminate.
*/
indeterminate: _propTypes.default.bool,
/**
* The icon to display when the component is indeterminate.
*/
indeterminateIcon: _propTypes.default.node,
/**
* Properties applied to the `input` element.
*/
inputProps: _propTypes.default.object,
/**
* Use that property to pass a ref callback to the native input component.
*/
inputRef: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
/**
* Callback fired when the state is changed.
*
* @param {object} event The event source of the callback.
* You can pull out the new value by accessing `event.target.checked`.
* @param {boolean} checked The `checked` value of the switch
*/
onChange: _propTypes.default.func,
/**
* The input component property `type`.
*/
type: _propTypes.default.string,
/**
* The value of the component.
*/
value: _propTypes.default.string
} : undefined;
Checkbox.defaultProps = {
checkedIcon: _react.default.createElement(_CheckBox.default, null),
color: 'secondary',
icon: _react.default.createElement(_CheckBoxOutlineBlank.default, null),
indeterminate: false,
indeterminateIcon: _react.default.createElement(_IndeterminateCheckBox.default, null)
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiCheckbox'
})(Checkbox);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Checkbox/index.js":
/*!**********************************************************!*\
!*** ./node_modules/@material-ui/core/Checkbox/index.js ***!
\**********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _Checkbox.default;
}
});
var _Checkbox = _interopRequireDefault(__webpack_require__(/*! ./Checkbox */ "./node_modules/@material-ui/core/Checkbox/Checkbox.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/Chip/Chip.js":
/*!*****************************************************!*\
!*** ./node_modules/@material-ui/core/Chip/Chip.js ***!
\*****************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js"));
var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/inherits */ "./node_modules/@babel/runtime/helpers/builtin/inherits.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _keycode = _interopRequireDefault(__webpack_require__(/*! keycode */ "./node_modules/keycode/index.js"));
var _Cancel = _interopRequireDefault(__webpack_require__(/*! ../internal/svg-icons/Cancel */ "./node_modules/@material-ui/core/internal/svg-icons/Cancel.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _colorManipulator = __webpack_require__(/*! ../styles/colorManipulator */ "./node_modules/@material-ui/core/styles/colorManipulator.js");
var _unsupportedProp = _interopRequireDefault(__webpack_require__(/*! ../utils/unsupportedProp */ "./node_modules/@material-ui/core/utils/unsupportedProp.js"));
__webpack_require__(/*! ../Avatar/Avatar */ "./node_modules/@material-ui/core/Avatar/Avatar.js");
// So we don't have any override priority issue.
var styles = function styles(theme) {
var height = 32;
var backgroundColor = theme.palette.type === 'light' ? theme.palette.grey[300] : theme.palette.grey[700];
var deleteIconColor = (0, _colorManipulator.fade)(theme.palette.text.primary, 0.26);
return {
root: {
fontFamily: theme.typography.fontFamily,
fontSize: theme.typography.pxToRem(13),
display: 'inline-flex',
alignItems: 'center',
justifyContent: 'center',
height: height,
color: theme.palette.getContrastText(backgroundColor),
backgroundColor: backgroundColor,
borderRadius: height / 2,
whiteSpace: 'nowrap',
transition: theme.transitions.create(['background-color', 'box-shadow']),
// label will inherit this from root, then `clickable` class overrides this for both
cursor: 'default',
// We disable the focus ring for mouse, touch and keyboard users.
outline: 'none',
textDecoration: 'none',
border: 'none',
// Remove `button` border
padding: 0 // Remove `button` padding
},
clickable: {
// Remove grey highlight
WebkitTapHighlightColor: 'transparent',
cursor: 'pointer',
'&:hover, &:focus': {
backgroundColor: (0, _colorManipulator.emphasize)(backgroundColor, 0.08)
},
'&:active': {
boxShadow: theme.shadows[1],
backgroundColor: (0, _colorManipulator.emphasize)(backgroundColor, 0.12)
}
},
deletable: {
'&:focus': {
backgroundColor: (0, _colorManipulator.emphasize)(backgroundColor, 0.08)
}
},
avatar: {
marginRight: -4,
width: height,
height: height,
color: theme.palette.type === 'light' ? theme.palette.grey[700] : theme.palette.grey[300],
fontSize: theme.typography.pxToRem(16)
},
avatarChildren: {
width: 19,
height: 19
},
label: {
display: 'flex',
alignItems: 'center',
paddingLeft: 12,
paddingRight: 12,
userSelect: 'none',
whiteSpace: 'nowrap',
cursor: 'inherit'
},
deleteIcon: {
// Remove grey highlight
WebkitTapHighlightColor: 'transparent',
color: deleteIconColor,
cursor: 'pointer',
height: 'auto',
margin: '0 4px 0 -8px',
'&:hover': {
color: (0, _colorManipulator.fade)(deleteIconColor, 0.4)
}
}
};
};
/**
* Chips represent complex entities in small blocks, such as a contact.
*/
exports.styles = styles;
var Chip =
/*#__PURE__*/
function (_React$Component) {
(0, _inherits2.default)(Chip, _React$Component);
function Chip() {
var _ref;
var _temp, _this;
(0, _classCallCheck2.default)(this, Chip);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
return (0, _possibleConstructorReturn2.default)(_this, (_temp = _this = (0, _possibleConstructorReturn2.default)(this, (_ref = Chip.__proto__ || Object.getPrototypeOf(Chip)).call.apply(_ref, [this].concat(args))), _this.chipRef = null, _this.handleDeleteIconClick = function (event) {
// Stop the event from bubbling up to the `Chip`
event.stopPropagation();
var onDelete = _this.props.onDelete;
if (onDelete) {
onDelete(event);
}
}, _this.handleKeyDown = function (event) {
// Ignore events from children of `Chip`.
if (event.currentTarget !== event.target) {
return;
}
var _this$props = _this.props,
onClick = _this$props.onClick,
onDelete = _this$props.onDelete,
onKeyDown = _this$props.onKeyDown;
var key = (0, _keycode.default)(event);
if (onClick && (key === 'space' || key === 'enter')) {
event.preventDefault();
onClick(event);
} else if (onDelete && key === 'backspace') {
event.preventDefault();
onDelete(event);
} else if (key === 'esc') {
event.preventDefault();
if (_this.chipRef) {
_this.chipRef.blur();
}
}
if (onKeyDown) {
onKeyDown(event);
}
}, _temp));
}
(0, _createClass2.default)(Chip, [{
key: "render",
value: function render() {
var _this2 = this;
var _props = this.props,
avatarProp = _props.avatar,
classes = _props.classes,
classNameProp = _props.className,
clickable = _props.clickable,
Component = _props.component,
deleteIconProp = _props.deleteIcon,
label = _props.label,
onClick = _props.onClick,
onDelete = _props.onDelete,
onKeyDown = _props.onKeyDown,
tabIndexProp = _props.tabIndex,
other = (0, _objectWithoutProperties2.default)(_props, ["avatar", "classes", "className", "clickable", "component", "deleteIcon", "label", "onClick", "onDelete", "onKeyDown", "tabIndex"]);
var className = (0, _classnames.default)(classes.root, (0, _defineProperty2.default)({}, classes.clickable, onClick || clickable), (0, _defineProperty2.default)({}, classes.deletable, onDelete), classNameProp);
var deleteIcon = null;
if (onDelete) {
deleteIcon = deleteIconProp && _react.default.isValidElement(deleteIconProp) ? _react.default.cloneElement(deleteIconProp, {
className: (0, _classnames.default)(deleteIconProp.props.className, classes.deleteIcon),
onClick: this.handleDeleteIconClick
}) : _react.default.createElement(_Cancel.default, {
className: classes.deleteIcon,
onClick: this.handleDeleteIconClick
});
}
var avatar = null;
if (avatarProp && _react.default.isValidElement(avatarProp)) {
avatar = _react.default.cloneElement(avatarProp, {
className: (0, _classnames.default)(classes.avatar, avatarProp.props.className),
childrenClassName: (0, _classnames.default)(classes.avatarChildren, avatarProp.props.childrenClassName)
});
}
var tabIndex = tabIndexProp;
if (!tabIndex) {
tabIndex = onClick || onDelete || clickable ? 0 : -1;
}
return _react.default.createElement(Component, (0, _extends2.default)({
role: "button",
className: className,
tabIndex: tabIndex,
onClick: onClick,
onKeyDown: this.handleKeyDown,
ref: function ref(node) {
_this2.chipRef = node;
}
}, other), avatar, _react.default.createElement("span", {
className: classes.label
}, label), deleteIcon);
}
}]);
return Chip;
}(_react.default.Component);
Chip.propTypes = true ? {
/**
* Avatar element.
*/
avatar: _propTypes.default.element,
/**
* This property isn't supported.
* Use the `component` property if you need to change the children structure.
*/
children: _unsupportedProp.default,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* If true, the chip will appear clickable, and will raise when pressed,
* even if the onClick property is not defined. This can be used, for example,
* along with the component property to indicate an anchor Chip is clickable.
*/
clickable: _propTypes.default.bool,
/**
* The component used for the root node.
* Either a string to use a DOM element or a component.
*/
component: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* Override the default delete icon element. Shown only if `onDelete` is set.
*/
deleteIcon: _propTypes.default.element,
/**
* The content of the label.
*/
label: _propTypes.default.node,
/**
* @ignore
*/
onClick: _propTypes.default.func,
/**
* Callback function fired when the delete icon is clicked.
* If set, the delete icon will be shown.
*/
onDelete: _propTypes.default.func,
/**
* @ignore
*/
onKeyDown: _propTypes.default.func,
/**
* @ignore
*/
tabIndex: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string])
} : undefined;
Chip.defaultProps = {
clickable: false,
component: 'div'
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiChip'
})(Chip);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Chip/index.js":
/*!******************************************************!*\
!*** ./node_modules/@material-ui/core/Chip/index.js ***!
\******************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _Chip.default;
}
});
var _Chip = _interopRequireDefault(__webpack_require__(/*! ./Chip */ "./node_modules/@material-ui/core/Chip/Chip.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/CircularProgress/CircularProgress.js":
/*!*****************************************************************************!*\
!*** ./node_modules/@material-ui/core/CircularProgress/CircularProgress.js ***!
\*****************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectSpread */ "./node_modules/@babel/runtime/helpers/builtin/objectSpread.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _helpers = __webpack_require__(/*! ../utils/helpers */ "./node_modules/@material-ui/core/utils/helpers.js");
var SIZE = 44;
function getRelativeValue(value, min, max) {
var clampedValue = Math.min(Math.max(min, value), max);
return (clampedValue - min) / (max - min);
}
function easeOut(t) {
t = getRelativeValue(t, 0, 1); // https://gist.github.com/gre/1650294
t = (t -= 1) * t * t + 1;
return t;
}
function easeIn(t) {
return t * t;
}
var styles = function styles(theme) {
return {
root: {
display: 'inline-block',
lineHeight: 1 // Keep the progress centered
},
static: {
transition: theme.transitions.create('transform')
},
indeterminate: {
animation: 'mui-progress-circular-rotate 1.4s linear infinite'
},
colorPrimary: {
color: theme.palette.primary.main
},
colorSecondary: {
color: theme.palette.secondary.main
},
svg: {},
circle: {
stroke: 'currentColor' // Use butt to follow the specification, by chance, it's already the default CSS value.
// strokeLinecap: 'butt',
},
circleStatic: {
transition: theme.transitions.create('stroke-dashoffset')
},
circleIndeterminate: {
animation: 'mui-progress-circular-dash 1.4s ease-in-out infinite',
// Some default value that looks fine waiting for the animation to kicks in.
strokeDasharray: '80px, 200px',
strokeDashoffset: '0px' // Add the unit to fix a Edge 16 and below bug.
},
'@keyframes mui-progress-circular-rotate': {
'100%': {
transform: 'rotate(360deg)'
}
},
'@keyframes mui-progress-circular-dash': {
'0%': {
strokeDasharray: '1px, 200px',
strokeDashoffset: '0px'
},
'50%': {
strokeDasharray: '100px, 200px',
strokeDashoffset: '-15px'
},
'100%': {
strokeDasharray: '100px, 200px',
strokeDashoffset: '-120px'
}
}
};
};
/**
* ## ARIA
*
* If the progress bar is describing the loading progress of a particular region of a page,
* you should use `aria-describedby` to point to the progress bar, and set the `aria-busy`
* attribute to `true` on that region until it has finished loading.
*/
exports.styles = styles;
function CircularProgress(props) {
var _classNames, _classNames2;
var classes = props.classes,
className = props.className,
color = props.color,
size = props.size,
style = props.style,
thickness = props.thickness,
value = props.value,
variant = props.variant,
other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "color", "size", "style", "thickness", "value", "variant"]);
var circleStyle = {};
var rootStyle = {};
var rootProps = {};
if (variant === 'determinate' || variant === 'static') {
var circumference = 2 * Math.PI * ((SIZE - thickness) / 2);
circleStyle.strokeDasharray = circumference.toFixed(3);
rootProps['aria-valuenow'] = Math.round(value);
if (variant === 'static') {
circleStyle.strokeDashoffset = "".concat(((100 - value) / 100 * circumference).toFixed(3), "px");
rootStyle.transform = 'rotate(-90deg)';
} else {
circleStyle.strokeDashoffset = "".concat((easeIn((100 - value) / 100) * circumference).toFixed(3), "px");
rootStyle.transform = "rotate(".concat((easeOut(value / 70) * 270).toFixed(3), "deg)");
}
}
return _react.default.createElement("div", (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes["color".concat((0, _helpers.capitalize)(color))], color !== 'inherit'), (0, _defineProperty2.default)(_classNames, classes.indeterminate, variant === 'indeterminate'), (0, _defineProperty2.default)(_classNames, classes.static, variant === 'static'), _classNames), className),
style: (0, _objectSpread2.default)({
width: size,
height: size
}, rootStyle, style),
role: "progressbar"
}, rootProps, other), _react.default.createElement("svg", {
className: classes.svg,
viewBox: "".concat(SIZE / 2, " ").concat(SIZE / 2, " ").concat(SIZE, " ").concat(SIZE)
}, _react.default.createElement("circle", {
className: (0, _classnames.default)(classes.circle, (_classNames2 = {}, (0, _defineProperty2.default)(_classNames2, classes.circleIndeterminate, variant === 'indeterminate'), (0, _defineProperty2.default)(_classNames2, classes.circleStatic, variant === 'static'), _classNames2)),
style: circleStyle,
cx: SIZE,
cy: SIZE,
r: (SIZE - thickness) / 2,
fill: "none",
strokeWidth: thickness
})));
}
CircularProgress.propTypes = true ? {
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @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(['primary', 'secondary', 'inherit']),
/**
* The size of the circle.
*/
size: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
/**
* @ignore
*/
style: _propTypes.default.object,
/**
* The thickness of the circle.
*/
thickness: _propTypes.default.number,
/**
* The value of the progress indicator for the determinate and static variants.
* Value between 0 and 100.
*/
value: _propTypes.default.number,
/**
* The variant to use.
* Use indeterminate when there is no progress value.
*/
variant: _propTypes.default.oneOf(['determinate', 'indeterminate', 'static'])
} : undefined;
CircularProgress.defaultProps = {
color: 'primary',
size: 40,
thickness: 3.6,
value: 0,
variant: 'indeterminate'
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiCircularProgress',
flip: false
})(CircularProgress);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/CircularProgress/index.js":
/*!******************************************************************!*\
!*** ./node_modules/@material-ui/core/CircularProgress/index.js ***!
\******************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _CircularProgress.default;
}
});
var _CircularProgress = _interopRequireDefault(__webpack_require__(/*! ./CircularProgress */ "./node_modules/@material-ui/core/CircularProgress/CircularProgress.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/ClickAwayListener/ClickAwayListener.js":
/*!*******************************************************************************!*\
!*** ./node_modules/@material-ui/core/ClickAwayListener/ClickAwayListener.js ***!
\*******************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js"));
var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/inherits */ "./node_modules/@babel/runtime/helpers/builtin/inherits.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "./node_modules/react-dom/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _reactEventListener = _interopRequireDefault(__webpack_require__(/*! react-event-listener */ "./node_modules/react-event-listener/dist/react-event-listener.cjs.js"));
var _ownerDocument = _interopRequireDefault(__webpack_require__(/*! ../utils/ownerDocument */ "./node_modules/@material-ui/core/utils/ownerDocument.js"));
// @inheritedComponent EventListener
/**
* Listen for click events that occur somewhere in the document, outside of the element itself.
* For instance, if you need to hide a menu when people click anywhere else on your page.
*/
var ClickAwayListener =
/*#__PURE__*/
function (_React$Component) {
(0, _inherits2.default)(ClickAwayListener, _React$Component);
function ClickAwayListener() {
var _ref;
var _temp, _this;
(0, _classCallCheck2.default)(this, ClickAwayListener);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
return (0, _possibleConstructorReturn2.default)(_this, (_temp = _this = (0, _possibleConstructorReturn2.default)(this, (_ref = ClickAwayListener.__proto__ || Object.getPrototypeOf(ClickAwayListener)).call.apply(_ref, [this].concat(args))), _this.node = null, _this.mounted = null, _this.handleClickAway = function (event) {
// Ignore events that have been `event.preventDefault()` marked.
if (event.defaultPrevented) {
return;
} // IE11 support, which trigger the handleClickAway even after the unbind
if (!_this.mounted) {
return;
} // The child might render null.
if (!_this.node) {
return;
}
var doc = (0, _ownerDocument.default)(_this.node);
if (doc.documentElement && doc.documentElement.contains(event.target) && !_this.node.contains(event.target)) {
_this.props.onClickAway(event);
}
}, _temp));
}
(0, _createClass2.default)(ClickAwayListener, [{
key: "componentDidMount",
value: function componentDidMount() {
// Finds the first child when a component returns a fragment.
// https://github.com/facebook/react/blob/036ae3c6e2f056adffc31dfb78d1b6f0c63272f0/packages/react-dom/src/__tests__/ReactDOMFiber-test.js#L105
this.node = _reactDom.default.findDOMNode(this);
this.mounted = true;
}
}, {
key: "componentWillUnmount",
value: function componentWillUnmount() {
this.mounted = false;
}
}, {
key: "render",
value: function render() {
var _props = this.props,
children = _props.children,
mouseEvent = _props.mouseEvent,
touchEvent = _props.touchEvent,
onClickAway = _props.onClickAway,
other = (0, _objectWithoutProperties2.default)(_props, ["children", "mouseEvent", "touchEvent", "onClickAway"]);
var listenerProps = {};
if (mouseEvent !== false) {
listenerProps[mouseEvent] = this.handleClickAway;
}
if (touchEvent !== false) {
listenerProps[touchEvent] = this.handleClickAway;
}
return _react.default.createElement(_reactEventListener.default, (0, _extends2.default)({
target: "document"
}, listenerProps, other), children);
}
}]);
return ClickAwayListener;
}(_react.default.Component);
ClickAwayListener.propTypes = true ? {
/**
* The wrapped element.
*/
children: _propTypes.default.element.isRequired,
/**
* The mouse event to listen to. You can disable the listener by providing `false`.
*/
mouseEvent: _propTypes.default.oneOf(['onClick', 'onMouseDown', 'onMouseUp', false]),
/**
* Callback fired when a "click away" event is detected.
*/
onClickAway: _propTypes.default.func.isRequired,
/**
* The touch event to listen to. You can disable the listener by providing `false`.
*/
touchEvent: _propTypes.default.oneOf(['onTouchStart', 'onTouchEnd', false])
} : undefined;
ClickAwayListener.defaultProps = {
mouseEvent: 'onMouseUp',
touchEvent: 'onTouchEnd'
};
var _default = ClickAwayListener;
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/ClickAwayListener/index.js":
/*!*******************************************************************!*\
!*** ./node_modules/@material-ui/core/ClickAwayListener/index.js ***!
\*******************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _ClickAwayListener.default;
}
});
var _ClickAwayListener = _interopRequireDefault(__webpack_require__(/*! ./ClickAwayListener */ "./node_modules/@material-ui/core/ClickAwayListener/ClickAwayListener.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/Collapse/Collapse.js":
/*!*************************************************************!*\
!*** ./node_modules/@material-ui/core/Collapse/Collapse.js ***!
\*************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectSpread */ "./node_modules/@babel/runtime/helpers/builtin/objectSpread.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js"));
var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/inherits */ "./node_modules/@babel/runtime/helpers/builtin/inherits.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _Transition = _interopRequireDefault(__webpack_require__(/*! react-transition-group/Transition */ "./node_modules/@material-ui/core/node_modules/react-transition-group/Transition.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _transitions = __webpack_require__(/*! ../styles/transitions */ "./node_modules/@material-ui/core/styles/transitions.js");
var _utils = __webpack_require__(/*! ../transitions/utils */ "./node_modules/@material-ui/core/transitions/utils.js");
// @inheritedComponent Transition
var styles = function styles(theme) {
return {
container: {
height: 0,
overflow: 'hidden',
transition: theme.transitions.create('height')
},
entered: {
height: 'auto'
},
wrapper: {
// Hack to get children with a negative margin to not falsify the height computation.
display: 'flex'
},
wrapperInner: {
width: '100%'
}
};
};
/**
* The Collapse transition is used by the
* [Vertical Stepper](/demos/steppers#vertical-stepper) StepContent component.
* It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.
*/
exports.styles = styles;
var Collapse =
/*#__PURE__*/
function (_React$Component) {
(0, _inherits2.default)(Collapse, _React$Component);
function Collapse() {
var _ref;
var _temp, _this;
(0, _classCallCheck2.default)(this, Collapse);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
return (0, _possibleConstructorReturn2.default)(_this, (_temp = _this = (0, _possibleConstructorReturn2.default)(this, (_ref = Collapse.__proto__ || Object.getPrototypeOf(Collapse)).call.apply(_ref, [this].concat(args))), _this.wrapper = null, _this.autoTransitionDuration = null, _this.timer = null, _this.handleEnter = function (node) {
node.style.height = _this.props.collapsedHeight;
if (_this.props.onEnter) {
_this.props.onEnter(node);
}
}, _this.handleEntering = function (node) {
var _this$props = _this.props,
timeout = _this$props.timeout,
theme = _this$props.theme;
var wrapperHeight = _this.wrapper ? _this.wrapper.clientHeight : 0;
var _getTransitionProps = (0, _utils.getTransitionProps)(_this.props, {
mode: 'enter'
}),
transitionDuration = _getTransitionProps.duration;
if (timeout === 'auto') {
var duration2 = theme.transitions.getAutoHeightDuration(wrapperHeight);
node.style.transitionDuration = "".concat(duration2, "ms");
_this.autoTransitionDuration = duration2;
} else {
node.style.transitionDuration = typeof transitionDuration === 'string' ? transitionDuration : "".concat(transitionDuration, "ms");
}
node.style.height = "".concat(wrapperHeight, "px");
if (_this.props.onEntering) {
_this.props.onEntering(node);
}
}, _this.handleEntered = function (node) {
node.style.height = 'auto';
if (_this.props.onEntered) {
_this.props.onEntered(node);
}
}, _this.handleExit = function (node) {
var wrapperHeight = _this.wrapper ? _this.wrapper.clientHeight : 0;
node.style.height = "".concat(wrapperHeight, "px");
if (_this.props.onExit) {
_this.props.onExit(node);
}
}, _this.handleExiting = function (node) {
var _this$props2 = _this.props,
timeout = _this$props2.timeout,
theme = _this$props2.theme;
var wrapperHeight = _this.wrapper ? _this.wrapper.clientHeight : 0;
var _getTransitionProps2 = (0, _utils.getTransitionProps)(_this.props, {
mode: 'exit'
}),
transitionDuration = _getTransitionProps2.duration;
if (timeout === 'auto') {
var duration2 = theme.transitions.getAutoHeightDuration(wrapperHeight);
node.style.transitionDuration = "".concat(duration2, "ms");
_this.autoTransitionDuration = duration2;
} else {
node.style.transitionDuration = typeof transitionDuration === 'string' ? transitionDuration : "".concat(transitionDuration, "ms");
}
node.style.height = _this.props.collapsedHeight;
if (_this.props.onExiting) {
_this.props.onExiting(node);
}
}, _this.addEndListener = function (_, next) {
if (_this.props.timeout === 'auto') {
_this.timer = setTimeout(next, _this.autoTransitionDuration || 0);
}
}, _temp));
}
(0, _createClass2.default)(Collapse, [{
key: "componentWillUnmount",
value: function componentWillUnmount() {
clearTimeout(this.timer);
}
}, {
key: "render",
value: function render() {
var _this2 = this;
var _props = this.props,
children = _props.children,
classes = _props.classes,
className = _props.className,
collapsedHeight = _props.collapsedHeight,
Component = _props.component,
onEnter = _props.onEnter,
onEntered = _props.onEntered,
onEntering = _props.onEntering,
onExit = _props.onExit,
onExiting = _props.onExiting,
style = _props.style,
theme = _props.theme,
timeout = _props.timeout,
other = (0, _objectWithoutProperties2.default)(_props, ["children", "classes", "className", "collapsedHeight", "component", "onEnter", "onEntered", "onEntering", "onExit", "onExiting", "style", "theme", "timeout"]);
return _react.default.createElement(_Transition.default, (0, _extends2.default)({
onEnter: this.handleEnter,
onEntered: this.handleEntered,
onEntering: this.handleEntering,
onExit: this.handleExit,
onExiting: this.handleExiting,
addEndListener: this.addEndListener,
timeout: timeout === 'auto' ? null : timeout
}, other), function (state, childProps) {
return _react.default.createElement(Component, (0, _extends2.default)({
className: (0, _classnames.default)(classes.container, (0, _defineProperty2.default)({}, classes.entered, state === 'entered'), className),
style: (0, _objectSpread2.default)({}, style, {
minHeight: collapsedHeight
})
}, childProps), _react.default.createElement("div", {
className: classes.wrapper,
ref: function ref(node) {
_this2.wrapper = node;
}
}, _react.default.createElement("div", {
className: classes.wrapperInner
}, children)));
});
}
}]);
return Collapse;
}(_react.default.Component);
Collapse.propTypes = true ? {
/**
* The content node to be collapsed.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* The height of the container when collapsed.
*/
collapsedHeight: _propTypes.default.string,
/**
* The component used for the root node.
* Either a string to use a DOM element or a component.
*/
component: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* If `true`, the component will transition in.
*/
in: _propTypes.default.bool,
/**
* @ignore
*/
onEnter: _propTypes.default.func,
/**
* @ignore
*/
onEntered: _propTypes.default.func,
/**
* @ignore
*/
onEntering: _propTypes.default.func,
/**
* @ignore
*/
onExit: _propTypes.default.func,
/**
* @ignore
*/
onExiting: _propTypes.default.func,
/**
* @ignore
*/
style: _propTypes.default.object,
/**
* @ignore
*/
theme: _propTypes.default.object.isRequired,
/**
* The duration for the transition, in milliseconds.
* You may specify a single timeout for all transitions, or individually with an object.
*
* Set to 'auto' to automatically calculate transition time based on height.
*/
timeout: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.shape({
enter: _propTypes.default.number,
exit: _propTypes.default.number
}), _propTypes.default.oneOf(['auto'])])
} : undefined;
Collapse.defaultProps = {
collapsedHeight: '0px',
component: 'div',
timeout: _transitions.duration.standard
};
Collapse.muiSupportAuto = true;
var _default = (0, _withStyles.default)(styles, {
withTheme: true,
name: 'MuiCollapse'
})(Collapse);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Collapse/index.js":
/*!**********************************************************!*\
!*** ./node_modules/@material-ui/core/Collapse/index.js ***!
\**********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _Collapse.default;
}
});
var _Collapse = _interopRequireDefault(__webpack_require__(/*! ./Collapse */ "./node_modules/@material-ui/core/Collapse/Collapse.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/CssBaseline/CssBaseline.js":
/*!*******************************************************************!*\
!*** ./node_modules/@material-ui/core/CssBaseline/CssBaseline.js ***!
\*******************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js"));
var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/inherits */ "./node_modules/@babel/runtime/helpers/builtin/inherits.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _styles = __webpack_require__(/*! ../styles */ "./node_modules/@material-ui/core/styles/index.js");
var _exactProp = _interopRequireDefault(__webpack_require__(/*! ../utils/exactProp */ "./node_modules/@material-ui/core/utils/exactProp.js"));
/* eslint-disable react/no-unused-prop-types */
var styles = function styles(theme) {
return {
'@global': {
html: {
WebkitFontSmoothing: 'antialiased',
// Antialiasing.
MozOsxFontSmoothing: 'grayscale',
// Antialiasing.
// Change from `box-sizing: content-box` so that `width`
// is not affected by `padding` or `border`.
boxSizing: 'border-box'
},
'*, *::before, *::after': {
boxSizing: 'inherit'
},
body: {
margin: 0,
// Remove the margin in all browsers.
backgroundColor: theme.palette.background.default,
'@media print': {
// Save printer ink.
backgroundColor: theme.palette.common.white
}
}
}
};
};
/**
* Kickstart an elegant, consistent, and simple baseline to build upon.
*/
var CssBaseline =
/*#__PURE__*/
function (_React$Component) {
(0, _inherits2.default)(CssBaseline, _React$Component);
function CssBaseline() {
(0, _classCallCheck2.default)(this, CssBaseline);
return (0, _possibleConstructorReturn2.default)(this, (CssBaseline.__proto__ || Object.getPrototypeOf(CssBaseline)).apply(this, arguments));
}
(0, _createClass2.default)(CssBaseline, [{
key: "render",
value: function render() {
return this.props.children;
}
}]);
return CssBaseline;
}(_react.default.Component);
CssBaseline.propTypes = true ? {
/**
* You can wrap a node.
*/
children: _propTypes.default.node,
/**
* @ignore
*/
classes: _propTypes.default.object.isRequired
} : undefined;
CssBaseline.propTypes = true ? (0, _exactProp.default)(CssBaseline.propTypes) : undefined;
CssBaseline.defaultProps = {
children: null
};
var _default = (0, _styles.withStyles)(styles, {
name: 'MuiCssBaseline'
})(CssBaseline);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/CssBaseline/index.js":
/*!*************************************************************!*\
!*** ./node_modules/@material-ui/core/CssBaseline/index.js ***!
\*************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _CssBaseline.default;
}
});
var _CssBaseline = _interopRequireDefault(__webpack_require__(/*! ./CssBaseline */ "./node_modules/@material-ui/core/CssBaseline/CssBaseline.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/Dialog/Dialog.js":
/*!*********************************************************!*\
!*** ./node_modules/@material-ui/core/Dialog/Dialog.js ***!
\*********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectSpread */ "./node_modules/@babel/runtime/helpers/builtin/objectSpread.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _helpers = __webpack_require__(/*! ../utils/helpers */ "./node_modules/@material-ui/core/utils/helpers.js");
var _Modal = _interopRequireDefault(__webpack_require__(/*! ../Modal */ "./node_modules/@material-ui/core/Modal/index.js"));
var _Fade = _interopRequireDefault(__webpack_require__(/*! ../Fade */ "./node_modules/@material-ui/core/Fade/index.js"));
var _transitions = __webpack_require__(/*! ../styles/transitions */ "./node_modules/@material-ui/core/styles/transitions.js");
var _Paper = _interopRequireDefault(__webpack_require__(/*! ../Paper */ "./node_modules/@material-ui/core/Paper/index.js"));
// @inheritedComponent Modal
var styles = function styles(theme) {
return {
root: {},
scrollPaper: {
display: 'flex',
justifyContent: 'center',
alignItems: 'center'
},
scrollBody: {
overflowY: 'auto',
overflowX: 'hidden'
},
paper: {
display: 'flex',
flexDirection: 'column',
margin: 48,
position: 'relative',
overflowY: 'auto',
// Fix IE11 issue, to remove at some point.
// We disable the focus ring for mouse, touch and keyboard users.
outline: 'none'
},
paperScrollPaper: {
flex: '0 1 auto',
maxHeight: 'calc(100% - 96px)'
},
paperScrollBody: {
margin: '48px auto'
},
paperWidthXs: {
maxWidth: Math.max(theme.breakpoints.values.xs, 360),
'&$paperScrollBody': (0, _defineProperty2.default)({}, theme.breakpoints.down(Math.max(theme.breakpoints.values.xs, 360) + 48 * 2), {
margin: 48
})
},
paperWidthSm: {
maxWidth: theme.breakpoints.values.sm,
'&$paperScrollBody': (0, _defineProperty2.default)({}, theme.breakpoints.down(theme.breakpoints.values.sm + 48 * 2), {
margin: 48
})
},
paperWidthMd: {
maxWidth: theme.breakpoints.values.md,
'&$paperScrollBody': (0, _defineProperty2.default)({}, theme.breakpoints.down(theme.breakpoints.values.md + 48 * 2), {
margin: 48
})
},
paperFullWidth: {
width: '100%'
},
paperFullScreen: {
margin: 0,
width: '100%',
maxWidth: '100%',
height: '100%',
maxHeight: 'none',
borderRadius: 0
}
};
};
/**
* Dialogs are overlaid modal paper based components with a backdrop.
*/
exports.styles = styles;
function Dialog(props) {
var _classNames;
var BackdropProps = props.BackdropProps,
children = props.children,
classes = props.classes,
className = props.className,
disableBackdropClick = props.disableBackdropClick,
disableEscapeKeyDown = props.disableEscapeKeyDown,
fullScreen = props.fullScreen,
fullWidth = props.fullWidth,
maxWidth = props.maxWidth,
onBackdropClick = props.onBackdropClick,
onClose = props.onClose,
onEnter = props.onEnter,
onEntered = props.onEntered,
onEntering = props.onEntering,
onEscapeKeyDown = props.onEscapeKeyDown,
onExit = props.onExit,
onExited = props.onExited,
onExiting = props.onExiting,
open = props.open,
PaperProps = props.PaperProps,
scroll = props.scroll,
TransitionComponent = props.TransitionComponent,
transitionDuration = props.transitionDuration,
TransitionProps = props.TransitionProps,
other = (0, _objectWithoutProperties2.default)(props, ["BackdropProps", "children", "classes", "className", "disableBackdropClick", "disableEscapeKeyDown", "fullScreen", "fullWidth", "maxWidth", "onBackdropClick", "onClose", "onEnter", "onEntered", "onEntering", "onEscapeKeyDown", "onExit", "onExited", "onExiting", "open", "PaperProps", "scroll", "TransitionComponent", "transitionDuration", "TransitionProps"]);
return _react.default.createElement(_Modal.default, (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, classes["scroll".concat((0, _helpers.capitalize)(scroll))], className),
BackdropProps: (0, _objectSpread2.default)({
transitionDuration: transitionDuration
}, BackdropProps),
disableBackdropClick: disableBackdropClick,
disableEscapeKeyDown: disableEscapeKeyDown,
onBackdropClick: onBackdropClick,
onEscapeKeyDown: onEscapeKeyDown,
onClose: onClose,
open: open,
role: "dialog"
}, other), _react.default.createElement(TransitionComponent, (0, _extends2.default)({
appear: true,
"in": open,
timeout: transitionDuration,
onEnter: onEnter,
onEntering: onEntering,
onEntered: onEntered,
onExit: onExit,
onExiting: onExiting,
onExited: onExited
}, TransitionProps), _react.default.createElement(_Paper.default, (0, _extends2.default)({
elevation: 24,
className: (0, _classnames.default)(classes.paper, classes["paperScroll".concat((0, _helpers.capitalize)(scroll))], (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes["paperWidth".concat(maxWidth ? (0, _helpers.capitalize)(maxWidth) : '')], maxWidth), (0, _defineProperty2.default)(_classNames, classes.paperFullScreen, fullScreen), (0, _defineProperty2.default)(_classNames, classes.paperFullWidth, fullWidth), _classNames))
}, PaperProps), children)));
}
Dialog.propTypes = true ? {
/**
* @ignore
*/
BackdropProps: _propTypes.default.object,
/**
* Dialog children, usually the included sub-components.
*/
children: _propTypes.default.node.isRequired,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* If `true`, clicking the backdrop will not fire the `onClose` callback.
*/
disableBackdropClick: _propTypes.default.bool,
/**
* If `true`, hitting escape will not fire the `onClose` callback.
*/
disableEscapeKeyDown: _propTypes.default.bool,
/**
* If `true`, the dialog will be full-screen
*/
fullScreen: _propTypes.default.bool,
/**
* If `true`, the dialog stretches to `maxWidth`.
*/
fullWidth: _propTypes.default.bool,
/**
* Determine the max width of the dialog.
* The dialog width grows with the size of the screen, this property is useful
* on the desktop where you might need some coherent different width size across your
* application. Set to `false` to disable `maxWidth`.
*/
maxWidth: _propTypes.default.oneOf(['xs', 'sm', 'md', false]),
/**
* Callback fired when the backdrop is clicked.
*/
onBackdropClick: _propTypes.default.func,
/**
* Callback fired when the component requests to be closed.
*
* @param {object} event The event source of the callback
*/
onClose: _propTypes.default.func,
/**
* Callback fired before the dialog enters.
*/
onEnter: _propTypes.default.func,
/**
* Callback fired when the dialog has entered.
*/
onEntered: _propTypes.default.func,
/**
* Callback fired when the dialog is entering.
*/
onEntering: _propTypes.default.func,
/**
* Callback fired when the escape key is pressed,
* `disableKeyboard` is false and the modal is in focus.
*/
onEscapeKeyDown: _propTypes.default.func,
/**
* Callback fired before the dialog exits.
*/
onExit: _propTypes.default.func,
/**
* Callback fired when the dialog has exited.
*/
onExited: _propTypes.default.func,
/**
* Callback fired when the dialog is exiting.
*/
onExiting: _propTypes.default.func,
/**
* If `true`, the Dialog is open.
*/
open: _propTypes.default.bool.isRequired,
/**
* Properties applied to the [`Paper`](/api/paper) element.
*/
PaperProps: _propTypes.default.object,
/**
* Determine the container for scrolling the dialog.
*/
scroll: _propTypes.default.oneOf(['body', 'paper']),
/**
* Transition component.
*/
TransitionComponent: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* 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({
enter: _propTypes.default.number,
exit: _propTypes.default.number
})]),
/**
* Properties applied to the `Transition` element.
*/
TransitionProps: _propTypes.default.object
} : undefined;
Dialog.defaultProps = {
disableBackdropClick: false,
disableEscapeKeyDown: false,
fullScreen: false,
fullWidth: false,
maxWidth: 'sm',
scroll: 'paper',
TransitionComponent: _Fade.default,
transitionDuration: {
enter: _transitions.duration.enteringScreen,
exit: _transitions.duration.leavingScreen
}
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiDialog'
})(Dialog);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Dialog/index.js":
/*!********************************************************!*\
!*** ./node_modules/@material-ui/core/Dialog/index.js ***!
\********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _Dialog.default;
}
});
var _Dialog = _interopRequireDefault(__webpack_require__(/*! ./Dialog */ "./node_modules/@material-ui/core/Dialog/Dialog.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/DialogActions/DialogActions.js":
/*!***********************************************************************!*\
!*** ./node_modules/@material-ui/core/DialogActions/DialogActions.js ***!
\***********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _reactHelpers = __webpack_require__(/*! ../utils/reactHelpers */ "./node_modules/@material-ui/core/utils/reactHelpers.js");
__webpack_require__(/*! ../Button */ "./node_modules/@material-ui/core/Button/index.js");
// So we don't have any override priority issue.
var styles = {
root: {
display: 'flex',
alignItems: 'center',
justifyContent: 'flex-end',
flex: '0 0 auto',
margin: '8px 4px'
},
action: {
margin: '0 4px'
}
};
exports.styles = styles;
function DialogActions(props) {
var disableActionSpacing = props.disableActionSpacing,
children = props.children,
classes = props.classes,
className = props.className,
other = (0, _objectWithoutProperties2.default)(props, ["disableActionSpacing", "children", "classes", "className"]);
return _react.default.createElement("div", (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, className)
}, other), disableActionSpacing ? children : (0, _reactHelpers.cloneChildrenWithClassName)(children, classes.action));
}
DialogActions.propTypes = true ? {
/**
* The content of the component.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* If `true`, the dialog actions do not have additional margin.
*/
disableActionSpacing: _propTypes.default.bool
} : undefined;
DialogActions.defaultProps = {
disableActionSpacing: false
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiDialogActions'
})(DialogActions);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/DialogActions/index.js":
/*!***************************************************************!*\
!*** ./node_modules/@material-ui/core/DialogActions/index.js ***!
\***************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _DialogActions.default;
}
});
var _DialogActions = _interopRequireDefault(__webpack_require__(/*! ./DialogActions */ "./node_modules/@material-ui/core/DialogActions/DialogActions.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/DialogContent/DialogContent.js":
/*!***********************************************************************!*\
!*** ./node_modules/@material-ui/core/DialogContent/DialogContent.js ***!
\***********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var styles = {
root: {
flex: '1 1 auto',
overflowY: 'auto',
WebkitOverflowScrolling: 'touch',
// Add iOS momentum scrolling.
padding: '0 24px 24px',
'&:first-child': {
paddingTop: 24
}
}
};
exports.styles = styles;
function DialogContent(props) {
var classes = props.classes,
children = props.children,
className = props.className,
other = (0, _objectWithoutProperties2.default)(props, ["classes", "children", "className"]);
return _react.default.createElement("div", (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, className)
}, other), children);
}
DialogContent.propTypes = true ? {
/**
* The content of the component.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string
} : undefined;
var _default = (0, _withStyles.default)(styles, {
name: 'MuiDialogContent'
})(DialogContent);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/DialogContent/index.js":
/*!***************************************************************!*\
!*** ./node_modules/@material-ui/core/DialogContent/index.js ***!
\***************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _DialogContent.default;
}
});
var _DialogContent = _interopRequireDefault(__webpack_require__(/*! ./DialogContent */ "./node_modules/@material-ui/core/DialogContent/DialogContent.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/DialogContentText/DialogContentText.js":
/*!*******************************************************************************!*\
!*** ./node_modules/@material-ui/core/DialogContentText/DialogContentText.js ***!
\*******************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _Typography = _interopRequireDefault(__webpack_require__(/*! ../Typography */ "./node_modules/@material-ui/core/Typography/index.js"));
// @inheritedComponent Typography
var styles = function styles(theme) {
return {
root: {
color: theme.palette.text.secondary
}
};
};
exports.styles = styles;
function DialogContentText(props) {
var children = props.children,
classes = props.classes,
className = props.className,
other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className"]);
return _react.default.createElement(_Typography.default, (0, _extends2.default)({
component: "p",
variant: "subheading",
className: (0, _classnames.default)(classes.root, className)
}, other), children);
}
DialogContentText.propTypes = true ? {
/**
* The content of the component.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string
} : undefined;
var _default = (0, _withStyles.default)(styles, {
name: 'MuiDialogContentText'
})(DialogContentText);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/DialogContentText/index.js":
/*!*******************************************************************!*\
!*** ./node_modules/@material-ui/core/DialogContentText/index.js ***!
\*******************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _DialogContentText.default;
}
});
var _DialogContentText = _interopRequireDefault(__webpack_require__(/*! ./DialogContentText */ "./node_modules/@material-ui/core/DialogContentText/DialogContentText.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/DialogTitle/DialogTitle.js":
/*!*******************************************************************!*\
!*** ./node_modules/@material-ui/core/DialogTitle/DialogTitle.js ***!
\*******************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _Typography = _interopRequireDefault(__webpack_require__(/*! ../Typography */ "./node_modules/@material-ui/core/Typography/index.js"));
var styles = {
root: {
margin: 0,
padding: '24px 24px 20px',
flex: '0 0 auto'
}
};
exports.styles = styles;
function DialogTitle(props) {
var children = props.children,
classes = props.classes,
className = props.className,
disableTypography = props.disableTypography,
other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "disableTypography"]);
return _react.default.createElement("div", (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, className)
}, other), disableTypography ? children : _react.default.createElement(_Typography.default, {
variant: "title"
}, children));
}
DialogTitle.propTypes = true ? {
/**
* The content of the component.
*/
children: _propTypes.default.node.isRequired,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* If `true`, the children won't be wrapped by a typography component.
* For instance, this can be useful to render an h4 instead of the default h2.
*/
disableTypography: _propTypes.default.bool
} : undefined;
DialogTitle.defaultProps = {
disableTypography: false
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiDialogTitle'
})(DialogTitle);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/DialogTitle/index.js":
/*!*************************************************************!*\
!*** ./node_modules/@material-ui/core/DialogTitle/index.js ***!
\*************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _DialogTitle.default;
}
});
var _DialogTitle = _interopRequireDefault(__webpack_require__(/*! ./DialogTitle */ "./node_modules/@material-ui/core/DialogTitle/DialogTitle.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/Divider/Divider.js":
/*!***********************************************************!*\
!*** ./node_modules/@material-ui/core/Divider/Divider.js ***!
\***********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _colorManipulator = __webpack_require__(/*! ../styles/colorManipulator */ "./node_modules/@material-ui/core/styles/colorManipulator.js");
var styles = function styles(theme) {
return {
root: {
height: 1,
margin: 0,
// Reset browser default style.
border: 'none',
flexShrink: 0,
backgroundColor: theme.palette.divider
},
absolute: {
position: 'absolute',
bottom: 0,
left: 0,
width: '100%'
},
inset: {
marginLeft: 72
},
light: {
backgroundColor: (0, _colorManipulator.fade)(theme.palette.divider, 0.08)
}
};
};
exports.styles = styles;
function Divider(props) {
var _classNames;
var absolute = props.absolute,
classes = props.classes,
classNameProp = props.className,
Component = props.component,
inset = props.inset,
light = props.light,
other = (0, _objectWithoutProperties2.default)(props, ["absolute", "classes", "className", "component", "inset", "light"]);
var className = (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.absolute, absolute), (0, _defineProperty2.default)(_classNames, classes.inset, inset), (0, _defineProperty2.default)(_classNames, classes.light, light), _classNames), classNameProp);
return _react.default.createElement(Component, (0, _extends2.default)({
className: className
}, other));
}
Divider.propTypes = true ? {
absolute: _propTypes.default.bool,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* The component used for the root node.
* Either a string to use a DOM element or a component.
*/
component: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* If `true`, the divider will be indented.
*/
inset: _propTypes.default.bool,
/**
* If `true`, the divider will have a lighter color.
*/
light: _propTypes.default.bool
} : undefined;
Divider.defaultProps = {
absolute: false,
component: 'hr',
inset: false,
light: false
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiDivider'
})(Divider);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Divider/index.js":
/*!*********************************************************!*\
!*** ./node_modules/@material-ui/core/Divider/index.js ***!
\*********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _Divider.default;
}
});
var _Divider = _interopRequireDefault(__webpack_require__(/*! ./Divider */ "./node_modules/@material-ui/core/Divider/Divider.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/Drawer/Drawer.js":
/*!*********************************************************!*\
!*** ./node_modules/@material-ui/core/Drawer/Drawer.js ***!
\*********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.isHorizontal = isHorizontal;
exports.getAnchor = getAnchor;
exports.default = exports.styles = void 0;
var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectSpread */ "./node_modules/@babel/runtime/helpers/builtin/objectSpread.js"));
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js"));
var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/inherits */ "./node_modules/@babel/runtime/helpers/builtin/inherits.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _Modal = _interopRequireDefault(__webpack_require__(/*! ../Modal */ "./node_modules/@material-ui/core/Modal/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _Slide = _interopRequireDefault(__webpack_require__(/*! ../Slide */ "./node_modules/@material-ui/core/Slide/index.js"));
var _Paper = _interopRequireDefault(__webpack_require__(/*! ../Paper */ "./node_modules/@material-ui/core/Paper/index.js"));
var _helpers = __webpack_require__(/*! ../utils/helpers */ "./node_modules/@material-ui/core/utils/helpers.js");
var _transitions = __webpack_require__(/*! ../styles/transitions */ "./node_modules/@material-ui/core/styles/transitions.js");
var oppositeDirection = {
left: 'right',
right: 'left',
top: 'down',
bottom: 'up'
};
function isHorizontal(props) {
return ['left', 'right'].indexOf(props.anchor) !== -1;
}
function getAnchor(props) {
return props.theme.direction === 'rtl' && isHorizontal(props) ? oppositeDirection[props.anchor] : props.anchor;
}
var styles = function styles(theme) {
return {
docked: {
flex: '0 0 auto'
},
paper: {
overflowY: 'auto',
display: 'flex',
flexDirection: 'column',
height: '100vh',
flex: '1 0 auto',
zIndex: theme.zIndex.drawer,
WebkitOverflowScrolling: 'touch',
// Add iOS momentum scrolling.
// temporary style
position: 'fixed',
top: 0,
// We disable the focus ring for mouse, touch and keyboard users.
// At some point, it would be better to keep it for keyboard users.
// :focus-ring CSS pseudo-class will help.
outline: 'none'
},
paperAnchorLeft: {
left: 0,
right: 'auto'
},
paperAnchorRight: {
left: 'auto',
right: 0
},
paperAnchorTop: {
top: 0,
left: 0,
bottom: 'auto',
right: 0,
height: 'auto',
maxHeight: '100vh'
},
paperAnchorBottom: {
top: 'auto',
left: 0,
bottom: 0,
right: 0,
height: 'auto',
maxHeight: '100vh'
},
paperAnchorDockedLeft: {
borderRight: "1px solid ".concat(theme.palette.divider)
},
paperAnchorDockedTop: {
borderBottom: "1px solid ".concat(theme.palette.divider)
},
paperAnchorDockedRight: {
borderLeft: "1px solid ".concat(theme.palette.divider)
},
paperAnchorDockedBottom: {
borderTop: "1px solid ".concat(theme.palette.divider)
},
modal: {} // Just here so people can override the style.
};
};
/**
* The properties of the [Modal](/api/modal) component are available
* when `variant="temporary"` is set.
*/
exports.styles = styles;
var Drawer =
/*#__PURE__*/
function (_React$Component) {
(0, _inherits2.default)(Drawer, _React$Component);
function Drawer() {
var _ref;
var _temp, _this;
(0, _classCallCheck2.default)(this, Drawer);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
return (0, _possibleConstructorReturn2.default)(_this, (_temp = _this = (0, _possibleConstructorReturn2.default)(this, (_ref = Drawer.__proto__ || Object.getPrototypeOf(Drawer)).call.apply(_ref, [this].concat(args))), _this.mounted = false, _temp));
}
(0, _createClass2.default)(Drawer, [{
key: "componentDidMount",
value: function componentDidMount() {
this.mounted = true;
}
}, {
key: "render",
value: function render() {
var _props = this.props,
anchorProp = _props.anchor,
children = _props.children,
classes = _props.classes,
className = _props.className,
elevation = _props.elevation,
_props$ModalProps = _props.ModalProps;
_props$ModalProps = _props$ModalProps === void 0 ? {} : _props$ModalProps;
var BackdropPropsProp = _props$ModalProps.BackdropProps,
ModalProps = (0, _objectWithoutProperties2.default)(_props$ModalProps, ["BackdropProps"]),
onClose = _props.onClose,
open = _props.open,
PaperProps = _props.PaperProps,
SlideProps = _props.SlideProps,
theme = _props.theme,
transitionDuration = _props.transitionDuration,
variant = _props.variant,
other = (0, _objectWithoutProperties2.default)(_props, ["anchor", "children", "classes", "className", "elevation", "ModalProps", "onClose", "open", "PaperProps", "SlideProps", "theme", "transitionDuration", "variant"]);
var anchor = getAnchor(this.props);
var drawer = _react.default.createElement(_Paper.default, (0, _extends2.default)({
elevation: variant === 'temporary' ? elevation : 0,
square: true,
className: (0, _classnames.default)(classes.paper, classes["paperAnchor".concat((0, _helpers.capitalize)(anchor))], (0, _defineProperty2.default)({}, classes["paperAnchorDocked".concat((0, _helpers.capitalize)(anchor))], variant !== 'temporary'))
}, PaperProps), children);
if (variant === 'permanent') {
return _react.default.createElement("div", (0, _extends2.default)({
className: (0, _classnames.default)(classes.docked, className)
}, other), drawer);
}
var slidingDrawer = _react.default.createElement(_Slide.default, (0, _extends2.default)({
"in": open,
direction: oppositeDirection[anchor],
timeout: transitionDuration,
appear: this.mounted
}, SlideProps), drawer);
if (variant === 'persistent') {
return _react.default.createElement("div", (0, _extends2.default)({
className: (0, _classnames.default)(classes.docked, className)
}, other), slidingDrawer);
} // variant === temporary
return _react.default.createElement(_Modal.default, (0, _extends2.default)({
BackdropProps: (0, _objectSpread2.default)({}, BackdropPropsProp, {
transitionDuration: transitionDuration
}),
className: (0, _classnames.default)(classes.modal, className),
open: open,
onClose: onClose
}, other, ModalProps), slidingDrawer);
}
}]);
return Drawer;
}(_react.default.Component);
Drawer.propTypes = true ? {
/**
* Side from which the drawer will appear.
*/
anchor: _propTypes.default.oneOf(['left', 'top', 'right', 'bottom']),
/**
* The contents of the drawer.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* The elevation of the drawer.
*/
elevation: _propTypes.default.number,
/**
* Properties applied to the [`Modal`](/api/modal) element.
*/
ModalProps: _propTypes.default.object,
/**
* Callback fired when the component requests to be closed.
*
* @param {object} event The event source of the callback
*/
onClose: _propTypes.default.func,
/**
* If `true`, the drawer is open.
*/
open: _propTypes.default.bool,
/**
* Properties applied to the [`Paper`](/api/paper) element.
*/
PaperProps: _propTypes.default.object,
/**
* Properties applied to the [`Slide`](/api/slide) element.
*/
SlideProps: _propTypes.default.object,
/**
* @ignore
*/
theme: _propTypes.default.object.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({
enter: _propTypes.default.number,
exit: _propTypes.default.number
})]),
/**
* The variant to use.
*/
variant: _propTypes.default.oneOf(['permanent', 'persistent', 'temporary'])
} : undefined;
Drawer.defaultProps = {
anchor: 'left',
elevation: 16,
open: false,
transitionDuration: {
enter: _transitions.duration.enteringScreen,
exit: _transitions.duration.leavingScreen
},
variant: 'temporary' // Mobile first.
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiDrawer',
flip: false,
withTheme: true
})(Drawer);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Drawer/index.js":
/*!********************************************************!*\
!*** ./node_modules/@material-ui/core/Drawer/index.js ***!
\********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _Drawer.default;
}
});
var _Drawer = _interopRequireDefault(__webpack_require__(/*! ./Drawer */ "./node_modules/@material-ui/core/Drawer/Drawer.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/ExpansionPanel/ExpansionPanel.js":
/*!*************************************************************************!*\
!*** ./node_modules/@material-ui/core/ExpansionPanel/ExpansionPanel.js ***!
\*************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js"));
var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/inherits */ "./node_modules/@babel/runtime/helpers/builtin/inherits.js"));
var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectSpread */ "./node_modules/@babel/runtime/helpers/builtin/objectSpread.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _warning = _interopRequireDefault(__webpack_require__(/*! warning */ "./node_modules/@material-ui/core/node_modules/warning/warning.js"));
var _Collapse = _interopRequireDefault(__webpack_require__(/*! ../Collapse */ "./node_modules/@material-ui/core/Collapse/index.js"));
var _Paper = _interopRequireDefault(__webpack_require__(/*! ../Paper */ "./node_modules/@material-ui/core/Paper/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _reactHelpers = __webpack_require__(/*! ../utils/reactHelpers */ "./node_modules/@material-ui/core/utils/reactHelpers.js");
// @inheritedComponent Paper
// Workaround https://github.com/jsdom/jsdom/issues/2026
var edgeFix = typeof window !== 'undefined' && /jsdom/.test(window.navigator.userAgent) ? {} : {
// Fix a rendering issue on Edge
'@supports (-ms-ime-align: auto)': {
borderBottomLeftRadius: 0,
borderBottomRightRadius: 0
}
};
var styles = function styles(theme) {
var transition = {
duration: theme.transitions.duration.shortest
};
return {
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': {
borderTopLeftRadius: 2,
borderTopRightRadius: 2,
'&:before': {
display: 'none'
}
},
'&:last-child': (0, _objectSpread2.default)({
borderBottomLeftRadius: 2,
borderBottomRightRadius: 2
}, edgeFix),
'&$expanded + &': {
'&:before': {
display: 'none'
}
}
},
expanded: {
margin: '16px 0',
'&:first-child': {
marginTop: 0
},
'&:last-child': {
marginBottom: 0
},
'&:before': {
opacity: 0
}
},
disabled: {
backgroundColor: theme.palette.action.disabledBackground
}
};
};
exports.styles = styles;
var ExpansionPanel =
/*#__PURE__*/
function (_React$Component) {
(0, _inherits2.default)(ExpansionPanel, _React$Component);
function ExpansionPanel(props) {
var _this;
(0, _classCallCheck2.default)(this, ExpansionPanel);
_this = (0, _possibleConstructorReturn2.default)(this, (ExpansionPanel.__proto__ || Object.getPrototypeOf(ExpansionPanel)).call(this, props));
_this.isControlled = null;
_this.state = {};
_this.handleChange = function (event) {
var expanded = _this.isControlled ? _this.props.expanded : _this.state.expanded;
if (!_this.isControlled) {
_this.setState({
expanded: !expanded
});
}
if (_this.props.onChange) {
_this.props.onChange(event, !expanded);
}
};
_this.isControlled = props.expanded != null;
if (!_this.isControlled) {
// not controlled, use internal state
_this.state.expanded = props.defaultExpanded !== undefined ? props.defaultExpanded : false;
}
return _this;
}
(0, _createClass2.default)(ExpansionPanel, [{
key: "render",
value: function render() {
var _classNames,
_this2 = this;
var _props = this.props,
childrenProp = _props.children,
classes = _props.classes,
classNameProp = _props.className,
CollapsePropsProp = _props.CollapseProps,
defaultExpanded = _props.defaultExpanded,
disabled = _props.disabled,
expandedProp = _props.expanded,
onChange = _props.onChange,
other = (0, _objectWithoutProperties2.default)(_props, ["children", "classes", "className", "CollapseProps", "defaultExpanded", "disabled", "expanded", "onChange"]);
var expanded = this.isControlled ? expandedProp : this.state.expanded;
var className = (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.expanded, expanded), (0, _defineProperty2.default)(_classNames, classes.disabled, disabled), _classNames), classNameProp);
var summary = null;
var children = _react.default.Children.map(childrenProp, function (child) {
if (!_react.default.isValidElement(child)) {
return null;
}
true ? (0, _warning.default)(child.type !== _react.default.Fragment, ["Material-UI: the ExpansionPanel component doesn't accept a Fragment as a child.", 'Consider providing an array instead.'].join('\n')) : undefined;
if ((0, _reactHelpers.isMuiElement)(child, ['ExpansionPanelSummary'])) {
summary = _react.default.cloneElement(child, {
disabled: disabled,
expanded: expanded,
onChange: _this2.handleChange
});
return null;
}
return child;
});
var CollapseProps = !expanded ? {
'aria-hidden': 'true'
} : null;
return _react.default.createElement(_Paper.default, (0, _extends2.default)({
className: className,
elevation: 1,
square: true
}, other), summary, _react.default.createElement(_Collapse.default, (0, _extends2.default)({
"in": expanded,
timeout: "auto"
}, CollapseProps, CollapsePropsProp), children));
}
}]);
return ExpansionPanel;
}(_react.default.Component);
ExpansionPanel.propTypes = true ? {
/**
* The content of the expansion panel.
*/
children: _propTypes.default.node.isRequired,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* Properties applied to the [`Collapse`](/api/collapse) element.
*/
CollapseProps: _propTypes.default.object,
/**
* If `true`, expands the panel by default.
*/
defaultExpanded: _propTypes.default.bool,
/**
* If `true`, the panel will be displayed in a disabled state.
*/
disabled: _propTypes.default.bool,
/**
* If `true`, expands the panel, otherwise collapse it.
* Setting this prop enables control over the panel.
*/
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 panel
*/
onChange: _propTypes.default.func
} : undefined;
ExpansionPanel.defaultProps = {
defaultExpanded: false,
disabled: false
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiExpansionPanel'
})(ExpansionPanel);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/ExpansionPanel/index.js":
/*!****************************************************************!*\
!*** ./node_modules/@material-ui/core/ExpansionPanel/index.js ***!
\****************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _ExpansionPanel.default;
}
});
var _ExpansionPanel = _interopRequireDefault(__webpack_require__(/*! ./ExpansionPanel */ "./node_modules/@material-ui/core/ExpansionPanel/ExpansionPanel.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/ExpansionPanelActions/ExpansionPanelActions.js":
/*!***************************************************************************************!*\
!*** ./node_modules/@material-ui/core/ExpansionPanelActions/ExpansionPanelActions.js ***!
\***************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _reactHelpers = __webpack_require__(/*! ../utils/reactHelpers */ "./node_modules/@material-ui/core/utils/reactHelpers.js");
__webpack_require__(/*! ../Button */ "./node_modules/@material-ui/core/Button/index.js");
// So we don't have any override priority issue.
var styles = {
root: {
display: 'flex',
alignItems: 'center',
justifyContent: 'flex-end',
padding: '16px 8px'
},
action: {
marginLeft: 8
}
};
exports.styles = styles;
function ExpansionPanelActions(props) {
var children = props.children,
classes = props.classes,
className = props.className,
other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className"]);
return _react.default.createElement("div", (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, className)
}, other), (0, _reactHelpers.cloneChildrenWithClassName)(children, classes.action));
}
ExpansionPanelActions.propTypes = true ? {
/**
* The content of the component.
*/
children: _propTypes.default.node.isRequired,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string
} : undefined;
var _default = (0, _withStyles.default)(styles, {
name: 'MuiExpansionPanelActions'
})(ExpansionPanelActions);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/ExpansionPanelActions/index.js":
/*!***********************************************************************!*\
!*** ./node_modules/@material-ui/core/ExpansionPanelActions/index.js ***!
\***********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _ExpansionPanelActions.default;
}
});
var _ExpansionPanelActions = _interopRequireDefault(__webpack_require__(/*! ./ExpansionPanelActions */ "./node_modules/@material-ui/core/ExpansionPanelActions/ExpansionPanelActions.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/ExpansionPanelDetails/ExpansionPanelDetails.js":
/*!***************************************************************************************!*\
!*** ./node_modules/@material-ui/core/ExpansionPanelDetails/ExpansionPanelDetails.js ***!
\***************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var styles = {
root: {
display: 'flex',
padding: '8px 24px 24px'
}
};
exports.styles = styles;
function ExpansionPanelDetails(props) {
var classes = props.classes,
children = props.children,
className = props.className,
other = (0, _objectWithoutProperties2.default)(props, ["classes", "children", "className"]);
return _react.default.createElement("div", (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, className)
}, other), children);
}
ExpansionPanelDetails.propTypes = true ? {
/**
* The content of the expansion panel details.
*/
children: _propTypes.default.node.isRequired,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string
} : undefined;
var _default = (0, _withStyles.default)(styles, {
name: 'MuiExpansionPanelDetails'
})(ExpansionPanelDetails);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/ExpansionPanelDetails/index.js":
/*!***********************************************************************!*\
!*** ./node_modules/@material-ui/core/ExpansionPanelDetails/index.js ***!
\***********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _ExpansionPanelDetails.default;
}
});
var _ExpansionPanelDetails = _interopRequireDefault(__webpack_require__(/*! ./ExpansionPanelDetails */ "./node_modules/@material-ui/core/ExpansionPanelDetails/ExpansionPanelDetails.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/ExpansionPanelSummary/ExpansionPanelSummary.js":
/*!***************************************************************************************!*\
!*** ./node_modules/@material-ui/core/ExpansionPanelSummary/ExpansionPanelSummary.js ***!
\***************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js"));
var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/inherits */ "./node_modules/@babel/runtime/helpers/builtin/inherits.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _ButtonBase = _interopRequireDefault(__webpack_require__(/*! ../ButtonBase */ "./node_modules/@material-ui/core/ButtonBase/index.js"));
var _IconButton = _interopRequireDefault(__webpack_require__(/*! ../IconButton */ "./node_modules/@material-ui/core/IconButton/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
// @inheritedComponent ButtonBase
var styles = function styles(theme) {
var transition = {
duration: theme.transitions.duration.shortest
};
return {
root: {
display: 'flex',
minHeight: 8 * 6,
transition: theme.transitions.create(['min-height', 'background-color'], transition),
padding: '0 24px 0 24px',
'&:hover:not($disabled)': {
cursor: 'pointer'
},
'&$expanded': {
minHeight: 64
},
'&$focused': {
backgroundColor: theme.palette.grey[300]
},
'&$disabled': {
opacity: 0.38
}
},
expanded: {},
focused: {},
disabled: {},
content: {
display: 'flex',
flexGrow: 1,
transition: theme.transitions.create(['margin'], transition),
margin: '12px 0',
'& > :last-child': {
paddingRight: 32
},
'&$expanded': {
margin: '20px 0'
}
},
expandIcon: {
position: 'absolute',
top: '50%',
right: 8,
transform: 'translateY(-50%) 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: 'translateY(-50%) rotate(180deg)'
}
}
};
};
exports.styles = styles;
var ExpansionPanelSummary =
/*#__PURE__*/
function (_React$Component) {
(0, _inherits2.default)(ExpansionPanelSummary, _React$Component);
function ExpansionPanelSummary() {
var _ref;
var _temp, _this;
(0, _classCallCheck2.default)(this, ExpansionPanelSummary);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
return (0, _possibleConstructorReturn2.default)(_this, (_temp = _this = (0, _possibleConstructorReturn2.default)(this, (_ref = ExpansionPanelSummary.__proto__ || Object.getPrototypeOf(ExpansionPanelSummary)).call.apply(_ref, [this].concat(args))), _this.state = {
focused: false
}, _this.handleFocus = function () {
_this.setState({
focused: true
});
}, _this.handleBlur = function () {
_this.setState({
focused: false
});
}, _this.handleChange = function (event) {
var _this$props = _this.props,
onChange = _this$props.onChange,
onClick = _this$props.onClick;
if (onChange) {
onChange(event);
}
if (onClick) {
onClick(event);
}
}, _temp));
}
(0, _createClass2.default)(ExpansionPanelSummary, [{
key: "render",
value: function render() {
var _classNames;
var _props = this.props,
children = _props.children,
classes = _props.classes,
className = _props.className,
disabled = _props.disabled,
expanded = _props.expanded,
expandIcon = _props.expandIcon,
IconButtonProps = _props.IconButtonProps,
onChange = _props.onChange,
other = (0, _objectWithoutProperties2.default)(_props, ["children", "classes", "className", "disabled", "expanded", "expandIcon", "IconButtonProps", "onChange"]);
var focused = this.state.focused;
return _react.default.createElement(_ButtonBase.default, (0, _extends2.default)({
focusRipple: false,
disableRipple: true,
disabled: disabled,
component: "div",
"aria-expanded": expanded,
className: (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.disabled, disabled), (0, _defineProperty2.default)(_classNames, classes.expanded, expanded), (0, _defineProperty2.default)(_classNames, classes.focused, focused), _classNames), className)
}, other, {
onFocusVisible: this.handleFocus,
onBlur: this.handleBlur,
onClick: this.handleChange
}), _react.default.createElement("div", {
className: (0, _classnames.default)(classes.content, (0, _defineProperty2.default)({}, classes.expanded, expanded))
}, children), expandIcon && _react.default.createElement(_IconButton.default, (0, _extends2.default)({
disabled: disabled,
className: (0, _classnames.default)(classes.expandIcon, (0, _defineProperty2.default)({}, classes.expanded, expanded)),
component: "div",
tabIndex: -1,
"aria-hidden": "true"
}, IconButtonProps), expandIcon));
}
}]);
return ExpansionPanelSummary;
}(_react.default.Component);
ExpansionPanelSummary.propTypes = true ? {
/**
* The content of the expansion panel summary.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* @ignore
* If `true`, the summary will be displayed in a disabled state.
*/
disabled: _propTypes.default.bool,
/**
* @ignore
* If `true`, expands the summary, otherwise collapse it.
*/
expanded: _propTypes.default.bool,
/**
* The icon to display as the expand indicator.
*/
expandIcon: _propTypes.default.node,
/**
* Properties applied to the `TouchRipple` element wrapping the expand icon.
*/
IconButtonProps: _propTypes.default.object,
/**
* @ignore
*/
onChange: _propTypes.default.func,
/**
* @ignore
*/
onClick: _propTypes.default.func
} : undefined;
ExpansionPanelSummary.defaultProps = {
disabled: false
};
ExpansionPanelSummary.muiName = 'ExpansionPanelSummary';
var _default = (0, _withStyles.default)(styles, {
name: 'MuiExpansionPanelSummary'
})(ExpansionPanelSummary);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/ExpansionPanelSummary/index.js":
/*!***********************************************************************!*\
!*** ./node_modules/@material-ui/core/ExpansionPanelSummary/index.js ***!
\***********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _ExpansionPanelSummary.default;
}
});
var _ExpansionPanelSummary = _interopRequireDefault(__webpack_require__(/*! ./ExpansionPanelSummary */ "./node_modules/@material-ui/core/ExpansionPanelSummary/ExpansionPanelSummary.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/Fade/Fade.js":
/*!*****************************************************!*\
!*** ./node_modules/@material-ui/core/Fade/Fade.js ***!
\*****************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectSpread */ "./node_modules/@babel/runtime/helpers/builtin/objectSpread.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js"));
var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/inherits */ "./node_modules/@babel/runtime/helpers/builtin/inherits.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _Transition = _interopRequireDefault(__webpack_require__(/*! react-transition-group/Transition */ "./node_modules/@material-ui/core/node_modules/react-transition-group/Transition.js"));
var _transitions = __webpack_require__(/*! ../styles/transitions */ "./node_modules/@material-ui/core/styles/transitions.js");
var _withTheme = _interopRequireDefault(__webpack_require__(/*! ../styles/withTheme */ "./node_modules/@material-ui/core/styles/withTheme.js"));
var _utils = __webpack_require__(/*! ../transitions/utils */ "./node_modules/@material-ui/core/transitions/utils.js");
// @inheritedComponent Transition
var styles = {
entering: {
opacity: 1
},
entered: {
opacity: 1
}
};
/**
* The Fade transition is used by the [Modal](/utils/modal) component.
* It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.
*/
var Fade =
/*#__PURE__*/
function (_React$Component) {
(0, _inherits2.default)(Fade, _React$Component);
function Fade() {
var _ref;
var _temp, _this;
(0, _classCallCheck2.default)(this, Fade);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
return (0, _possibleConstructorReturn2.default)(_this, (_temp = _this = (0, _possibleConstructorReturn2.default)(this, (_ref = Fade.__proto__ || Object.getPrototypeOf(Fade)).call.apply(_ref, [this].concat(args))), _this.handleEnter = function (node) {
var theme = _this.props.theme;
(0, _utils.reflow)(node); // So the animation always start from the start.
var transitionProps = (0, _utils.getTransitionProps)(_this.props, {
mode: 'enter'
});
node.style.webkitTransition = theme.transitions.create('opacity', transitionProps);
node.style.transition = theme.transitions.create('opacity', transitionProps);
if (_this.props.onEnter) {
_this.props.onEnter(node);
}
}, _this.handleExit = function (node) {
var theme = _this.props.theme;
var transitionProps = (0, _utils.getTransitionProps)(_this.props, {
mode: 'exit'
});
node.style.webkitTransition = theme.transitions.create('opacity', transitionProps);
node.style.transition = theme.transitions.create('opacity', transitionProps);
if (_this.props.onExit) {
_this.props.onExit(node);
}
}, _temp));
}
(0, _createClass2.default)(Fade, [{
key: "render",
value: function render() {
var _props = this.props,
children = _props.children,
onEnter = _props.onEnter,
onExit = _props.onExit,
styleProp = _props.style,
theme = _props.theme,
other = (0, _objectWithoutProperties2.default)(_props, ["children", "onEnter", "onExit", "style", "theme"]);
var style = (0, _objectSpread2.default)({}, styleProp, _react.default.isValidElement(children) ? children.props.style : {});
return _react.default.createElement(_Transition.default, (0, _extends2.default)({
appear: true,
onEnter: this.handleEnter,
onExit: this.handleExit
}, other), function (state, childProps) {
return _react.default.cloneElement(children, (0, _objectSpread2.default)({
style: (0, _objectSpread2.default)({
opacity: 0,
willChange: 'opacity'
}, styles[state], style)
}, childProps));
});
}
}]);
return Fade;
}(_react.default.Component);
Fade.propTypes = true ? {
/**
* A single child content element.
*/
children: _propTypes.default.oneOfType([_propTypes.default.element, _propTypes.default.func]),
/**
* If `true`, the component will transition in.
*/
in: _propTypes.default.bool,
/**
* @ignore
*/
onEnter: _propTypes.default.func,
/**
* @ignore
*/
onExit: _propTypes.default.func,
/**
* @ignore
*/
style: _propTypes.default.object,
/**
* @ignore
*/
theme: _propTypes.default.object.isRequired,
/**
* The duration for the transition, in milliseconds.
* You may specify a single timeout for all transitions, or individually with an object.
*/
timeout: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.shape({
enter: _propTypes.default.number,
exit: _propTypes.default.number
})])
} : undefined;
Fade.defaultProps = {
timeout: {
enter: _transitions.duration.enteringScreen,
exit: _transitions.duration.leavingScreen
}
};
var _default = (0, _withTheme.default)()(Fade);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Fade/index.js":
/*!******************************************************!*\
!*** ./node_modules/@material-ui/core/Fade/index.js ***!
\******************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _Fade.default;
}
});
var _Fade = _interopRequireDefault(__webpack_require__(/*! ./Fade */ "./node_modules/@material-ui/core/Fade/Fade.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/FormControl/FormControl.js":
/*!*******************************************************************!*\
!*** ./node_modules/@material-ui/core/FormControl/FormControl.js ***!
\*******************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js"));
var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/inherits */ "./node_modules/@babel/runtime/helpers/builtin/inherits.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _Input = __webpack_require__(/*! ../Input/Input */ "./node_modules/@material-ui/core/Input/Input.js");
var _helpers = __webpack_require__(/*! ../utils/helpers */ "./node_modules/@material-ui/core/utils/helpers.js");
var _reactHelpers = __webpack_require__(/*! ../utils/reactHelpers */ "./node_modules/@material-ui/core/utils/reactHelpers.js");
var styles = {
root: {
display: 'inline-flex',
flexDirection: 'column',
position: 'relative',
// Reset fieldset default style
minWidth: 0,
padding: 0,
margin: 0,
border: 0
},
marginNormal: {
marginTop: 16,
marginBottom: 8
},
marginDense: {
marginTop: 8,
marginBottom: 4
},
fullWidth: {
width: '100%'
}
};
/**
* Provides context such as filled/focused/error/required for form inputs.
* Relying on the context provides high flexibilty and ensures that the state always stays
* consistent across the children of the `FormControl`.
* This context is used by the following components:
* - FormLabel
* - FormHelperText
* - Input
* - InputLabel
*/
exports.styles = styles;
var FormControl =
/*#__PURE__*/
function (_React$Component) {
(0, _inherits2.default)(FormControl, _React$Component);
function FormControl(props) {
var _this;
(0, _classCallCheck2.default)(this, FormControl);
_this = (0, _possibleConstructorReturn2.default)(this, (FormControl.__proto__ || Object.getPrototypeOf(FormControl)).call(this, props)); // We need to iterate through the children and find the Input in order
// to fully support server side rendering.
_this.state = {
adornedStart: false,
filled: false,
focused: false
};
_this.handleFocus = function () {
_this.setState(function (state) {
return !state.focused ? {
focused: true
} : null;
});
};
_this.handleBlur = function () {
_this.setState(function (state) {
return state.focused ? {
focused: false
} : null;
});
};
_this.handleDirty = function () {
if (!_this.state.filled) {
_this.setState({
filled: true
});
}
};
_this.handleClean = function () {
if (_this.state.filled) {
_this.setState({
filled: false
});
}
};
var children = _this.props.children;
if (children) {
_react.default.Children.forEach(children, function (child) {
if (!(0, _reactHelpers.isMuiElement)(child, ['Input', 'Select', 'NativeSelect'])) {
return;
}
if ((0, _Input.isFilled)(child.props, true)) {
_this.state.filled = true;
}
var input = (0, _reactHelpers.isMuiElement)(child, ['Select', 'NativeSelect']) ? child.props.input : child;
if (input && (0, _Input.isAdornedStart)(input.props)) {
_this.state.adornedStart = true;
}
});
}
return _this;
}
(0, _createClass2.default)(FormControl, [{
key: "getChildContext",
value: function getChildContext() {
var _props = this.props,
disabled = _props.disabled,
error = _props.error,
required = _props.required,
margin = _props.margin;
var _state = this.state,
adornedStart = _state.adornedStart,
filled = _state.filled,
focused = _state.focused;
return {
muiFormControl: {
adornedStart: adornedStart,
disabled: disabled,
error: error,
filled: filled,
focused: focused,
margin: margin,
onBlur: this.handleBlur,
onEmpty: this.handleClean,
onFilled: this.handleDirty,
onFocus: this.handleFocus,
required: required
}
};
}
}, {
key: "render",
value: function render() {
var _classNames;
var _props2 = this.props,
classes = _props2.classes,
className = _props2.className,
Component = _props2.component,
disabled = _props2.disabled,
error = _props2.error,
fullWidth = _props2.fullWidth,
margin = _props2.margin,
required = _props2.required,
other = (0, _objectWithoutProperties2.default)(_props2, ["classes", "className", "component", "disabled", "error", "fullWidth", "margin", "required"]);
return _react.default.createElement(Component, (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes["margin".concat((0, _helpers.capitalize)(margin))], margin !== 'none'), (0, _defineProperty2.default)(_classNames, classes.fullWidth, fullWidth), _classNames), className)
}, other));
}
}]);
return FormControl;
}(_react.default.Component);
FormControl.propTypes = true ? {
/**
* The contents of the form control.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* The component used for the root node.
* Either a string to use a DOM element or a component.
*/
component: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* If `true`, the label, input and helper text should be displayed in a disabled state.
*/
disabled: _propTypes.default.bool,
/**
* If `true`, the label should be displayed in an error state.
*/
error: _propTypes.default.bool,
/**
* If `true`, the component will take up the full width of its container.
*/
fullWidth: _propTypes.default.bool,
/**
* If `dense` or `normal`, will adjust vertical spacing of this and contained components.
*/
margin: _propTypes.default.oneOf(['none', 'dense', 'normal']),
/**
* If `true`, the label will indicate that the input is required.
*/
required: _propTypes.default.bool
} : undefined;
FormControl.defaultProps = {
component: 'div',
disabled: false,
error: false,
fullWidth: false,
margin: 'none',
required: false
};
FormControl.childContextTypes = {
muiFormControl: _propTypes.default.object
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiFormControl'
})(FormControl);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/FormControl/index.js":
/*!*************************************************************!*\
!*** ./node_modules/@material-ui/core/FormControl/index.js ***!
\*************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _FormControl.default;
}
});
var _FormControl = _interopRequireDefault(__webpack_require__(/*! ./FormControl */ "./node_modules/@material-ui/core/FormControl/FormControl.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/FormControlLabel/FormControlLabel.js":
/*!*****************************************************************************!*\
!*** ./node_modules/@material-ui/core/FormControlLabel/FormControlLabel.js ***!
\*****************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _Typography = _interopRequireDefault(__webpack_require__(/*! ../Typography */ "./node_modules/@material-ui/core/Typography/index.js"));
/* eslint-disable jsx-a11y/label-has-for */
var styles = function styles(theme) {
return {
root: {
display: 'inline-flex',
alignItems: 'center',
cursor: 'pointer',
// For correct alignment with the text.
verticalAlign: 'middle',
// Remove grey highlight
WebkitTapHighlightColor: 'transparent',
marginLeft: -14,
marginRight: 16,
// used for row presentation of radio/checkbox
'&$disabled': {
cursor: 'default'
}
},
disabled: {},
label: {
'&$disabled': {
color: theme.palette.text.disabled
}
}
};
};
/**
* Drop in replacement of the `Radio`, `Switch` and `Checkbox` component.
* Use this component if you want to display an extra label.
*/
exports.styles = styles;
function FormControlLabel(props, context) {
var checked = props.checked,
classes = props.classes,
classNameProp = props.className,
control = props.control,
disabledProp = props.disabled,
inputRef = props.inputRef,
label = props.label,
name = props.name,
onChange = props.onChange,
value = props.value,
other = (0, _objectWithoutProperties2.default)(props, ["checked", "classes", "className", "control", "disabled", "inputRef", "label", "name", "onChange", "value"]);
var muiFormControl = context.muiFormControl;
var disabled = disabledProp;
if (typeof disabled === 'undefined' && typeof control.props.disabled !== 'undefined') {
disabled = control.props.disabled;
}
if (typeof disabled === 'undefined' && muiFormControl) {
disabled = muiFormControl.disabled;
}
var controlProps = {
disabled: disabled
};
['checked', 'name', 'onChange', 'value', 'inputRef'].forEach(function (key) {
if (typeof control.props[key] === 'undefined' && typeof props[key] !== 'undefined') {
controlProps[key] = props[key];
}
});
return _react.default.createElement("label", (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, (0, _defineProperty2.default)({}, classes.disabled, disabled), classNameProp)
}, other), _react.default.cloneElement(control, controlProps), _react.default.createElement(_Typography.default, {
component: "span",
className: (0, _classnames.default)(classes.label, (0, _defineProperty2.default)({}, classes.disabled, disabled))
}, label));
}
FormControlLabel.propTypes = true ? {
/**
* If `true`, the component appears selected.
*/
checked: _propTypes.default.oneOfType([_propTypes.default.bool, _propTypes.default.string]),
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* A control element. For instance, it can be be a `Radio`, a `Switch` or a `Checkbox`.
*/
control: _propTypes.default.element,
/**
* If `true`, the control will be disabled.
*/
disabled: _propTypes.default.bool,
/**
* Use that property to pass a ref callback to the native input component.
*/
inputRef: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
/**
* The text to be used in an enclosing label element.
*/
label: _propTypes.default.node,
/*
* @ignore
*/
name: _propTypes.default.string,
/**
* Callback fired when the state is changed.
*
* @param {object} event The event source of the callback.
* You can pull out the new value by accessing `event.target.checked`.
* @param {boolean} checked The `checked` value of the switch
*/
onChange: _propTypes.default.func,
/**
* The value of the component.
*/
value: _propTypes.default.string
} : undefined;
FormControlLabel.contextTypes = {
muiFormControl: _propTypes.default.object
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiFormControlLabel'
})(FormControlLabel);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/FormControlLabel/index.js":
/*!******************************************************************!*\
!*** ./node_modules/@material-ui/core/FormControlLabel/index.js ***!
\******************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _FormControlLabel.default;
}
});
var _FormControlLabel = _interopRequireDefault(__webpack_require__(/*! ./FormControlLabel */ "./node_modules/@material-ui/core/FormControlLabel/FormControlLabel.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/FormGroup/FormGroup.js":
/*!***************************************************************!*\
!*** ./node_modules/@material-ui/core/FormGroup/FormGroup.js ***!
\***************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var styles = {
root: {
display: 'flex',
flexDirection: 'column',
flexWrap: 'wrap'
},
row: {
flexDirection: 'row'
}
};
/**
* `FormGroup` wraps controls such as `Checkbox` and `Switch`.
* It provides compact row layout.
* For the `Radio`, you should be using the `RadioGroup` component instead of this one.
*/
exports.styles = styles;
function FormGroup(props) {
var classes = props.classes,
className = props.className,
children = props.children,
row = props.row,
other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "children", "row"]);
return _react.default.createElement("div", (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, (0, _defineProperty2.default)({}, classes.row, row), className)
}, other), children);
}
FormGroup.propTypes = true ? {
/**
* The content of the component.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* Display group of elements in a compact row.
*/
row: _propTypes.default.bool
} : undefined;
FormGroup.defaultProps = {
row: false
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiFormGroup'
})(FormGroup);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/FormGroup/index.js":
/*!***********************************************************!*\
!*** ./node_modules/@material-ui/core/FormGroup/index.js ***!
\***********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _FormGroup.default;
}
});
var _FormGroup = _interopRequireDefault(__webpack_require__(/*! ./FormGroup */ "./node_modules/@material-ui/core/FormGroup/FormGroup.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/FormHelperText/FormHelperText.js":
/*!*************************************************************************!*\
!*** ./node_modules/@material-ui/core/FormHelperText/FormHelperText.js ***!
\*************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var styles = function styles(theme) {
return {
root: {
color: theme.palette.text.secondary,
fontFamily: theme.typography.fontFamily,
fontSize: theme.typography.pxToRem(12),
textAlign: 'left',
marginTop: 8,
lineHeight: '1em',
minHeight: '1em',
margin: 0,
'&$error': {
color: theme.palette.error.main
},
'&$disabled': {
color: theme.palette.text.disabled
}
},
error: {},
disabled: {},
marginDense: {
marginTop: 4
}
};
};
exports.styles = styles;
function FormHelperText(props, context) {
var _classNames;
var classes = props.classes,
classNameProp = props.className,
disabledProp = props.disabled,
errorProp = props.error,
marginProp = props.margin,
Component = props.component,
other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "disabled", "error", "margin", "component"]);
var muiFormControl = context.muiFormControl;
var disabled = disabledProp;
var error = errorProp;
var margin = marginProp;
if (muiFormControl) {
if (typeof disabled === 'undefined') {
disabled = muiFormControl.disabled;
}
if (typeof error === 'undefined') {
error = muiFormControl.error;
}
if (typeof margin === 'undefined') {
margin = muiFormControl.margin;
}
}
var className = (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.disabled, disabled), (0, _defineProperty2.default)(_classNames, classes.error, error), (0, _defineProperty2.default)(_classNames, classes.marginDense, margin === 'dense'), _classNames), classNameProp);
return _react.default.createElement(Component, (0, _extends2.default)({
className: className
}, other));
}
FormHelperText.propTypes = true ? {
/**
* The content of the component.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* The component used for the root node.
* Either a string to use a DOM element or a component.
*/
component: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* If `true`, the helper text should be displayed in a disabled state.
*/
disabled: _propTypes.default.bool,
/**
* If `true`, helper text should be displayed in an error state.
*/
error: _propTypes.default.bool,
/**
* If `dense`, will adjust vertical spacing. This is normally obtained via context from
* FormControl.
*/
margin: _propTypes.default.oneOf(['dense'])
} : undefined;
FormHelperText.defaultProps = {
component: 'p'
};
FormHelperText.contextTypes = {
muiFormControl: _propTypes.default.object
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiFormHelperText'
})(FormHelperText);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/FormHelperText/index.js":
/*!****************************************************************!*\
!*** ./node_modules/@material-ui/core/FormHelperText/index.js ***!
\****************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _FormHelperText.default;
}
});
var _FormHelperText = _interopRequireDefault(__webpack_require__(/*! ./FormHelperText */ "./node_modules/@material-ui/core/FormHelperText/FormHelperText.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/FormLabel/FormLabel.js":
/*!***************************************************************!*\
!*** ./node_modules/@material-ui/core/FormLabel/FormLabel.js ***!
\***************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var styles = function styles(theme) {
return {
root: {
fontFamily: theme.typography.fontFamily,
color: theme.palette.text.secondary,
fontSize: theme.typography.pxToRem(16),
lineHeight: 1,
padding: 0,
'&$focused': {
color: theme.palette.primary[theme.palette.type === 'light' ? 'dark' : 'light']
},
'&$disabled': {
color: theme.palette.text.disabled
},
'&$error': {
color: theme.palette.error.main
}
},
focused: {},
disabled: {},
error: {},
asterisk: {
'&$error': {
color: theme.palette.error.main
}
}
};
};
exports.styles = styles;
function FormLabel(props, context) {
var _classNames;
var children = props.children,
classes = props.classes,
classNameProp = props.className,
Component = props.component,
disabledProp = props.disabled,
errorProp = props.error,
focusedProp = props.focused,
requiredProp = props.required,
other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "component", "disabled", "error", "focused", "required"]);
var muiFormControl = context.muiFormControl;
var required = requiredProp;
var focused = focusedProp;
var disabled = disabledProp;
var error = errorProp;
if (muiFormControl) {
if (typeof required === 'undefined') {
required = muiFormControl.required;
}
if (typeof focused === 'undefined') {
focused = muiFormControl.focused;
}
if (typeof disabled === 'undefined') {
disabled = muiFormControl.disabled;
}
if (typeof error === 'undefined') {
error = muiFormControl.error;
}
}
var className = (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.focused, focused), (0, _defineProperty2.default)(_classNames, classes.disabled, disabled), (0, _defineProperty2.default)(_classNames, classes.error, error), _classNames), classNameProp);
return _react.default.createElement(Component, (0, _extends2.default)({
className: className
}, other), children, required && _react.default.createElement("span", {
className: (0, _classnames.default)(classes.asterisk, (0, _defineProperty2.default)({}, classes.error, error))
}, "\u2009*"));
}
FormLabel.propTypes = true ? {
/**
* The content of the component.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* The component used for the root node.
* Either a string to use a DOM element or a component.
*/
component: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* If `true`, the label should be displayed in a disabled state.
*/
disabled: _propTypes.default.bool,
/**
* If `true`, the label should be displayed in an error state.
*/
error: _propTypes.default.bool,
/**
* If `true`, the input of this label is focused (used by `FormGroup` components).
*/
focused: _propTypes.default.bool,
/**
* If `true`, the label will indicate that the input is required.
*/
required: _propTypes.default.bool
} : undefined;
FormLabel.defaultProps = {
component: 'label'
};
FormLabel.contextTypes = {
muiFormControl: _propTypes.default.object
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiFormLabel'
})(FormLabel);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/FormLabel/index.js":
/*!***********************************************************!*\
!*** ./node_modules/@material-ui/core/FormLabel/index.js ***!
\***********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _FormLabel.default;
}
});
var _FormLabel = _interopRequireDefault(__webpack_require__(/*! ./FormLabel */ "./node_modules/@material-ui/core/FormLabel/FormLabel.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/Grid/Grid.js":
/*!*****************************************************!*\
!*** ./node_modules/@material-ui/core/Grid/Grid.js ***!
\*****************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectSpread */ "./node_modules/@babel/runtime/helpers/builtin/objectSpread.js"));
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _createBreakpoints = __webpack_require__(/*! ../styles/createBreakpoints */ "./node_modules/@material-ui/core/styles/createBreakpoints.js");
var _requirePropFactory = _interopRequireDefault(__webpack_require__(/*! ../utils/requirePropFactory */ "./node_modules/@material-ui/core/utils/requirePropFactory.js"));
// A grid component using the following libs as inspiration.
//
// For the implementation:
// - http://v4-alpha.getbootstrap.com/layout/flexbox-grid/
// - https://github.com/kristoferjoseph/flexboxgrid/blob/master/src/css/flexboxgrid.css
// - https://github.com/roylee0704/react-flexbox-grid
// - https://material.angularjs.org/latest/layout/introduction
//
// Follow this flexbox Guide to better understand the underlying model:
// - https://css-tricks.com/snippets/css/a-guide-to-flexbox/
var GUTTERS = [0, 8, 16, 24, 32, 40];
var GRID_SIZES = ['auto', true, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];
function generateGrid(globalStyles, theme, breakpoint) {
var styles = {};
GRID_SIZES.forEach(function (size) {
var key = "grid-".concat(breakpoint, "-").concat(size);
if (size === true) {
// For the auto layouting
styles[key] = {
flexBasis: 0,
flexGrow: 1,
maxWidth: '100%'
};
return;
}
if (size === 'auto') {
styles[key] = {
flexBasis: 'auto',
flexGrow: 0,
maxWidth: 'none'
};
return;
} // Only keep 6 significant numbers.
var width = "".concat(Math.round(size / 12 * 10e6) / 10e4, "%"); // Close to the bootstrap implementation:
// https://github.com/twbs/bootstrap/blob/8fccaa2439e97ec72a4b7dc42ccc1f649790adb0/scss/mixins/_grid.scss#L41
styles[key] = {
flexBasis: width,
flexGrow: 0,
maxWidth: width
};
}); // No need for a media query for the first size.
if (breakpoint === 'xs') {
(0, _extends2.default)(globalStyles, styles);
} else {
globalStyles[theme.breakpoints.up(breakpoint)] = styles;
}
}
function generateGutter(theme, breakpoint) {
var styles = {};
GUTTERS.forEach(function (spacing, index) {
if (index === 0) {
// Skip the default style.
return;
}
styles["spacing-".concat(breakpoint, "-").concat(spacing)] = {
margin: -spacing / 2,
width: "calc(100% + ".concat(spacing, "px)"),
'& > $item': {
padding: spacing / 2
}
};
});
return styles;
} // Default CSS values
// flex: '0 1 auto',
// flexDirection: 'row',
// alignItems: 'flex-start',
// flexWrap: 'nowrap',
// justifyContent: 'flex-start',
var styles = function styles(theme) {
return (0, _objectSpread2.default)({
container: {
boxSizing: 'border-box',
display: 'flex',
flexWrap: 'wrap',
width: '100%'
},
item: {
boxSizing: 'border-box',
margin: '0' // For instance, it's useful when used with a `figure` element.
},
zeroMinWidth: {
minWidth: 0
},
'direction-xs-column': {
flexDirection: 'column'
},
'direction-xs-column-reverse': {
flexDirection: 'column-reverse'
},
'direction-xs-row-reverse': {
flexDirection: 'row-reverse'
},
'wrap-xs-nowrap': {
flexWrap: 'nowrap'
},
'wrap-xs-wrap-reverse': {
flexWrap: 'wrap-reverse'
},
'align-items-xs-center': {
alignItems: 'center'
},
'align-items-xs-flex-start': {
alignItems: 'flex-start'
},
'align-items-xs-flex-end': {
alignItems: 'flex-end'
},
'align-items-xs-baseline': {
alignItems: 'baseline'
},
'align-content-xs-center': {
alignContent: 'center'
},
'align-content-xs-flex-start': {
alignContent: 'flex-start'
},
'align-content-xs-flex-end': {
alignContent: 'flex-end'
},
'align-content-xs-space-between': {
alignContent: 'space-between'
},
'align-content-xs-space-around': {
alignContent: 'space-around'
},
'justify-xs-center': {
justifyContent: 'center'
},
'justify-xs-flex-end': {
justifyContent: 'flex-end'
},
'justify-xs-space-between': {
justifyContent: 'space-between'
},
'justify-xs-space-around': {
justifyContent: 'space-around'
}
}, generateGutter(theme, 'xs'), _createBreakpoints.keys.reduce(function (accumulator, key) {
// Use side effect over immutability for better performance.
generateGrid(accumulator, theme, key);
return accumulator;
}, {}));
};
exports.styles = styles;
function Grid(props) {
var _classNames;
var alignContent = props.alignContent,
alignItems = props.alignItems,
classes = props.classes,
classNameProp = props.className,
Component = props.component,
container = props.container,
direction = props.direction,
item = props.item,
justify = props.justify,
lg = props.lg,
md = props.md,
sm = props.sm,
spacing = props.spacing,
wrap = props.wrap,
xl = props.xl,
xs = props.xs,
zeroMinWidth = props.zeroMinWidth,
other = (0, _objectWithoutProperties2.default)(props, ["alignContent", "alignItems", "classes", "className", "component", "container", "direction", "item", "justify", "lg", "md", "sm", "spacing", "wrap", "xl", "xs", "zeroMinWidth"]);
var className = (0, _classnames.default)((_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.container, container), (0, _defineProperty2.default)(_classNames, classes.item, item), (0, _defineProperty2.default)(_classNames, classes.zeroMinWidth, zeroMinWidth), (0, _defineProperty2.default)(_classNames, classes["spacing-xs-".concat(String(spacing))], container && spacing !== 0), (0, _defineProperty2.default)(_classNames, classes["direction-xs-".concat(String(direction))], direction !== Grid.defaultProps.direction), (0, _defineProperty2.default)(_classNames, classes["wrap-xs-".concat(String(wrap))], wrap !== Grid.defaultProps.wrap), (0, _defineProperty2.default)(_classNames, classes["align-items-xs-".concat(String(alignItems))], alignItems !== Grid.defaultProps.alignItems), (0, _defineProperty2.default)(_classNames, classes["align-content-xs-".concat(String(alignContent))], alignContent !== Grid.defaultProps.alignContent), (0, _defineProperty2.default)(_classNames, classes["justify-xs-".concat(String(justify))], justify !== Grid.defaultProps.justify), (0, _defineProperty2.default)(_classNames, classes["grid-xs-".concat(String(xs))], xs !== false), (0, _defineProperty2.default)(_classNames, classes["grid-sm-".concat(String(sm))], sm !== false), (0, _defineProperty2.default)(_classNames, classes["grid-md-".concat(String(md))], md !== false), (0, _defineProperty2.default)(_classNames, classes["grid-lg-".concat(String(lg))], lg !== false), (0, _defineProperty2.default)(_classNames, classes["grid-xl-".concat(String(xl))], xl !== false), _classNames), classNameProp);
return _react.default.createElement(Component, (0, _extends2.default)({
className: className
}, other));
}
Grid.propTypes = true ? {
/**
* Defines the `align-content` style property.
* It's applied for all screen sizes.
*/
alignContent: _propTypes.default.oneOf(['stretch', 'center', 'flex-start', 'flex-end', 'space-between', 'space-around']),
/**
* Defines the `align-items` style property.
* It's applied for all screen sizes.
*/
alignItems: _propTypes.default.oneOf(['flex-start', 'center', 'flex-end', 'stretch', 'baseline']),
/**
* The content of the component.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* The component used for the root node.
* Either a string to use a DOM element or a component.
*/
component: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* If `true`, the component will have the flex *container* behavior.
* You should be wrapping *items* with a *container*.
*/
container: _propTypes.default.bool,
/**
* Defines the `flex-direction` style property.
* It is applied for all screen sizes.
*/
direction: _propTypes.default.oneOf(['row', 'row-reverse', 'column', 'column-reverse']),
/**
* If `true`, the component will have the flex *item* behavior.
* You should be wrapping *items* with a *container*.
*/
item: _propTypes.default.bool,
/**
* Defines the `justify-content` style property.
* It is applied for all screen sizes.
*/
justify: _propTypes.default.oneOf(['flex-start', 'center', 'flex-end', 'space-between', 'space-around']),
/**
* Defines the number of grids the component is going to use.
* It's applied for the `lg` breakpoint and wider screens if not overridden.
*/
lg: _propTypes.default.oneOf([false, 'auto', true, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]),
/**
* Defines the number of grids the component is going to use.
* It's applied for the `md` breakpoint and wider screens if not overridden.
*/
md: _propTypes.default.oneOf([false, 'auto', true, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]),
/**
* Defines the number of grids the component is going to use.
* It's applied for the `sm` breakpoint and wider screens if not overridden.
*/
sm: _propTypes.default.oneOf([false, 'auto', true, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]),
/**
* Defines the space between the type `item` component.
* It can only be used on a type `container` component.
*/
spacing: _propTypes.default.oneOf(GUTTERS),
/**
* Defines the `flex-wrap` style property.
* It's applied for all screen sizes.
*/
wrap: _propTypes.default.oneOf(['nowrap', 'wrap', 'wrap-reverse']),
/**
* Defines the number of grids the component is going to use.
* It's applied for the `xl` breakpoint and wider screens.
*/
xl: _propTypes.default.oneOf([false, 'auto', true, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]),
/**
* Defines the number of grids the component is going to use.
* It's applied for all the screen sizes with the lowest priority.
*/
xs: _propTypes.default.oneOf([false, 'auto', true, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]),
/**
* If `true`, it sets `min-width: 0` on the item.
* Refer to the limitations section of the documentation to better understand the use case.
*/
zeroMinWidth: _propTypes.default.bool
} : undefined;
Grid.defaultProps = {
alignContent: 'stretch',
alignItems: 'stretch',
component: 'div',
container: false,
direction: 'row',
item: false,
justify: 'flex-start',
lg: false,
md: false,
sm: false,
spacing: 0,
wrap: 'wrap',
xl: false,
xs: false,
zeroMinWidth: false
};
var StyledGrid = (0, _withStyles.default)(styles, {
name: 'MuiGrid'
})(Grid);
if (true) {
var requireProp = (0, _requirePropFactory.default)('Grid');
StyledGrid.propTypes = (0, _objectSpread2.default)({}, StyledGrid.propTypes, {
alignContent: requireProp('container'),
alignItems: requireProp('container'),
direction: requireProp('container'),
justify: requireProp('container'),
lg: requireProp('item'),
md: requireProp('item'),
sm: requireProp('item'),
spacing: requireProp('container'),
wrap: requireProp('container'),
xs: requireProp('item'),
zeroMinWidth: requireProp('zeroMinWidth')
});
}
var _default = StyledGrid;
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Grid/index.js":
/*!******************************************************!*\
!*** ./node_modules/@material-ui/core/Grid/index.js ***!
\******************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _Grid.default;
}
});
var _Grid = _interopRequireDefault(__webpack_require__(/*! ./Grid */ "./node_modules/@material-ui/core/Grid/Grid.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/GridList/GridList.js":
/*!*************************************************************!*\
!*** ./node_modules/@material-ui/core/GridList/GridList.js ***!
\*************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectSpread */ "./node_modules/@babel/runtime/helpers/builtin/objectSpread.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _warning = _interopRequireDefault(__webpack_require__(/*! warning */ "./node_modules/@material-ui/core/node_modules/warning/warning.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var styles = {
root: {
display: 'flex',
flexWrap: 'wrap',
overflowY: 'auto',
listStyle: 'none',
padding: 0,
WebkitOverflowScrolling: 'touch' // Add iOS momentum scrolling.
}
};
exports.styles = styles;
function GridList(props) {
var cellHeight = props.cellHeight,
children = props.children,
classes = props.classes,
classNameProp = props.className,
cols = props.cols,
Component = props.component,
spacing = props.spacing,
style = props.style,
other = (0, _objectWithoutProperties2.default)(props, ["cellHeight", "children", "classes", "className", "cols", "component", "spacing", "style"]);
return _react.default.createElement(Component, (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, classNameProp),
style: (0, _objectSpread2.default)({
margin: -spacing / 2
}, style)
}, other), _react.default.Children.map(children, function (child) {
if (!_react.default.isValidElement(child)) {
return null;
}
true ? (0, _warning.default)(child.type !== _react.default.Fragment, ["Material-UI: the GridList component doesn't accept a Fragment as a child.", 'Consider providing an array instead.'].join('\n')) : undefined;
var childCols = child.props.cols || 1;
var childRows = child.props.rows || 1;
return _react.default.cloneElement(child, {
style: (0, _extends2.default)({
width: "".concat(100 / cols * childCols, "%"),
height: cellHeight === 'auto' ? 'auto' : cellHeight * childRows + spacing,
padding: spacing / 2
}, child.props.style)
});
}));
}
GridList.propTypes = true ? {
/**
* Number of px for one cell height.
* You can set `'auto'` if you want to let the children determine the height.
*/
cellHeight: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.oneOf(['auto'])]),
/**
* Grid Tiles that will be in Grid List.
*/
children: _propTypes.default.node.isRequired,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* Number of columns.
*/
cols: _propTypes.default.number,
/**
* The component used for the root node.
* Either a string to use a DOM element or a component.
*/
component: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* Number of px for the spacing between tiles.
*/
spacing: _propTypes.default.number,
/**
* @ignore
*/
style: _propTypes.default.object
} : undefined;
GridList.defaultProps = {
cellHeight: 180,
cols: 2,
component: 'ul',
spacing: 4
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiGridList'
})(GridList);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/GridList/index.js":
/*!**********************************************************!*\
!*** ./node_modules/@material-ui/core/GridList/index.js ***!
\**********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _GridList.default;
}
});
var _GridList = _interopRequireDefault(__webpack_require__(/*! ./GridList */ "./node_modules/@material-ui/core/GridList/GridList.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/GridListTile/GridListTile.js":
/*!*********************************************************************!*\
!*** ./node_modules/@material-ui/core/GridListTile/GridListTile.js ***!
\*********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/toConsumableArray */ "./node_modules/@babel/runtime/helpers/builtin/toConsumableArray.js"));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js"));
var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/inherits */ "./node_modules/@babel/runtime/helpers/builtin/inherits.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _reactEventListener = _interopRequireDefault(__webpack_require__(/*! react-event-listener */ "./node_modules/react-event-listener/dist/react-event-listener.cjs.js"));
var _debounce = _interopRequireDefault(__webpack_require__(/*! debounce */ "./node_modules/debounce/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
// < 1kb payload overhead when lodash/debounce is > 3kb.
var styles = {
root: {
boxSizing: 'border-box',
flexShrink: 0
},
tile: {
position: 'relative',
display: 'block',
// In case it's not renderd with a div.
height: '100%',
overflow: 'hidden'
},
imgFullHeight: {
height: '100%',
transform: 'translateX(-50%)',
position: 'relative',
left: '50%'
},
imgFullWidth: {
width: '100%',
position: 'relative',
transform: 'translateY(-50%)',
top: '50%'
}
};
exports.styles = styles;
var GridListTile =
/*#__PURE__*/
function (_React$Component) {
(0, _inherits2.default)(GridListTile, _React$Component);
function GridListTile() {
var _ref;
var _temp, _this;
(0, _classCallCheck2.default)(this, GridListTile);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
return (0, _possibleConstructorReturn2.default)(_this, (_temp = _this = (0, _possibleConstructorReturn2.default)(this, (_ref = GridListTile.__proto__ || Object.getPrototypeOf(GridListTile)).call.apply(_ref, [this].concat(args))), _this.imgElement = null, _this.handleResize = (0, _debounce.default)(function () {
_this.fit();
}, 166), _this.fit = function () {
var imgElement = _this.imgElement;
if (!imgElement || !imgElement.complete) {
return;
}
if (imgElement.width / imgElement.height > imgElement.parentNode.offsetWidth / imgElement.parentNode.offsetHeight) {
var _imgElement$classList, _imgElement$classList2;
(_imgElement$classList = imgElement.classList).remove.apply(_imgElement$classList, (0, _toConsumableArray2.default)(_this.props.classes.imgFullWidth.split(' ')));
(_imgElement$classList2 = imgElement.classList).add.apply(_imgElement$classList2, (0, _toConsumableArray2.default)(_this.props.classes.imgFullHeight.split(' ')));
} else {
var _imgElement$classList3, _imgElement$classList4;
(_imgElement$classList3 = imgElement.classList).remove.apply(_imgElement$classList3, (0, _toConsumableArray2.default)(_this.props.classes.imgFullHeight.split(' ')));
(_imgElement$classList4 = imgElement.classList).add.apply(_imgElement$classList4, (0, _toConsumableArray2.default)(_this.props.classes.imgFullWidth.split(' ')));
}
imgElement.removeEventListener('load', _this.fit);
}, _temp));
}
(0, _createClass2.default)(GridListTile, [{
key: "componentDidMount",
// Corresponds to 10 frames at 60 Hz.
value: function componentDidMount() {
this.ensureImageCover();
}
}, {
key: "componentDidUpdate",
value: function componentDidUpdate() {
this.ensureImageCover();
}
}, {
key: "componentWillUnmount",
value: function componentWillUnmount() {
this.handleResize.clear();
}
}, {
key: "ensureImageCover",
value: function ensureImageCover() {
if (!this.imgElement) {
return;
}
if (this.imgElement.complete) {
this.fit();
} else {
this.imgElement.addEventListener('load', this.fit);
}
}
}, {
key: "render",
value: function render() {
var _this2 = this;
var _props = this.props,
children = _props.children,
classes = _props.classes,
className = _props.className,
cols = _props.cols,
Component = _props.component,
rows = _props.rows,
other = (0, _objectWithoutProperties2.default)(_props, ["children", "classes", "className", "cols", "component", "rows"]);
return _react.default.createElement(Component, (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, className)
}, other), _react.default.createElement(_reactEventListener.default, {
target: "window",
onResize: this.handleResize
}), _react.default.createElement("div", {
className: classes.tile
}, _react.default.Children.map(children, function (child) {
if (!_react.default.isValidElement(child)) {
return null;
}
if (child.type === 'img') {
return _react.default.cloneElement(child, {
ref: function ref(node) {
_this2.imgElement = node;
}
});
}
return child;
})));
}
}]);
return GridListTile;
}(_react.default.Component);
GridListTile.propTypes = true ? {
/**
* Theoretically you can pass any node as children, but the main use case is to pass an img,
* in which case GridListTile takes care of making the image "cover" available space
* (similar to `background-size: cover` or to `object-fit: cover`).
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* Width of the tile in number of grid cells.
*/
cols: _propTypes.default.number,
/**
* The component used for the root node.
* Either a string to use a DOM element or a component.
*/
component: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* Height of the tile in number of grid cells.
*/
rows: _propTypes.default.number
} : undefined;
GridListTile.defaultProps = {
cols: 1,
component: 'li',
rows: 1
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiGridListTile'
})(GridListTile);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/GridListTile/index.js":
/*!**************************************************************!*\
!*** ./node_modules/@material-ui/core/GridListTile/index.js ***!
\**************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _GridListTile.default;
}
});
var _GridListTile = _interopRequireDefault(__webpack_require__(/*! ./GridListTile */ "./node_modules/@material-ui/core/GridListTile/GridListTile.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/GridListTileBar/GridListTileBar.js":
/*!***************************************************************************!*\
!*** ./node_modules/@material-ui/core/GridListTileBar/GridListTileBar.js ***!
\***************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var styles = function styles(theme) {
return {
root: {
position: 'absolute',
left: 0,
right: 0,
height: 48,
background: 'rgba(0, 0, 0, 0.5)',
display: 'flex',
alignItems: 'center',
fontFamily: theme.typography.fontFamily
},
titlePositionBottom: {
bottom: 0
},
titlePositionTop: {
top: 0
},
rootSubtitle: {
height: 68
},
titleWrap: {
flexGrow: 1,
marginLeft: theme.mixins.gutters().paddingLeft,
marginRight: theme.mixins.gutters().paddingRight,
color: theme.palette.common.white,
overflow: 'hidden'
},
titleWrapActionPosLeft: {
marginLeft: 0
},
titleWrapActionPosRight: {
marginRight: 0
},
title: {
fontSize: theme.typography.pxToRem(16),
lineHeight: '24px',
textOverflow: 'ellipsis',
overflow: 'hidden',
whiteSpace: 'nowrap'
},
subtitle: {
fontSize: theme.typography.pxToRem(12),
lineHeight: 1,
textOverflow: 'ellipsis',
overflow: 'hidden',
whiteSpace: 'nowrap'
},
actionIcon: {},
actionIconActionPosLeft: {
order: -1
}
};
};
exports.styles = styles;
function GridListTileBar(props) {
var _classNames, _classNames2;
var actionIcon = props.actionIcon,
actionPosition = props.actionPosition,
classes = props.classes,
classNameProp = props.className,
subtitle = props.subtitle,
title = props.title,
titlePosition = props.titlePosition,
other = (0, _objectWithoutProperties2.default)(props, ["actionIcon", "actionPosition", "classes", "className", "subtitle", "title", "titlePosition"]);
var actionPos = actionIcon && actionPosition;
var className = (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.titlePositionBottom, titlePosition === 'bottom'), (0, _defineProperty2.default)(_classNames, classes.titlePositionTop, titlePosition === 'top'), (0, _defineProperty2.default)(_classNames, classes.rootSubtitle, subtitle), _classNames), classNameProp); // Remove the margin between the title / subtitle wrapper, and the Action Icon
var titleWrapClassName = (0, _classnames.default)(classes.titleWrap, (_classNames2 = {}, (0, _defineProperty2.default)(_classNames2, classes.titleWrapActionPosLeft, actionPos === 'left'), (0, _defineProperty2.default)(_classNames2, classes.titleWrapActionPosRight, actionPos === 'right'), _classNames2));
return _react.default.createElement("div", (0, _extends2.default)({
className: className
}, other), _react.default.createElement("div", {
className: titleWrapClassName
}, _react.default.createElement("div", {
className: classes.title
}, title), subtitle ? _react.default.createElement("div", {
className: classes.subtitle
}, subtitle) : null), actionIcon ? _react.default.createElement("div", {
className: (0, _classnames.default)(classes.actionIcon, (0, _defineProperty2.default)({}, classes.actionIconActionPosLeft, actionPos === 'left'))
}, actionIcon) : null);
}
GridListTileBar.propTypes = true ? {
/**
* An IconButton element to be used as secondary action target
* (primary action target is the tile itself).
*/
actionIcon: _propTypes.default.node,
/**
* Position of secondary action IconButton.
*/
actionPosition: _propTypes.default.oneOf(['left', 'right']),
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* String or element serving as subtitle (support text).
*/
subtitle: _propTypes.default.node,
/**
* Title to be displayed on tile.
*/
title: _propTypes.default.node,
/**
* Position of the title bar.
*/
titlePosition: _propTypes.default.oneOf(['top', 'bottom'])
} : undefined;
GridListTileBar.defaultProps = {
actionPosition: 'right',
titlePosition: 'bottom'
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiGridListTileBar'
})(GridListTileBar);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/GridListTileBar/index.js":
/*!*****************************************************************!*\
!*** ./node_modules/@material-ui/core/GridListTileBar/index.js ***!
\*****************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _GridListTileBar.default;
}
});
var _GridListTileBar = _interopRequireDefault(__webpack_require__(/*! ./GridListTileBar */ "./node_modules/@material-ui/core/GridListTileBar/GridListTileBar.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/Grow/Grow.js":
/*!*****************************************************!*\
!*** ./node_modules/@material-ui/core/Grow/Grow.js ***!
\*****************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectSpread */ "./node_modules/@babel/runtime/helpers/builtin/objectSpread.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js"));
var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/inherits */ "./node_modules/@babel/runtime/helpers/builtin/inherits.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _Transition = _interopRequireDefault(__webpack_require__(/*! react-transition-group/Transition */ "./node_modules/@material-ui/core/node_modules/react-transition-group/Transition.js"));
var _withTheme = _interopRequireDefault(__webpack_require__(/*! ../styles/withTheme */ "./node_modules/@material-ui/core/styles/withTheme.js"));
var _utils = __webpack_require__(/*! ../transitions/utils */ "./node_modules/@material-ui/core/transitions/utils.js");
// @inheritedComponent Transition
function getScale(value) {
return "scale(".concat(value, ", ").concat(Math.pow(value, 2), ")");
}
var styles = {
entering: {
opacity: 1,
transform: getScale(1)
},
entered: {
opacity: 1,
transform: getScale(1)
}
};
/**
* The Grow transition is used by the [Tooltip](/demos/tooltips) and
* [Popover](/utils/popover) components.
* It uses [react-transition-group](https://github.com/reactjs/react-transition-group) internally.
*/
var Grow =
/*#__PURE__*/
function (_React$Component) {
(0, _inherits2.default)(Grow, _React$Component);
function Grow() {
var _ref;
var _temp, _this;
(0, _classCallCheck2.default)(this, Grow);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
return (0, _possibleConstructorReturn2.default)(_this, (_temp = _this = (0, _possibleConstructorReturn2.default)(this, (_ref = Grow.__proto__ || Object.getPrototypeOf(Grow)).call.apply(_ref, [this].concat(args))), _this.autoTimeout = null, _this.timer = null, _this.handleEnter = function (node) {
var _this$props = _this.props,
theme = _this$props.theme,
timeout = _this$props.timeout;
(0, _utils.reflow)(node); // So the animation always start from the start.
var _getTransitionProps = (0, _utils.getTransitionProps)(_this.props, {
mode: 'enter'
}),
transitionDuration = _getTransitionProps.duration,
delay = _getTransitionProps.delay;
var duration = 0;
if (timeout === 'auto') {
duration = theme.transitions.getAutoHeightDuration(node.clientHeight);
_this.autoTimeout = duration;
} else {
duration = transitionDuration;
}
node.style.transition = [theme.transitions.create('opacity', {
duration: duration,
delay: delay
}), theme.transitions.create('transform', {
duration: duration * 0.666,
delay: delay
})].join(',');
if (_this.props.onEnter) {
_this.props.onEnter(node);
}
}, _this.handleExit = function (node) {
var _this$props2 = _this.props,
theme = _this$props2.theme,
timeout = _this$props2.timeout;
var duration = 0;
var _getTransitionProps2 = (0, _utils.getTransitionProps)(_this.props, {
mode: 'exit'
}),
transitionDuration = _getTransitionProps2.duration,
delay = _getTransitionProps2.delay;
if (timeout === 'auto') {
duration = theme.transitions.getAutoHeightDuration(node.clientHeight);
_this.autoTimeout = duration;
} else {
duration = transitionDuration;
}
node.style.transition = [theme.transitions.create('opacity', {
duration: duration,
delay: delay
}), theme.transitions.create('transform', {
duration: duration * 0.666,
delay: delay || duration * 0.333
})].join(',');
node.style.opacity = '0';
node.style.transform = getScale(0.75);
if (_this.props.onExit) {
_this.props.onExit(node);
}
}, _this.addEndListener = function (_, next) {
if (_this.props.timeout === 'auto') {
_this.timer = setTimeout(next, _this.autoTimeout || 0);
}
}, _temp));
}
(0, _createClass2.default)(Grow, [{
key: "componentWillUnmount",
value: function componentWillUnmount() {
clearTimeout(this.timer);
}
}, {
key: "render",
value: function render() {
var _props = this.props,
children = _props.children,
onEnter = _props.onEnter,
onExit = _props.onExit,
styleProp = _props.style,
theme = _props.theme,
timeout = _props.timeout,
other = (0, _objectWithoutProperties2.default)(_props, ["children", "onEnter", "onExit", "style", "theme", "timeout"]);
var style = (0, _objectSpread2.default)({}, styleProp, _react.default.isValidElement(children) ? children.props.style : {});
return _react.default.createElement(_Transition.default, (0, _extends2.default)({
appear: true,
onEnter: this.handleEnter,
onExit: this.handleExit,
addEndListener: this.addEndListener,
timeout: timeout === 'auto' ? null : timeout
}, other), function (state, childProps) {
return _react.default.cloneElement(children, (0, _objectSpread2.default)({
style: (0, _objectSpread2.default)({
opacity: 0,
transform: getScale(0.75)
}, styles[state], style)
}, childProps));
});
}
}]);
return Grow;
}(_react.default.Component);
Grow.propTypes = true ? {
/**
* A single child content element.
*/
children: _propTypes.default.oneOfType([_propTypes.default.element, _propTypes.default.func]),
/**
* If `true`, show the component; triggers the enter or exit animation.
*/
in: _propTypes.default.bool,
/**
* @ignore
*/
onEnter: _propTypes.default.func,
/**
* @ignore
*/
onExit: _propTypes.default.func,
/**
* @ignore
*/
style: _propTypes.default.object,
/**
* @ignore
*/
theme: _propTypes.default.object.isRequired,
/**
* The duration for the transition, in milliseconds.
* You may specify a single timeout for all transitions, or individually with an object.
*
* Set to 'auto' to automatically calculate transition time based on height.
*/
timeout: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.shape({
enter: _propTypes.default.number,
exit: _propTypes.default.number
}), _propTypes.default.oneOf(['auto'])])
} : undefined;
Grow.defaultProps = {
timeout: 'auto'
};
Grow.muiSupportAuto = true;
var _default = (0, _withTheme.default)()(Grow);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Grow/index.js":
/*!******************************************************!*\
!*** ./node_modules/@material-ui/core/Grow/index.js ***!
\******************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _Grow.default;
}
});
var _Grow = _interopRequireDefault(__webpack_require__(/*! ./Grow */ "./node_modules/@material-ui/core/Grow/Grow.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/Hidden/Hidden.js":
/*!*********************************************************!*\
!*** ./node_modules/@material-ui/core/Hidden/Hidden.js ***!
\*********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _HiddenJs = _interopRequireDefault(__webpack_require__(/*! ./HiddenJs */ "./node_modules/@material-ui/core/Hidden/HiddenJs.js"));
var _HiddenCss = _interopRequireDefault(__webpack_require__(/*! ./HiddenCss */ "./node_modules/@material-ui/core/Hidden/HiddenCss.js"));
/**
* Responsively hides children based on the selected implementation.
*/
function Hidden(props) {
var implementation = props.implementation,
other = (0, _objectWithoutProperties2.default)(props, ["implementation"]);
if (implementation === 'js') {
return _react.default.createElement(_HiddenJs.default, other);
}
return _react.default.createElement(_HiddenCss.default, other);
}
Hidden.propTypes = true ? {
/**
* The content of the component.
*/
children: _propTypes.default.node,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* Specify which implementation to use. 'js' is the default, 'css' works better for server
* side rendering.
*/
implementation: _propTypes.default.oneOf(['js', 'css']),
/**
* You can use this property when choosing the `js` implementation with server side rendering.
*
* As `window.innerWidth` is unavailable on the server,
* we default to rendering an empty componenent during the first mount.
* In some situation you might want to use an heristic to approximate
* the screen width of the client browser screen width.
*
* For instance, you could be using the user-agent or the client-hints.
* http://caniuse.com/#search=client%20hint
*/
initialWidth: _propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl']),
/**
* If true, screens this size and down will be hidden.
*/
lgDown: _propTypes.default.bool,
/**
* If true, screens this size and up will be hidden.
*/
lgUp: _propTypes.default.bool,
/**
* If true, screens this size and down will be hidden.
*/
mdDown: _propTypes.default.bool,
/**
* If true, screens this size and up will be hidden.
*/
mdUp: _propTypes.default.bool,
/**
* Hide the given breakpoint(s).
*/
only: _propTypes.default.oneOfType([_propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl']), _propTypes.default.arrayOf(_propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl']))]),
/**
* If true, screens this size and down will be hidden.
*/
smDown: _propTypes.default.bool,
/**
* If true, screens this size and up will be hidden.
*/
smUp: _propTypes.default.bool,
/**
* If true, screens this size and down will be hidden.
*/
xlDown: _propTypes.default.bool,
/**
* If true, screens this size and up will be hidden.
*/
xlUp: _propTypes.default.bool,
/**
* If true, screens this size and down will be hidden.
*/
xsDown: _propTypes.default.bool,
/**
* If true, screens this size and up will be hidden.
*/
xsUp: _propTypes.default.bool
} : undefined;
Hidden.defaultProps = {
implementation: 'js',
lgDown: false,
lgUp: false,
mdDown: false,
mdUp: false,
smDown: false,
smUp: false,
xlDown: false,
xlUp: false,
xsDown: false,
xsUp: false
};
var _default = Hidden;
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Hidden/HiddenCss.js":
/*!************************************************************!*\
!*** ./node_modules/@material-ui/core/Hidden/HiddenCss.js ***!
\************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _warning = _interopRequireDefault(__webpack_require__(/*! warning */ "./node_modules/@material-ui/core/node_modules/warning/warning.js"));
var _createBreakpoints = __webpack_require__(/*! ../styles/createBreakpoints */ "./node_modules/@material-ui/core/styles/createBreakpoints.js");
var _helpers = __webpack_require__(/*! ../utils/helpers */ "./node_modules/@material-ui/core/utils/helpers.js");
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var styles = function styles(theme) {
var hidden = {
display: 'none'
};
return _createBreakpoints.keys.reduce(function (acc, key) {
acc["only".concat((0, _helpers.capitalize)(key))] = (0, _defineProperty2.default)({}, theme.breakpoints.only(key), hidden);
acc["".concat(key, "Up")] = (0, _defineProperty2.default)({}, theme.breakpoints.up(key), hidden);
acc["".concat(key, "Down")] = (0, _defineProperty2.default)({}, theme.breakpoints.down(key), hidden);
return acc;
}, {});
};
/**
* @ignore - internal component.
*/
function HiddenCss(props) {
var children = props.children,
classes = props.classes,
className = props.className,
lgDown = props.lgDown,
lgUp = props.lgUp,
mdDown = props.mdDown,
mdUp = props.mdUp,
only = props.only,
smDown = props.smDown,
smUp = props.smUp,
xlDown = props.xlDown,
xlUp = props.xlUp,
xsDown = props.xsDown,
xsUp = props.xsUp,
other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "lgDown", "lgUp", "mdDown", "mdUp", "only", "smDown", "smUp", "xlDown", "xlUp", "xsDown", "xsUp"]);
true ? (0, _warning.default)(Object.keys(other).length === 0 || Object.keys(other).length === 1 && other.hasOwnProperty('ref'), "Material-UI: unsupported properties received ".concat(Object.keys(other).join(', '), " by ``.")) : undefined;
var classNames = [];
if (className) {
classNames.push(className);
}
for (var i = 0; i < _createBreakpoints.keys.length; i += 1) {
var breakpoint = _createBreakpoints.keys[i];
var breakpointUp = props["".concat(breakpoint, "Up")];
var breakpointDown = props["".concat(breakpoint, "Down")];
if (breakpointUp) {
classNames.push(classes["".concat(breakpoint, "Up")]);
}
if (breakpointDown) {
classNames.push(classes["".concat(breakpoint, "Down")]);
}
}
if (only) {
var onlyBreakpoints = Array.isArray(only) ? only : [only];
onlyBreakpoints.forEach(function (breakpoint) {
classNames.push(classes["only".concat((0, _helpers.capitalize)(breakpoint))]);
});
}
return _react.default.createElement("div", {
className: classNames.join(' ')
}, children);
}
HiddenCss.propTypes = true ? {
/**
* The content of the component.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* Specify which implementation to use. 'js' is the default, 'css' works better for server
* side rendering.
*/
implementation: _propTypes.default.oneOf(['js', 'css']),
/**
* If true, screens this size and down will be hidden.
*/
lgDown: _propTypes.default.bool,
/**
* If true, screens this size and up will be hidden.
*/
lgUp: _propTypes.default.bool,
/**
* If true, screens this size and down will be hidden.
*/
mdDown: _propTypes.default.bool,
/**
* If true, screens this size and up will be hidden.
*/
mdUp: _propTypes.default.bool,
/**
* Hide the given breakpoint(s).
*/
only: _propTypes.default.oneOfType([_propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl']), _propTypes.default.arrayOf(_propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl']))]),
/**
* If true, screens this size and down will be hidden.
*/
smDown: _propTypes.default.bool,
/**
* If true, screens this size and up will be hidden.
*/
smUp: _propTypes.default.bool,
/**
* If true, screens this size and down will be hidden.
*/
xlDown: _propTypes.default.bool,
/**
* If true, screens this size and up will be hidden.
*/
xlUp: _propTypes.default.bool,
/**
* If true, screens this size and down will be hidden.
*/
xsDown: _propTypes.default.bool,
/**
* If true, screens this size and up will be hidden.
*/
xsUp: _propTypes.default.bool
} : undefined;
var _default = (0, _withStyles.default)(styles)(HiddenCss);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Hidden/HiddenJs.js":
/*!***********************************************************!*\
!*** ./node_modules/@material-ui/core/Hidden/HiddenJs.js ***!
\***********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireWildcard */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireWildcard.js");
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _createBreakpoints = __webpack_require__(/*! ../styles/createBreakpoints */ "./node_modules/@material-ui/core/styles/createBreakpoints.js");
var _withWidth = _interopRequireWildcard(__webpack_require__(/*! ../withWidth */ "./node_modules/@material-ui/core/withWidth/index.js"));
var _exactProp = _interopRequireDefault(__webpack_require__(/*! ../utils/exactProp */ "./node_modules/@material-ui/core/utils/exactProp.js"));
/**
* @ignore - internal component.
*/
function HiddenJs(props) {
var children = props.children,
only = props.only,
width = props.width;
var visible = true; // `only` check is faster to get out sooner if used.
if (only) {
if (Array.isArray(only)) {
for (var i = 0; i < only.length; i += 1) {
var breakpoint = only[i];
if (width === breakpoint) {
visible = false;
break;
}
}
} else if (only && width === only) {
visible = false;
}
} // Allow `only` to be combined with other props. If already hidden, no need to check others.
if (visible) {
// determine visibility based on the smallest size up
for (var _i = 0; _i < _createBreakpoints.keys.length; _i += 1) {
var _breakpoint = _createBreakpoints.keys[_i];
var breakpointUp = props["".concat(_breakpoint, "Up")];
var breakpointDown = props["".concat(_breakpoint, "Down")];
if (breakpointUp && (0, _withWidth.isWidthUp)(_breakpoint, width) || breakpointDown && (0, _withWidth.isWidthDown)(_breakpoint, width)) {
visible = false;
break;
}
}
}
if (!visible) {
return null;
}
return children;
}
HiddenJs.propTypes = {
/**
* The content of the component.
*/
children: _propTypes.default.node,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* Specify which implementation to use. 'js' is the default, 'css' works better for server
* side rendering.
*/
implementation: _propTypes.default.oneOf(['js', 'css']),
/**
* You can use this property when choosing the `js` implementation with server side rendering.
*
* As `window.innerWidth` is unavailable on the server,
* we default to rendering an empty componenent during the first mount.
* In some situation you might want to use an heristic to approximate
* the screen width of the client browser screen width.
*
* For instance, you could be using the user-agent or the client-hints.
* http://caniuse.com/#search=client%20hint
*/
initialWidth: _propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl']),
/**
* If true, screens this size and down will be hidden.
*/
lgDown: _propTypes.default.bool,
/**
* If true, screens this size and up will be hidden.
*/
lgUp: _propTypes.default.bool,
/**
* If true, screens this size and down will be hidden.
*/
mdDown: _propTypes.default.bool,
/**
* If true, screens this size and up will be hidden.
*/
mdUp: _propTypes.default.bool,
/**
* Hide the given breakpoint(s).
*/
only: _propTypes.default.oneOfType([_propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl']), _propTypes.default.arrayOf(_propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl']))]),
/**
* If true, screens this size and down will be hidden.
*/
smDown: _propTypes.default.bool,
/**
* If true, screens this size and up will be hidden.
*/
smUp: _propTypes.default.bool,
/**
* @ignore
* width prop provided by withWidth decorator.
*/
width: _propTypes.default.string.isRequired,
/**
* If true, screens this size and down will be hidden.
*/
xlDown: _propTypes.default.bool,
/**
* If true, screens this size and up will be hidden.
*/
xlUp: _propTypes.default.bool,
/**
* If true, screens this size and down will be hidden.
*/
xsDown: _propTypes.default.bool,
/**
* If true, screens this size and up will be hidden.
*/
xsUp: _propTypes.default.bool
};
HiddenJs.propTypes = (0, _exactProp.default)(HiddenJs.propTypes);
var _default = (0, _withWidth.default)()(HiddenJs);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Hidden/index.js":
/*!********************************************************!*\
!*** ./node_modules/@material-ui/core/Hidden/index.js ***!
\********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _Hidden.default;
}
});
var _Hidden = _interopRequireDefault(__webpack_require__(/*! ./Hidden */ "./node_modules/@material-ui/core/Hidden/Hidden.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/Icon/Icon.js":
/*!*****************************************************!*\
!*** ./node_modules/@material-ui/core/Icon/Icon.js ***!
\*****************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _helpers = __webpack_require__(/*! ../utils/helpers */ "./node_modules/@material-ui/core/utils/helpers.js");
var styles = function styles(theme) {
return {
root: {
userSelect: 'none',
fontSize: 24,
width: '1em',
height: '1em',
// Chrome fix for https://bugs.chromium.org/p/chromium/issues/detail?id=820541
// To remove at some point.
overflow: 'hidden',
flexShrink: 0
},
colorPrimary: {
color: theme.palette.primary.main
},
colorSecondary: {
color: theme.palette.secondary.main
},
colorAction: {
color: theme.palette.action.active
},
colorError: {
color: theme.palette.error.main
},
colorDisabled: {
color: theme.palette.action.disabled
},
fontSizeInherit: {
fontSize: 'inherit'
}
};
};
exports.styles = styles;
function Icon(props) {
var _classNames;
var children = props.children,
classes = props.classes,
className = props.className,
color = props.color,
fontSize = props.fontSize,
other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "color", "fontSize"]);
return _react.default.createElement("span", (0, _extends2.default)({
className: (0, _classnames.default)('material-icons', classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes["color".concat((0, _helpers.capitalize)(color))], color !== 'inherit'), (0, _defineProperty2.default)(_classNames, classes["fontSize".concat((0, _helpers.capitalize)(fontSize))], fontSize !== 'default'), _classNames), className),
"aria-hidden": "true"
}, other), children);
}
Icon.propTypes = true ? {
/**
* The name of the icon font ligature.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @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(['inherit', 'primary', 'secondary', 'action', 'error', 'disabled']),
/**
* The fontSize applied to the icon. Defaults to 24px, but can be configure to inherit font size.
*/
fontSize: _propTypes.default.oneOf(['inherit', 'default'])
} : undefined;
Icon.defaultProps = {
color: 'inherit',
fontSize: 'default'
};
Icon.muiName = 'Icon';
var _default = (0, _withStyles.default)(styles, {
name: 'MuiIcon'
})(Icon);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Icon/index.js":
/*!******************************************************!*\
!*** ./node_modules/@material-ui/core/Icon/index.js ***!
\******************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _Icon.default;
}
});
var _Icon = _interopRequireDefault(__webpack_require__(/*! ./Icon */ "./node_modules/@material-ui/core/Icon/Icon.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/IconButton/IconButton.js":
/*!*****************************************************************!*\
!*** ./node_modules/@material-ui/core/IconButton/IconButton.js ***!
\*****************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _colorManipulator = __webpack_require__(/*! ../styles/colorManipulator */ "./node_modules/@material-ui/core/styles/colorManipulator.js");
var _ButtonBase = _interopRequireDefault(__webpack_require__(/*! ../ButtonBase */ "./node_modules/@material-ui/core/ButtonBase/index.js"));
var _helpers = __webpack_require__(/*! ../utils/helpers */ "./node_modules/@material-ui/core/utils/helpers.js");
// @inheritedComponent ButtonBase
var styles = function styles(theme) {
return {
root: {
textAlign: 'center',
flex: '0 0 auto',
fontSize: theme.typography.pxToRem(24),
width: 48,
height: 48,
padding: 0,
borderRadius: '50%',
color: theme.palette.action.active,
transition: theme.transitions.create('background-color', {
duration: theme.transitions.duration.shortest
}),
'&:hover': {
backgroundColor: (0, _colorManipulator.fade)(theme.palette.action.active, 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
}
},
colorInherit: {
color: 'inherit'
},
colorPrimary: {
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'
}
}
},
colorSecondary: {
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'
}
}
},
disabled: {},
label: {
width: '100%',
display: 'flex',
alignItems: 'inherit',
justifyContent: 'inherit'
}
};
};
/**
* Refer to the [Icons](/style/icons) section of the documentation
* regarding the available icon options.
*/
exports.styles = styles;
function IconButton(props) {
var _classNames;
var children = props.children,
classes = props.classes,
className = props.className,
color = props.color,
disabled = props.disabled,
other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "color", "disabled"]);
return _react.default.createElement(_ButtonBase.default, (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes["color".concat((0, _helpers.capitalize)(color))], color !== 'default'), (0, _defineProperty2.default)(_classNames, classes.disabled, disabled), _classNames), className),
centerRipple: true,
focusRipple: true,
disabled: disabled
}, other), _react.default.createElement("span", {
className: classes.label
}, children));
}
IconButton.propTypes = true ? {
/**
* The icon element.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @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']),
/**
* If `true`, the button will be disabled.
*/
disabled: _propTypes.default.bool,
/**
* If `true`, the ripple will be disabled.
*/
disableRipple: _propTypes.default.bool
} : undefined;
IconButton.defaultProps = {
color: 'default',
disabled: false
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiIconButton'
})(IconButton);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/IconButton/index.js":
/*!************************************************************!*\
!*** ./node_modules/@material-ui/core/IconButton/index.js ***!
\************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _IconButton.default;
}
});
var _IconButton = _interopRequireDefault(__webpack_require__(/*! ./IconButton */ "./node_modules/@material-ui/core/IconButton/IconButton.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/Input/Input.js":
/*!*******************************************************!*\
!*** ./node_modules/@material-ui/core/Input/Input.js ***!
\*******************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.hasValue = hasValue;
exports.isFilled = isFilled;
exports.isAdornedStart = isAdornedStart;
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectSpread */ "./node_modules/@babel/runtime/helpers/builtin/objectSpread.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js"));
var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/inherits */ "./node_modules/@babel/runtime/helpers/builtin/inherits.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _Textarea = _interopRequireDefault(__webpack_require__(/*! ./Textarea */ "./node_modules/@material-ui/core/Input/Textarea.js"));
// Supports determination of isControlled().
// Controlled input accepts its current value as a prop.
//
// @see https://facebook.github.io/react/docs/forms.html#controlled-components
// @param value
// @returns {boolean} true if string (including '') or number (including zero)
function hasValue(value) {
return value != null && !(Array.isArray(value) && value.length === 0);
} // Determine if field is empty or filled.
// Response determines if label is presented above field or as placeholder.
//
// @param obj
// @param SSR
// @returns {boolean} False when not present or empty string.
// True when any number or string with length.
function isFilled(obj) {
var SSR = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
return obj && (hasValue(obj.value) && obj.value !== '' || SSR && hasValue(obj.defaultValue) && obj.defaultValue !== '');
} // Determine if an Input is adorned on start.
// It's corresponding to the left with LTR.
//
// @param obj
// @returns {boolean} False when no adornments.
// True when adorned at the start.
function isAdornedStart(obj) {
return obj.startAdornment;
}
var styles = function styles(theme) {
var light = theme.palette.type === 'light';
var placeholder = {
color: 'currentColor',
opacity: light ? 0.42 : 0.5,
transition: theme.transitions.create('opacity', {
duration: theme.transitions.duration.shorter
})
};
var placeholderHidden = {
opacity: 0
};
var placeholderVisible = {
opacity: light ? 0.42 : 0.5
};
var bottomLineColor = light ? 'rgba(0, 0, 0, 0.42)' : 'rgba(255, 255, 255, 0.7)';
return {
root: {
// Mimics the default input display property used by browsers for an input.
display: 'inline-flex',
position: 'relative',
fontFamily: theme.typography.fontFamily,
color: light ? 'rgba(0, 0, 0, 0.87)' : theme.palette.common.white,
fontSize: theme.typography.pxToRem(16),
lineHeight: '1.1875em',
// Reset (19px), match the native input line-height
'&$disabled': {
color: theme.palette.text.disabled
}
},
formControl: {
'label + &': {
marginTop: 16
}
},
focused: {},
disabled: {},
underline: {
'&:after': {
borderBottom: "2px solid ".concat(theme.palette.primary[light ? 'dark' : 'light']),
left: 0,
bottom: 0,
// Doing the other way around crash on IE11 "''" https://github.com/cssinjs/jss/issues/242
content: '""',
position: 'absolute',
right: 0,
transform: 'scaleX(0)',
transition: theme.transitions.create('transform', {
duration: theme.transitions.duration.shorter,
easing: theme.transitions.easing.easeOut
}),
pointerEvents: 'none' // Transparent to the hover style.
},
'&$focused:after': {
transform: 'scaleX(1)'
},
'&$error:after': {
borderBottomColor: theme.palette.error.main,
transform: 'scaleX(1)' // error is always underlined in red
},
'&:before': {
borderBottom: "1px solid ".concat(bottomLineColor),
left: 0,
bottom: 0,
// Doing the other way around crash on IE11 "''" https://github.com/cssinjs/jss/issues/242
content: '"\\00a0"',
position: 'absolute',
right: 0,
transition: theme.transitions.create('border-bottom-color', {
duration: theme.transitions.duration.shorter
}),
pointerEvents: 'none' // Transparent to the hover style.
},
'&:hover:not($disabled):not($focused):not($error):before': {
borderBottom: "2px solid ".concat(theme.palette.text.primary)
},
'&$disabled:before': {
borderBottom: "1px dotted ".concat(bottomLineColor)
}
},
error: {},
multiline: {
padding: "".concat(8 - 2, "px 0 ").concat(8 - 1, "px")
},
fullWidth: {
width: '100%'
},
input: {
font: 'inherit',
color: 'currentColor',
padding: "".concat(8 - 2, "px 0 ").concat(8 - 1, "px"),
border: 0,
boxSizing: 'content-box',
verticalAlign: 'middle',
background: 'none',
margin: 0,
// Reset for Safari
// Remove grey highlight
WebkitTapHighlightColor: 'transparent',
display: 'block',
// Make the flex item shrink with Firefox
minWidth: 0,
flexGrow: 1,
'&::-webkit-input-placeholder': placeholder,
'&::-moz-placeholder': placeholder,
// Firefox 19+
'&:-ms-input-placeholder': placeholder,
// IE 11
'&::-ms-input-placeholder': placeholder,
// Edge
'&:focus': {
outline: 0
},
// Reset Firefox invalid required input style
'&:invalid': {
boxShadow: 'none'
},
'&::-webkit-search-decoration': {
// Remove the padding when type=search.
'-webkit-appearance': 'none'
},
// Show and hide the placeholder logic
'label[data-shrink=false] + $formControl &': {
'&::-webkit-input-placeholder': placeholderHidden,
'&::-moz-placeholder': placeholderHidden,
// Firefox 19+
'&:-ms-input-placeholder': placeholderHidden,
// IE 11
'&::-ms-input-placeholder': placeholderHidden,
// Edge
'&:focus::-webkit-input-placeholder': placeholderVisible,
'&:focus::-moz-placeholder': placeholderVisible,
// Firefox 19+
'&:focus:-ms-input-placeholder': placeholderVisible,
// IE 11
'&:focus::-ms-input-placeholder': placeholderVisible // Edge
},
'&$disabled': {
opacity: 1 // Reset iOS opacity
}
},
inputMarginDense: {
paddingTop: 4 - 1
},
inputMultiline: {
resize: 'none',
padding: 0
},
inputType: {
// type="date" or type="time", etc. have specific styles we need to reset.
height: '1.1875em' // Reset (19px), match the native input line-height
},
inputTypeSearch: {
// Improve type search style.
'-moz-appearance': 'textfield',
'-webkit-appearance': 'textfield'
}
};
};
exports.styles = styles;
function formControlState(props, context) {
var disabled = props.disabled;
var error = props.error;
var margin = props.margin;
if (context && context.muiFormControl) {
if (typeof disabled === 'undefined') {
disabled = context.muiFormControl.disabled;
}
if (typeof error === 'undefined') {
error = context.muiFormControl.error;
}
if (typeof margin === 'undefined') {
margin = context.muiFormControl.margin;
}
}
return {
disabled: disabled,
error: error,
margin: margin
};
}
var Input =
/*#__PURE__*/
function (_React$Component) {
(0, _inherits2.default)(Input, _React$Component);
// Holds the input reference
function Input(props, context) {
var _this;
(0, _classCallCheck2.default)(this, Input);
_this = (0, _possibleConstructorReturn2.default)(this, (Input.__proto__ || Object.getPrototypeOf(Input)).call(this, props, context));
_this.isControlled = _this.props.value != null;
_this.input = null;
_this.state = {
focused: false
};
_this.handleFocus = function (event) {
// Fix a bug with IE11 where the focus/blur events are triggered
// while the input is disabled.
if (formControlState(_this.props, _this.context).disabled) {
event.stopPropagation();
return;
}
_this.setState({
focused: true
});
if (_this.props.onFocus) {
_this.props.onFocus(event);
}
var muiFormControl = _this.context.muiFormControl;
if (muiFormControl && muiFormControl.onFocus) {
muiFormControl.onFocus(event);
}
};
_this.handleBlur = function (event) {
_this.setState({
focused: false
});
if (_this.props.onBlur) {
_this.props.onBlur(event);
}
var muiFormControl = _this.context.muiFormControl;
if (muiFormControl && muiFormControl.onBlur) {
muiFormControl.onBlur(event);
}
};
_this.handleChange = function (event) {
if (!_this.isControlled) {
_this.checkDirty(_this.input);
} // Perform in the willUpdate
if (_this.props.onChange) {
_this.props.onChange(event);
}
};
_this.handleRefInput = function (node) {
_this.input = node;
var ref;
if (_this.props.inputRef) {
ref = _this.props.inputRef;
} else if (_this.props.inputProps && _this.props.inputProps.ref) {
ref = _this.props.inputProps.ref;
}
if (ref) {
if (typeof ref === 'function') {
ref(node);
} else {
ref.current = node;
}
}
};
if (_this.isControlled) {
_this.checkDirty(props);
}
var componentWillReceiveProps = function componentWillReceiveProps(nextProps, nextContext) {
// The blur won't fire when the disabled state is set on a focused input.
// We need to book keep the focused state manually.
if (!formControlState(_this.props, _this.context).disabled && formControlState(nextProps, nextContext).disabled) {
_this.setState({
focused: false
});
}
};
var componentWillUpdate = function componentWillUpdate(nextProps, nextState, nextContext) {
// Book keep the focused state.
if (!formControlState(_this.props, _this.context).disabled && formControlState(nextProps, nextContext).disabled) {
var muiFormControl = _this.context.muiFormControl;
if (muiFormControl && muiFormControl.onBlur) {
muiFormControl.onBlur();
}
}
}; // Support for react >= 16.3.0 && < 17.0.0
/* istanbul ignore else */
if (_react.default.createContext) {
_this.UNSAFE_componentWillReceiveProps = componentWillReceiveProps;
_this.UNSAFE_componentWillUpdate = componentWillUpdate;
} else {
_this.componentWillReceiveProps = componentWillReceiveProps;
_this.componentWillUpdate = componentWillUpdate;
}
return _this;
}
(0, _createClass2.default)(Input, [{
key: "getChildContext",
value: function getChildContext() {
// We are consuming the parent muiFormControl context.
// We don't want a child to consume it a second time.
return {
muiFormControl: null
};
}
}, {
key: "componentDidMount",
value: function componentDidMount() {
if (!this.isControlled) {
this.checkDirty(this.input);
}
}
}, {
key: "componentDidUpdate",
value: function componentDidUpdate() {
if (this.isControlled) {
this.checkDirty(this.props);
} // else performed in the onChange
}
}, {
key: "checkDirty",
value: function checkDirty(obj) {
var muiFormControl = this.context.muiFormControl;
if (isFilled(obj)) {
if (muiFormControl && muiFormControl.onFilled) {
muiFormControl.onFilled();
}
if (this.props.onFilled) {
this.props.onFilled();
}
return;
}
if (muiFormControl && muiFormControl.onEmpty) {
muiFormControl.onEmpty();
}
if (this.props.onEmpty) {
this.props.onEmpty();
}
}
}, {
key: "render",
value: function render() {
var _classNames, _classNames2;
var _props = this.props,
autoComplete = _props.autoComplete,
autoFocus = _props.autoFocus,
classes = _props.classes,
classNameProp = _props.className,
defaultValue = _props.defaultValue,
disabledProp = _props.disabled,
disableUnderline = _props.disableUnderline,
endAdornment = _props.endAdornment,
errorProp = _props.error,
fullWidth = _props.fullWidth,
id = _props.id,
inputComponent = _props.inputComponent,
_props$inputProps = _props.inputProps;
_props$inputProps = _props$inputProps === void 0 ? {} : _props$inputProps;
var inputPropsClassName = _props$inputProps.className,
inputPropsProp = (0, _objectWithoutProperties2.default)(_props$inputProps, ["className"]),
inputRef = _props.inputRef,
marginProp = _props.margin,
multiline = _props.multiline,
name = _props.name,
onBlur = _props.onBlur,
onChange = _props.onChange,
onEmpty = _props.onEmpty,
onFilled = _props.onFilled,
onFocus = _props.onFocus,
onKeyDown = _props.onKeyDown,
onKeyUp = _props.onKeyUp,
placeholder = _props.placeholder,
readOnly = _props.readOnly,
rows = _props.rows,
rowsMax = _props.rowsMax,
startAdornment = _props.startAdornment,
type = _props.type,
value = _props.value,
other = (0, _objectWithoutProperties2.default)(_props, ["autoComplete", "autoFocus", "classes", "className", "defaultValue", "disabled", "disableUnderline", "endAdornment", "error", "fullWidth", "id", "inputComponent", "inputProps", "inputRef", "margin", "multiline", "name", "onBlur", "onChange", "onEmpty", "onFilled", "onFocus", "onKeyDown", "onKeyUp", "placeholder", "readOnly", "rows", "rowsMax", "startAdornment", "type", "value"]);
var muiFormControl = this.context.muiFormControl;
var _formControlState = formControlState(this.props, this.context),
disabled = _formControlState.disabled,
error = _formControlState.error,
margin = _formControlState.margin;
var className = (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.disabled, disabled), (0, _defineProperty2.default)(_classNames, classes.error, error), (0, _defineProperty2.default)(_classNames, classes.fullWidth, fullWidth), (0, _defineProperty2.default)(_classNames, classes.focused, this.state.focused), (0, _defineProperty2.default)(_classNames, classes.formControl, muiFormControl), (0, _defineProperty2.default)(_classNames, classes.multiline, multiline), (0, _defineProperty2.default)(_classNames, classes.underline, !disableUnderline), _classNames), classNameProp);
var inputClassName = (0, _classnames.default)(classes.input, (_classNames2 = {}, (0, _defineProperty2.default)(_classNames2, classes.disabled, disabled), (0, _defineProperty2.default)(_classNames2, classes.inputType, type !== 'text'), (0, _defineProperty2.default)(_classNames2, classes.inputTypeSearch, type === 'search'), (0, _defineProperty2.default)(_classNames2, classes.inputMultiline, multiline), (0, _defineProperty2.default)(_classNames2, classes.inputMarginDense, margin === 'dense'), _classNames2), inputPropsClassName);
var required = muiFormControl && muiFormControl.required === true;
var InputComponent = 'input';
var inputProps = (0, _objectSpread2.default)({}, inputPropsProp, {
ref: this.handleRefInput
});
if (inputComponent) {
InputComponent = inputComponent;
inputProps = (0, _objectSpread2.default)({
// Rename ref to inputRef as we don't know the
// provided `inputComponent` structure.
inputRef: this.handleRefInput
}, inputProps, {
ref: null
});
} else if (multiline) {
if (rows && !rowsMax) {
InputComponent = 'textarea';
} else {
inputProps = (0, _objectSpread2.default)({
rowsMax: rowsMax,
textareaRef: this.handleRefInput
}, inputProps, {
ref: null
});
InputComponent = _Textarea.default;
}
}
return _react.default.createElement("div", (0, _extends2.default)({
className: className
}, other), startAdornment, _react.default.createElement(InputComponent, (0, _extends2.default)({
"aria-invalid": error,
autoComplete: autoComplete,
autoFocus: autoFocus,
className: inputClassName,
defaultValue: defaultValue,
disabled: disabled,
id: id,
name: name,
onBlur: this.handleBlur,
onChange: this.handleChange,
onFocus: this.handleFocus,
onKeyDown: onKeyDown,
onKeyUp: onKeyUp,
placeholder: placeholder,
readOnly: readOnly,
required: required ? true : undefined,
rows: rows,
type: type,
value: value
}, inputProps)), endAdornment);
}
}]);
return Input;
}(_react.default.Component);
Input.propTypes = true ? {
/**
* This property helps users to fill forms faster, especially on mobile devices.
* The name can be confusing, as it's more like an autofill.
* You can learn more about it here:
* https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill
*/
autoComplete: _propTypes.default.string,
/**
* If `true`, the input will be focused during the first mount.
*/
autoFocus: _propTypes.default.bool,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* The CSS class name of the wrapper element.
*/
className: _propTypes.default.string,
/**
* The default input value, useful when not controlling the component.
*/
defaultValue: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
/**
* If `true`, the input will be disabled.
*/
disabled: _propTypes.default.bool,
/**
* If `true`, the input will not have an underline.
*/
disableUnderline: _propTypes.default.bool,
/**
* End `InputAdornment` for this component.
*/
endAdornment: _propTypes.default.node,
/**
* If `true`, the input will indicate an error. This is normally obtained via context from
* FormControl.
*/
error: _propTypes.default.bool,
/**
* If `true`, the input will take up the full width of its container.
*/
fullWidth: _propTypes.default.bool,
/**
* The id of the `input` element.
*/
id: _propTypes.default.string,
/**
* The component used for the native input.
* Either a string to use a DOM element or a component.
*/
inputComponent: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* Attributes applied to the `input` element.
*/
inputProps: _propTypes.default.object,
/**
* Use that property to pass a ref callback to the native input component.
*/
inputRef: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
/**
* If `dense`, will adjust vertical spacing. This is normally obtained via context from
* FormControl.
*/
margin: _propTypes.default.oneOf(['dense', 'none']),
/**
* If `true`, a textarea element will be rendered.
*/
multiline: _propTypes.default.bool,
/**
* Name attribute of the `input` element.
*/
name: _propTypes.default.string,
/**
* @ignore
*/
onBlur: _propTypes.default.func,
/**
* Callback fired when the value is changed.
*
* @param {object} event The event source of the callback.
* You can pull out the new value by accessing `event.target.value`.
*/
onChange: _propTypes.default.func,
/**
* @ignore
*/
onEmpty: _propTypes.default.func,
/**
* @ignore
*/
onFilled: _propTypes.default.func,
/**
* @ignore
*/
onFocus: _propTypes.default.func,
/**
* @ignore
*/
onKeyDown: _propTypes.default.func,
/**
* @ignore
*/
onKeyUp: _propTypes.default.func,
/**
* The short hint displayed in the input before the user enters a value.
*/
placeholder: _propTypes.default.string,
/**
* @ignore
*/
readOnly: _propTypes.default.bool,
/**
* Number of rows to display when multiline option is set to true.
*/
rows: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
/**
* Maximum number of rows to display when multiline option is set to true.
*/
rowsMax: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
/**
* Start `InputAdornment` for this component.
*/
startAdornment: _propTypes.default.node,
/**
* Type of the input element. It should be a valid HTML5 input type.
*/
type: _propTypes.default.string,
/**
* The input value, required for a controlled component.
*/
value: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number, _propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]))])
} : undefined;
Input.muiName = 'Input';
Input.defaultProps = {
disableUnderline: false,
fullWidth: false,
multiline: false,
type: 'text'
};
Input.contextTypes = {
muiFormControl: _propTypes.default.object
};
Input.childContextTypes = {
muiFormControl: _propTypes.default.object
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiInput'
})(Input);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Input/Textarea.js":
/*!**********************************************************!*\
!*** ./node_modules/@material-ui/core/Input/Textarea.js ***!
\**********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js"));
var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/inherits */ "./node_modules/@babel/runtime/helpers/builtin/inherits.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _debounce = _interopRequireDefault(__webpack_require__(/*! debounce */ "./node_modules/debounce/index.js"));
var _reactEventListener = _interopRequireDefault(__webpack_require__(/*! react-event-listener */ "./node_modules/react-event-listener/dist/react-event-listener.cjs.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
// < 1kb payload overhead when lodash/debounce is > 3kb.
var ROWS_HEIGHT = 19;
var styles = {
root: {
position: 'relative',
// because the shadow has position: 'absolute',
width: '100%'
},
textarea: {
width: '100%',
height: '100%',
resize: 'none',
font: 'inherit',
padding: 0,
cursor: 'inherit',
boxSizing: 'border-box',
lineHeight: 'inherit',
border: 'none',
outline: 'none',
background: 'transparent'
},
shadow: {
resize: 'none',
// Overflow also needed to here to remove the extra row
// added to textareas in Firefox.
overflow: 'hidden',
// Visibility needed to hide the extra text area on ipads
visibility: 'hidden',
position: 'absolute',
height: 'auto',
whiteSpace: 'pre-wrap'
}
};
/**
* @ignore - internal component.
*/
exports.styles = styles;
var Textarea =
/*#__PURE__*/
function (_React$Component) {
(0, _inherits2.default)(Textarea, _React$Component);
// Corresponds to 10 frames at 60 Hz.
function Textarea(props) {
var _this;
(0, _classCallCheck2.default)(this, Textarea);
_this = (0, _possibleConstructorReturn2.default)(this, (Textarea.__proto__ || Object.getPrototypeOf(Textarea)).call(this, props)); // expects the components it renders to respond to 'value'
// so that it can check whether they are filled.
_this.shadow = null;
_this.singlelineShadow = null;
_this.input = null;
_this.value = null;
_this.handleResize = (0, _debounce.default)(function () {
_this.syncHeightWithShadow();
}, 166);
_this.state = {
height: null
};
_this.handleRefInput = function (node) {
_this.input = node;
var textareaRef = _this.props.textareaRef;
if (textareaRef) {
if (typeof textareaRef === 'function') {
textareaRef(node);
} else {
textareaRef.current = node;
}
}
};
_this.handleRefSinglelineShadow = function (node) {
_this.singlelineShadow = node;
};
_this.handleRefShadow = function (node) {
_this.shadow = node;
};
_this.handleChange = function (event) {
_this.value = event.target.value;
if (typeof _this.props.value === 'undefined' && _this.shadow) {
// The component is not controlled, we need to update the shallow value.
_this.shadow.value = _this.value;
_this.syncHeightWithShadow();
}
if (_this.props.onChange) {
_this.props.onChange(event);
}
};
_this.value = props.value || props.defaultValue || '';
_this.state = {
height: Number(props.rows) * ROWS_HEIGHT
};
return _this;
}
(0, _createClass2.default)(Textarea, [{
key: "componentDidMount",
value: function componentDidMount() {
this.syncHeightWithShadow();
}
}, {
key: "componentDidUpdate",
value: function componentDidUpdate() {
this.syncHeightWithShadow();
}
}, {
key: "componentWillUnmount",
value: function componentWillUnmount() {
this.handleResize.clear();
}
}, {
key: "syncHeightWithShadow",
value: function syncHeightWithShadow() {
var props = this.props;
if (!this.shadow || !this.singlelineShadow) {
return;
} // The component is controlled, we need to update the shallow value.
if (typeof props.value !== 'undefined') {
this.shadow.value = props.value == null ? '' : String(props.value);
}
var lineHeight = this.singlelineShadow.scrollHeight;
var newHeight = this.shadow.scrollHeight; // Guarding for jsdom, where scrollHeight isn't present.
// See https://github.com/tmpvar/jsdom/issues/1013
if (newHeight === undefined) {
return;
}
if (Number(props.rowsMax) >= Number(props.rows)) {
newHeight = Math.min(Number(props.rowsMax) * lineHeight, newHeight);
}
newHeight = Math.max(newHeight, lineHeight); // Need a large enough different to update the height.
// This prevents infinite rendering loop.
if (Math.abs(this.state.height - newHeight) > 1) {
this.setState({
height: newHeight
});
}
}
}, {
key: "render",
value: function render() {
var _props = this.props,
classes = _props.classes,
className = _props.className,
defaultValue = _props.defaultValue,
onChange = _props.onChange,
rows = _props.rows,
rowsMax = _props.rowsMax,
textareaRef = _props.textareaRef,
value = _props.value,
other = (0, _objectWithoutProperties2.default)(_props, ["classes", "className", "defaultValue", "onChange", "rows", "rowsMax", "textareaRef", "value"]);
return _react.default.createElement("div", {
className: classes.root,
style: {
height: this.state.height
}
}, _react.default.createElement(_reactEventListener.default, {
target: "window",
onResize: this.handleResize
}), _react.default.createElement("textarea", {
ref: this.handleRefSinglelineShadow,
className: (0, _classnames.default)(classes.shadow, classes.textarea),
tabIndex: -1,
rows: "1",
readOnly: true,
"aria-hidden": "true",
value: ""
}), _react.default.createElement("textarea", {
ref: this.handleRefShadow,
className: (0, _classnames.default)(classes.shadow, classes.textarea),
tabIndex: -1,
rows: rows,
"aria-hidden": "true",
readOnly: true,
defaultValue: defaultValue,
value: value
}), _react.default.createElement("textarea", (0, _extends2.default)({
rows: rows,
className: (0, _classnames.default)(classes.textarea, className),
defaultValue: defaultValue,
value: value,
onChange: this.handleChange,
ref: this.handleRefInput
}, other)));
}
}]);
return Textarea;
}(_react.default.Component);
Textarea.propTypes = true ? {
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* @ignore
*/
defaultValue: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
/**
* @ignore
*/
disabled: _propTypes.default.bool,
/**
* @ignore
*/
onChange: _propTypes.default.func,
/**
* Number of rows to display when multiline option is set to true.
*/
rows: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
/**
* Maximum number of rows to display when multiline option is set to true.
*/
rowsMax: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
/**
* Use that property to pass a ref callback to the native textarea element.
*/
textareaRef: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
/**
* @ignore
*/
value: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number])
} : undefined;
Textarea.defaultProps = {
rows: 1
};
var _default = (0, _withStyles.default)(styles)(Textarea);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Input/index.js":
/*!*******************************************************!*\
!*** ./node_modules/@material-ui/core/Input/index.js ***!
\*******************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _Input.default;
}
});
var _Input = _interopRequireDefault(__webpack_require__(/*! ./Input */ "./node_modules/@material-ui/core/Input/Input.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/InputAdornment/InputAdornment.js":
/*!*************************************************************************!*\
!*** ./node_modules/@material-ui/core/InputAdornment/InputAdornment.js ***!
\*************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _Typography = _interopRequireDefault(__webpack_require__(/*! ../Typography */ "./node_modules/@material-ui/core/Typography/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var styles = {
root: {
display: 'flex',
maxHeight: '2em',
alignItems: 'center'
},
positionStart: {
marginRight: 8
},
positionEnd: {
marginLeft: 8
}
};
exports.styles = styles;
function InputAdornment(props) {
var _classNames;
var children = props.children,
Component = props.component,
classes = props.classes,
className = props.className,
disableTypography = props.disableTypography,
position = props.position,
other = (0, _objectWithoutProperties2.default)(props, ["children", "component", "classes", "className", "disableTypography", "position"]);
return _react.default.createElement(Component, (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.positionStart, position === 'start'), (0, _defineProperty2.default)(_classNames, classes.positionEnd, position === 'end'), _classNames), className)
}, other), typeof children === 'string' && !disableTypography ? _react.default.createElement(_Typography.default, {
color: "textSecondary"
}, children) : children);
}
InputAdornment.propTypes = true ? {
/**
* The content of the component, normally an `IconButton` or string.
*/
children: _propTypes.default.node.isRequired,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* The component used for the root node.
* Either a string to use a DOM element or a component.
*/
component: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* If children is a string then disable wrapping in a Typography component.
*/
disableTypography: _propTypes.default.bool,
/**
* The position this adornment should appear relative to the `Input`.
*/
position: _propTypes.default.oneOf(['start', 'end'])
} : undefined;
InputAdornment.defaultProps = {
component: 'div',
disableTypography: false
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiInputAdornment'
})(InputAdornment);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/InputAdornment/index.js":
/*!****************************************************************!*\
!*** ./node_modules/@material-ui/core/InputAdornment/index.js ***!
\****************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _InputAdornment.default;
}
});
var _InputAdornment = _interopRequireDefault(__webpack_require__(/*! ./InputAdornment */ "./node_modules/@material-ui/core/InputAdornment/InputAdornment.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/InputLabel/InputLabel.js":
/*!*****************************************************************!*\
!*** ./node_modules/@material-ui/core/InputLabel/InputLabel.js ***!
\*****************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _FormLabel = _interopRequireDefault(__webpack_require__(/*! ../FormLabel */ "./node_modules/@material-ui/core/FormLabel/index.js"));
// @inheritedComponent FormLabel
var styles = function styles(theme) {
return {
root: {
transformOrigin: 'top left'
},
formControl: {
position: 'absolute',
left: 0,
top: 0,
// slight alteration to spec spacing to match visual spec result
transform: 'translate(0, 24px) scale(1)'
},
marginDense: {
// Compensation for the `Input.inputDense` style.
transform: 'translate(0, 21px) scale(1)'
},
shrink: {
transform: 'translate(0, 1.5px) scale(0.75)',
transformOrigin: 'top left'
},
animated: {
transition: theme.transitions.create('transform', {
duration: theme.transitions.duration.shorter,
easing: theme.transitions.easing.easeOut
})
}
};
};
exports.styles = styles;
function InputLabel(props, context) {
var _classNames;
var children = props.children,
classes = props.classes,
classNameProp = props.className,
disableAnimation = props.disableAnimation,
FormLabelClasses = props.FormLabelClasses,
marginProp = props.margin,
shrinkProp = props.shrink,
other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "disableAnimation", "FormLabelClasses", "margin", "shrink"]);
var muiFormControl = context.muiFormControl;
var shrink = shrinkProp;
if (typeof shrink === 'undefined' && muiFormControl) {
shrink = muiFormControl.filled || muiFormControl.focused || muiFormControl.adornedStart;
}
var margin = marginProp;
if (typeof margin === 'undefined' && muiFormControl) {
margin = muiFormControl.margin;
}
var className = (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.formControl, muiFormControl), (0, _defineProperty2.default)(_classNames, classes.animated, !disableAnimation), (0, _defineProperty2.default)(_classNames, classes.shrink, shrink), (0, _defineProperty2.default)(_classNames, classes.marginDense, margin === 'dense'), _classNames), classNameProp);
return _react.default.createElement(_FormLabel.default, (0, _extends2.default)({
"data-shrink": shrink,
className: className,
classes: FormLabelClasses
}, other), children);
}
InputLabel.propTypes = true ? {
/**
* The contents of the `InputLabel`.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* If `true`, the transition animation is disabled.
*/
disableAnimation: _propTypes.default.bool,
/**
* If `true`, apply disabled class.
*/
disabled: _propTypes.default.bool,
/**
* If `true`, the label will be displayed in an error state.
*/
error: _propTypes.default.bool,
/**
* If `true`, the input of this label is focused.
*/
focused: _propTypes.default.bool,
/**
* `classes` property applied to the `FormLabel` element.
*/
FormLabelClasses: _propTypes.default.object,
/**
* If `dense`, will adjust vertical spacing. This is normally obtained via context from
* FormControl.
*/
margin: _propTypes.default.oneOf(['dense']),
/**
* if `true`, the label will indicate that the input is required.
*/
required: _propTypes.default.bool,
/**
* If `true`, the label is shrunk.
*/
shrink: _propTypes.default.bool
} : undefined;
InputLabel.defaultProps = {
disableAnimation: false
};
InputLabel.contextTypes = {
muiFormControl: _propTypes.default.object
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiInputLabel'
})(InputLabel);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/InputLabel/index.js":
/*!************************************************************!*\
!*** ./node_modules/@material-ui/core/InputLabel/index.js ***!
\************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _InputLabel.default;
}
});
var _InputLabel = _interopRequireDefault(__webpack_require__(/*! ./InputLabel */ "./node_modules/@material-ui/core/InputLabel/InputLabel.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/LinearProgress/LinearProgress.js":
/*!*************************************************************************!*\
!*** ./node_modules/@material-ui/core/LinearProgress/LinearProgress.js ***!
\*************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _warning = _interopRequireDefault(__webpack_require__(/*! warning */ "./node_modules/@material-ui/core/node_modules/warning/warning.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _colorManipulator = __webpack_require__(/*! ../styles/colorManipulator */ "./node_modules/@material-ui/core/styles/colorManipulator.js");
var TRANSITION_DURATION = 4; // seconds
var styles = function styles(theme) {
return {
root: {
position: 'relative',
overflow: 'hidden',
height: 5
},
colorPrimary: {
backgroundColor: (0, _colorManipulator.lighten)(theme.palette.primary.light, 0.6)
},
colorSecondary: {
backgroundColor: (0, _colorManipulator.lighten)(theme.palette.secondary.light, 0.4)
},
buffer: {
backgroundColor: 'transparent'
},
query: {
transform: 'rotate(180deg)'
},
dashed: {
position: 'absolute',
marginTop: 0,
height: '100%',
width: '100%',
animation: 'buffer 3s infinite linear'
},
dashedColorPrimary: {
backgroundImage: "radial-gradient(".concat((0, _colorManipulator.lighten)(theme.palette.primary.light, 0.6), " 0%, ").concat((0, _colorManipulator.lighten)(theme.palette.primary.light, 0.6), " 16%, transparent 42%)"),
backgroundSize: '10px 10px',
backgroundPosition: '0px -23px'
},
dashedColorSecondary: {
backgroundImage: "radial-gradient(".concat((0, _colorManipulator.lighten)(theme.palette.secondary.light, 0.4), " 0%, ").concat((0, _colorManipulator.lighten)(theme.palette.secondary.light, 0.6), " 16%, transparent 42%)"),
backgroundSize: '10px 10px',
backgroundPosition: '0px -23px'
},
bar: {
width: '100%',
position: 'absolute',
left: 0,
bottom: 0,
top: 0,
transition: 'transform 0.2s linear',
transformOrigin: 'left'
},
barColorPrimary: {
backgroundColor: theme.palette.primary.main
},
barColorSecondary: {
backgroundColor: theme.palette.secondary.main
},
bar1Indeterminate: {
width: 'auto',
willChange: 'left, right',
animation: 'mui-indeterminate1 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite'
},
bar2Indeterminate: {
width: 'auto',
willChange: 'left, right',
animation: 'mui-indeterminate2 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite',
animationDelay: '1.15s'
},
bar1Determinate: {
willChange: 'transform',
transition: "transform .".concat(TRANSITION_DURATION, "s linear")
},
bar1Buffer: {
zIndex: 1,
transition: "transform .".concat(TRANSITION_DURATION, "s linear")
},
bar2Buffer: {
transition: "transform .".concat(TRANSITION_DURATION, "s linear")
},
// Legends:
// || represents the viewport
// - represents a light background
// x represents a dark background
'@keyframes mui-indeterminate1': {
// |-----|---x-||-----||-----|
'0%': {
left: '-35%',
right: '100%'
},
// |-----|-----||-----||xxxx-|
'60%': {
left: '100%',
right: '-90%'
},
'100%': {
left: '100%',
right: '-90%'
}
},
'@keyframes mui-indeterminate2': {
// |xxxxx|xxxxx||-----||-----|
'0%': {
left: '-200%',
right: '100%'
},
// |-----|-----||-----||-x----|
'60%': {
left: '107%',
right: '-8%'
},
'100%': {
left: '107%',
right: '-8%'
}
},
'@keyframes buffer': {
'0%': {
opacity: 1,
backgroundPosition: '0px -23px'
},
'50%': {
opacity: 0,
backgroundPosition: '0px -23px'
},
'100%': {
opacity: 1,
backgroundPosition: '-200px -23px'
}
}
};
};
/**
* ## ARIA
*
* If the progress bar is describing the loading progress of a particular region of a page,
* you should use `aria-describedby` to point to the progress bar, and set the `aria-busy`
* attribute to `true` on that region until it has finished loading.
*/
exports.styles = styles;
function LinearProgress(props) {
var _classNames, _classNames2, _classNames3, _classNames4;
var classes = props.classes,
classNameProp = props.className,
color = props.color,
value = props.value,
valueBuffer = props.valueBuffer,
variant = props.variant,
other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "color", "value", "valueBuffer", "variant"]);
var className = (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.colorPrimary, color === 'primary'), (0, _defineProperty2.default)(_classNames, classes.colorSecondary, color === 'secondary'), (0, _defineProperty2.default)(_classNames, classes.buffer, variant === 'buffer'), (0, _defineProperty2.default)(_classNames, classes.query, variant === 'query'), _classNames), classNameProp);
var dashedClass = (0, _classnames.default)(classes.dashed, (_classNames2 = {}, (0, _defineProperty2.default)(_classNames2, classes.dashedColorPrimary, color === 'primary'), (0, _defineProperty2.default)(_classNames2, classes.dashedColorSecondary, color === 'secondary'), _classNames2));
var bar1ClassName = (0, _classnames.default)(classes.bar, (_classNames3 = {}, (0, _defineProperty2.default)(_classNames3, classes.barColorPrimary, color === 'primary'), (0, _defineProperty2.default)(_classNames3, classes.barColorSecondary, color === 'secondary'), (0, _defineProperty2.default)(_classNames3, classes.bar1Indeterminate, variant === 'indeterminate' || variant === 'query'), (0, _defineProperty2.default)(_classNames3, classes.bar1Determinate, variant === 'determinate'), (0, _defineProperty2.default)(_classNames3, classes.bar1Buffer, variant === 'buffer'), _classNames3));
var bar2ClassName = (0, _classnames.default)(classes.bar, (_classNames4 = {}, (0, _defineProperty2.default)(_classNames4, classes.barColorPrimary, color === 'primary' && variant !== 'buffer'), (0, _defineProperty2.default)(_classNames4, classes.colorPrimary, color === 'primary' && variant === 'buffer'), (0, _defineProperty2.default)(_classNames4, classes.barColorSecondary, color === 'secondary' && variant !== 'buffer'), (0, _defineProperty2.default)(_classNames4, classes.colorSecondary, color === 'secondary' && variant === 'buffer'), (0, _defineProperty2.default)(_classNames4, classes.bar2Indeterminate, variant === 'indeterminate' || variant === 'query'), (0, _defineProperty2.default)(_classNames4, classes.bar2Buffer, variant === 'buffer'), _classNames4));
var rootProps = {};
var inlineStyles = {
bar1: {},
bar2: {}
};
if (variant === 'determinate' || variant === 'buffer') {
if (value !== undefined) {
rootProps['aria-valuenow'] = Math.round(value);
inlineStyles.bar1.transform = "scaleX(".concat(value / 100, ")");
} else {
true ? (0, _warning.default)(false, 'Material-UI: you need to provide a value property ' + 'when using the determinate or buffer variant of LinearProgress .') : undefined;
}
}
if (variant === 'buffer') {
if (valueBuffer !== undefined) {
inlineStyles.bar2.transform = "scaleX(".concat((valueBuffer || 0) / 100, ")");
} else {
true ? (0, _warning.default)(false, 'Material-UI: you need to provide a valueBuffer property ' + 'when using the buffer variant of LinearProgress.') : undefined;
}
}
return _react.default.createElement("div", (0, _extends2.default)({
className: className,
role: "progressbar"
}, rootProps, other), variant === 'buffer' ? _react.default.createElement("div", {
className: dashedClass
}) : null, _react.default.createElement("div", {
className: bar1ClassName,
style: inlineStyles.bar1
}), variant === 'determinate' ? null : _react.default.createElement("div", {
className: bar2ClassName,
style: inlineStyles.bar2
}));
}
LinearProgress.propTypes = true ? {
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @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(['primary', 'secondary']),
/**
* The value of the progress indicator for the determinate and buffer variants.
* Value between 0 and 100.
*/
value: _propTypes.default.number,
/**
* The value for the buffer variant.
* Value between 0 and 100.
*/
valueBuffer: _propTypes.default.number,
/**
* The variant to use.
* Use indeterminate or query when there is no progress value.
*/
variant: _propTypes.default.oneOf(['determinate', 'indeterminate', 'buffer', 'query'])
} : undefined;
LinearProgress.defaultProps = {
color: 'primary',
variant: 'indeterminate'
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiLinearProgress'
})(LinearProgress);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/LinearProgress/index.js":
/*!****************************************************************!*\
!*** ./node_modules/@material-ui/core/LinearProgress/index.js ***!
\****************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _LinearProgress.default;
}
});
var _LinearProgress = _interopRequireDefault(__webpack_require__(/*! ./LinearProgress */ "./node_modules/@material-ui/core/LinearProgress/LinearProgress.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/List/List.js":
/*!*****************************************************!*\
!*** ./node_modules/@material-ui/core/List/List.js ***!
\*****************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js"));
var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/inherits */ "./node_modules/@babel/runtime/helpers/builtin/inherits.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var styles = {
root: {
listStyle: 'none',
margin: 0,
padding: 0,
position: 'relative'
},
padding: {
paddingTop: 8,
paddingBottom: 8
},
dense: {
paddingTop: 4,
paddingBottom: 4
},
subheader: {
paddingTop: 0
}
};
exports.styles = styles;
var List =
/*#__PURE__*/
function (_React$Component) {
(0, _inherits2.default)(List, _React$Component);
function List() {
(0, _classCallCheck2.default)(this, List);
return (0, _possibleConstructorReturn2.default)(this, (List.__proto__ || Object.getPrototypeOf(List)).apply(this, arguments));
}
(0, _createClass2.default)(List, [{
key: "getChildContext",
value: function getChildContext() {
return {
dense: this.props.dense
};
}
}, {
key: "render",
value: function render() {
var _classNames;
var _props = this.props,
children = _props.children,
classes = _props.classes,
classNameProp = _props.className,
Component = _props.component,
dense = _props.dense,
disablePadding = _props.disablePadding,
subheader = _props.subheader,
other = (0, _objectWithoutProperties2.default)(_props, ["children", "classes", "className", "component", "dense", "disablePadding", "subheader"]);
var className = (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.dense, dense && !disablePadding), (0, _defineProperty2.default)(_classNames, classes.padding, !disablePadding), (0, _defineProperty2.default)(_classNames, classes.subheader, subheader), _classNames), classNameProp);
return _react.default.createElement(Component, (0, _extends2.default)({
className: className
}, other), subheader, children);
}
}]);
return List;
}(_react.default.Component);
List.propTypes = true ? {
/**
* The content of the component.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* The component used for the root node.
* Either a string to use a DOM element or a component.
*/
component: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* If `true`, compact vertical padding designed for keyboard and mouse input will be used for
* the list and list items. The property is available to descendant components as the
* `dense` context.
*/
dense: _propTypes.default.bool,
/**
* If `true`, vertical padding will be removed from the list.
*/
disablePadding: _propTypes.default.bool,
/**
* The content of the subheader, normally `ListSubheader`.
*/
subheader: _propTypes.default.node
} : undefined;
List.defaultProps = {
component: 'ul',
dense: false,
disablePadding: false
};
List.childContextTypes = {
dense: _propTypes.default.bool
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiList'
})(List);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/List/index.js":
/*!******************************************************!*\
!*** ./node_modules/@material-ui/core/List/index.js ***!
\******************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _List.default;
}
});
var _List = _interopRequireDefault(__webpack_require__(/*! ./List */ "./node_modules/@material-ui/core/List/List.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/ListItem/ListItem.js":
/*!*************************************************************!*\
!*** ./node_modules/@material-ui/core/ListItem/ListItem.js ***!
\*************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectSpread */ "./node_modules/@babel/runtime/helpers/builtin/objectSpread.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js"));
var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/inherits */ "./node_modules/@babel/runtime/helpers/builtin/inherits.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _ButtonBase = _interopRequireDefault(__webpack_require__(/*! ../ButtonBase */ "./node_modules/@material-ui/core/ButtonBase/index.js"));
var _reactHelpers = __webpack_require__(/*! ../utils/reactHelpers */ "./node_modules/@material-ui/core/utils/reactHelpers.js");
var styles = function styles(theme) {
return {
root: {
display: 'flex',
justifyContent: 'flex-start',
alignItems: 'center',
position: 'relative',
textDecoration: 'none',
width: '100%',
boxSizing: 'border-box',
textAlign: 'left'
},
container: {
position: 'relative'
},
focusVisible: {
backgroundColor: theme.palette.action.hover
},
default: {
paddingTop: 12,
paddingBottom: 12
},
dense: {
paddingTop: 8,
paddingBottom: 8
},
disabled: {
opacity: 0.5
},
divider: {
borderBottom: "1px solid ".concat(theme.palette.divider),
backgroundClip: 'padding-box'
},
gutters: theme.mixins.gutters(),
button: {
transition: theme.transitions.create('background-color', {
duration: theme.transitions.duration.shortest
}),
'&:hover': {
textDecoration: 'none',
backgroundColor: theme.palette.action.hover,
// Reset on touch devices, it doesn't add specificity
'@media (hover: none)': {
backgroundColor: 'transparent'
}
}
},
secondaryAction: {
// Add some space to avoid collision as `ListItemSecondaryAction`
// is absolutely positionned.
paddingRight: 32
}
};
};
exports.styles = styles;
var ListItem =
/*#__PURE__*/
function (_React$Component) {
(0, _inherits2.default)(ListItem, _React$Component);
function ListItem() {
(0, _classCallCheck2.default)(this, ListItem);
return (0, _possibleConstructorReturn2.default)(this, (ListItem.__proto__ || Object.getPrototypeOf(ListItem)).apply(this, arguments));
}
(0, _createClass2.default)(ListItem, [{
key: "getChildContext",
value: function getChildContext() {
return {
dense: this.props.dense || this.context.dense || false
};
}
}, {
key: "render",
value: function render() {
var _classNames;
var _props = this.props,
button = _props.button,
childrenProp = _props.children,
classes = _props.classes,
classNameProp = _props.className,
componentProp = _props.component,
ContainerComponent = _props.ContainerComponent,
_props$ContainerProps = _props.ContainerProps;
_props$ContainerProps = _props$ContainerProps === void 0 ? {} : _props$ContainerProps;
var ContainerClassName = _props$ContainerProps.className,
ContainerProps = (0, _objectWithoutProperties2.default)(_props$ContainerProps, ["className"]),
dense = _props.dense,
disabled = _props.disabled,
disableGutters = _props.disableGutters,
divider = _props.divider,
focusVisibleClassName = _props.focusVisibleClassName,
other = (0, _objectWithoutProperties2.default)(_props, ["button", "children", "classes", "className", "component", "ContainerComponent", "ContainerProps", "dense", "disabled", "disableGutters", "divider", "focusVisibleClassName"]);
var isDense = dense || this.context.dense || false;
var children = _react.default.Children.toArray(childrenProp);
var hasAvatar = children.some(function (value) {
return (0, _reactHelpers.isMuiElement)(value, ['ListItemAvatar']);
});
var hasSecondaryAction = children.length && (0, _reactHelpers.isMuiElement)(children[children.length - 1], ['ListItemSecondaryAction']);
var className = (0, _classnames.default)(classes.root, isDense || hasAvatar ? classes.dense : classes.default, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.gutters, !disableGutters), (0, _defineProperty2.default)(_classNames, classes.divider, divider), (0, _defineProperty2.default)(_classNames, classes.disabled, disabled), (0, _defineProperty2.default)(_classNames, classes.button, button), (0, _defineProperty2.default)(_classNames, classes.secondaryAction, hasSecondaryAction), _classNames), classNameProp);
var componentProps = (0, _objectSpread2.default)({
className: className,
disabled: disabled
}, other);
var Component = componentProp || 'li';
if (button) {
componentProps.component = componentProp || 'div';
componentProps.focusVisibleClassName = (0, _classnames.default)(classes.focusVisible, focusVisibleClassName);
Component = _ButtonBase.default;
}
if (hasSecondaryAction) {
// Use div by default.
Component = !componentProps.component && !componentProp ? 'div' : Component; // Avoid nesting of li > li.
if (ContainerComponent === 'li') {
if (Component === 'li') {
Component = 'div';
} else if (componentProps.component === 'li') {
componentProps.component = 'div';
}
}
return _react.default.createElement(ContainerComponent, (0, _extends2.default)({
className: (0, _classnames.default)(classes.container, ContainerClassName)
}, ContainerProps), _react.default.createElement(Component, componentProps, children), children.pop());
}
return _react.default.createElement(Component, componentProps, children);
}
}]);
return ListItem;
}(_react.default.Component);
ListItem.propTypes = true ? {
/**
* If `true`, the list item will be a button (using `ButtonBase`).
*/
button: _propTypes.default.bool,
/**
* The content of the component.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* The component used for the root node.
* Either a string to use a DOM element or a component.
* By default, it's a `li` when `button` is `false` and a `div` when `button` is `true`.
*/
component: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* The container component used when a `ListItemSecondaryAction` is rendered.
*/
ContainerComponent: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* Properties applied to the container element when the component
* is used to display a `ListItemSecondaryAction`.
*/
ContainerProps: _propTypes.default.object,
/**
* If `true`, compact vertical padding designed for keyboard and mouse input will be used.
*/
dense: _propTypes.default.bool,
/**
* @ignore
*/
disabled: _propTypes.default.bool,
/**
* If `true`, the left and right padding is removed.
*/
disableGutters: _propTypes.default.bool,
/**
* If `true`, a 1px light border is added to the bottom of the list item.
*/
divider: _propTypes.default.bool,
/**
* @ignore
*/
focusVisibleClassName: _propTypes.default.string
} : undefined;
ListItem.defaultProps = {
button: false,
ContainerComponent: 'li',
dense: false,
disabled: false,
disableGutters: false,
divider: false
};
ListItem.contextTypes = {
dense: _propTypes.default.bool
};
ListItem.childContextTypes = {
dense: _propTypes.default.bool
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiListItem'
})(ListItem);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/ListItem/index.js":
/*!**********************************************************!*\
!*** ./node_modules/@material-ui/core/ListItem/index.js ***!
\**********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _ListItem.default;
}
});
var _ListItem = _interopRequireDefault(__webpack_require__(/*! ./ListItem */ "./node_modules/@material-ui/core/ListItem/ListItem.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/ListItemAvatar/ListItemAvatar.js":
/*!*************************************************************************!*\
!*** ./node_modules/@material-ui/core/ListItemAvatar/ListItemAvatar.js ***!
\*************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectSpread */ "./node_modules/@babel/runtime/helpers/builtin/objectSpread.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _warning = _interopRequireDefault(__webpack_require__(/*! warning */ "./node_modules/@material-ui/core/node_modules/warning/warning.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var styles = function styles(theme) {
return {
root: {
width: 36,
height: 36,
fontSize: theme.typography.pxToRem(18),
marginRight: 4
},
icon: {
width: 20,
height: 20,
fontSize: theme.typography.pxToRem(20)
}
};
};
/**
* It's a simple wrapper to apply the `dense` mode styles to `Avatar`.
*/
exports.styles = styles;
function ListItemAvatar(props, context) {
var children = props.children,
classes = props.classes,
classNameProp = props.className,
other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className"]);
if (context.dense === undefined) {
true ? (0, _warning.default)(false, "Material-UI: is a simple wrapper to apply the dense styles\n to . You do not need it unless you are controlling the dense property.") : undefined;
return props.children;
}
return _react.default.cloneElement(children, (0, _objectSpread2.default)({
className: (0, _classnames.default)((0, _defineProperty2.default)({}, classes.root, context.dense), classNameProp, children.props.className),
childrenClassName: (0, _classnames.default)((0, _defineProperty2.default)({}, classes.icon, context.dense), children.props.childrenClassName)
}, other));
}
ListItemAvatar.propTypes = true ? {
/**
* The content of the component, normally `Avatar`.
*/
children: _propTypes.default.element.isRequired,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string
} : undefined;
ListItemAvatar.contextTypes = {
dense: _propTypes.default.bool
};
ListItemAvatar.muiName = 'ListItemAvatar';
var _default = (0, _withStyles.default)(styles, {
name: 'MuiListItemAvatar'
})(ListItemAvatar);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/ListItemAvatar/index.js":
/*!****************************************************************!*\
!*** ./node_modules/@material-ui/core/ListItemAvatar/index.js ***!
\****************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _ListItemAvatar.default;
}
});
var _ListItemAvatar = _interopRequireDefault(__webpack_require__(/*! ./ListItemAvatar */ "./node_modules/@material-ui/core/ListItemAvatar/ListItemAvatar.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/ListItemIcon/ListItemIcon.js":
/*!*********************************************************************!*\
!*** ./node_modules/@material-ui/core/ListItemIcon/ListItemIcon.js ***!
\*********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectSpread */ "./node_modules/@babel/runtime/helpers/builtin/objectSpread.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var styles = function styles(theme) {
return {
root: {
marginRight: 16,
color: theme.palette.action.active,
flexShrink: 0
}
};
};
/**
* A simple wrapper to apply `List` styles to an `Icon` or `SvgIcon`.
*/
exports.styles = styles;
function ListItemIcon(props) {
var children = props.children,
classes = props.classes,
classNameProp = props.className,
other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className"]);
return _react.default.cloneElement(children, (0, _objectSpread2.default)({
className: (0, _classnames.default)(classes.root, classNameProp, children.props.className)
}, other));
}
ListItemIcon.propTypes = true ? {
/**
* The content of the component, normally `Icon`, `SvgIcon`,
* or a `@material-ui/icons` SVG icon element.
*/
children: _propTypes.default.element.isRequired,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string
} : undefined;
var _default = (0, _withStyles.default)(styles, {
name: 'MuiListItemIcon'
})(ListItemIcon);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/ListItemIcon/index.js":
/*!**************************************************************!*\
!*** ./node_modules/@material-ui/core/ListItemIcon/index.js ***!
\**************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _ListItemIcon.default;
}
});
var _ListItemIcon = _interopRequireDefault(__webpack_require__(/*! ./ListItemIcon */ "./node_modules/@material-ui/core/ListItemIcon/ListItemIcon.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/ListItemSecondaryAction/ListItemSecondaryAction.js":
/*!*******************************************************************************************!*\
!*** ./node_modules/@material-ui/core/ListItemSecondaryAction/ListItemSecondaryAction.js ***!
\*******************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var styles = {
root: {
position: 'absolute',
right: 4,
top: '50%',
transform: 'translateY(-50%)'
}
};
exports.styles = styles;
function ListItemSecondaryAction(props) {
var children = props.children,
classes = props.classes,
className = props.className,
other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className"]);
return _react.default.createElement("div", (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, className)
}, other), children);
}
ListItemSecondaryAction.propTypes = true ? {
/**
* The content of the component, normally an `IconButton` or selection control.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string
} : undefined;
ListItemSecondaryAction.muiName = 'ListItemSecondaryAction';
var _default = (0, _withStyles.default)(styles, {
name: 'MuiListItemSecondaryAction'
})(ListItemSecondaryAction);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/ListItemSecondaryAction/index.js":
/*!*************************************************************************!*\
!*** ./node_modules/@material-ui/core/ListItemSecondaryAction/index.js ***!
\*************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _ListItemSecondaryAction.default;
}
});
var _ListItemSecondaryAction = _interopRequireDefault(__webpack_require__(/*! ./ListItemSecondaryAction */ "./node_modules/@material-ui/core/ListItemSecondaryAction/ListItemSecondaryAction.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/ListItemText/ListItemText.js":
/*!*********************************************************************!*\
!*** ./node_modules/@material-ui/core/ListItemText/ListItemText.js ***!
\*********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _Typography = _interopRequireDefault(__webpack_require__(/*! ../Typography */ "./node_modules/@material-ui/core/Typography/index.js"));
var styles = function styles(theme) {
return {
root: {
flex: '1 1 auto',
minWidth: 0,
padding: '0 16px',
'&:first-child': {
paddingLeft: 0
}
},
inset: {
'&:first-child': {
paddingLeft: 56
}
},
dense: {
fontSize: theme.typography.pxToRem(13)
},
primary: {
'&$textDense': {
fontSize: 'inherit'
}
},
secondary: {
'&$textDense': {
fontSize: 'inherit'
}
},
textDense: {}
};
};
exports.styles = styles;
function ListItemText(props, context) {
var _classNames3;
var children = props.children,
classes = props.classes,
classNameProp = props.className,
disableTypography = props.disableTypography,
inset = props.inset,
primaryProp = props.primary,
primaryTypographyProps = props.primaryTypographyProps,
secondaryProp = props.secondary,
secondaryTypographyProps = props.secondaryTypographyProps,
other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "className", "disableTypography", "inset", "primary", "primaryTypographyProps", "secondary", "secondaryTypographyProps"]);
var dense = context.dense;
var primary = primaryProp != null ? primaryProp : children;
if (primary != null && primary.type !== _Typography.default && !disableTypography) {
primary = _react.default.createElement(_Typography.default, (0, _extends2.default)({
variant: "subheading",
className: (0, _classnames.default)(classes.primary, (0, _defineProperty2.default)({}, classes.textDense, dense)),
component: "span"
}, primaryTypographyProps), primary);
}
var secondary = secondaryProp;
if (secondary != null && secondary.type !== _Typography.default && !disableTypography) {
secondary = _react.default.createElement(_Typography.default, (0, _extends2.default)({
variant: "body1",
className: (0, _classnames.default)(classes.secondary, (0, _defineProperty2.default)({}, classes.textDense, dense)),
color: "textSecondary"
}, secondaryTypographyProps), secondary);
}
return _react.default.createElement("div", (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, (_classNames3 = {}, (0, _defineProperty2.default)(_classNames3, classes.dense, dense), (0, _defineProperty2.default)(_classNames3, classes.inset, inset), _classNames3), classNameProp)
}, other), primary, secondary);
}
ListItemText.propTypes = true ? {
/**
* Alias for the `primary` property.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* If `true`, the children won't be wrapped by a Typography component.
* This can be useful to render an alternative Typography variant by wrapping
* the `children` (or `primary`) text, and optional `secondary` text
* with the Typography component.
*/
disableTypography: _propTypes.default.bool,
/**
* If `true`, the children will be indented.
* This should be used if there is no left avatar or left icon.
*/
inset: _propTypes.default.bool,
/**
* The main content element.
*/
primary: _propTypes.default.node,
/**
* These props will be forwarded to the primary typography component
* (as long as disableTypography is not `true`).
*/
primaryTypographyProps: _propTypes.default.object,
/**
* The secondary content element.
*/
secondary: _propTypes.default.node,
/**
* These props will be forwarded to the secondary typography component
* (as long as disableTypography is not `true`).
*/
secondaryTypographyProps: _propTypes.default.object
} : undefined;
ListItemText.defaultProps = {
disableTypography: false,
inset: false
};
ListItemText.contextTypes = {
dense: _propTypes.default.bool
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiListItemText'
})(ListItemText);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/ListItemText/index.js":
/*!**************************************************************!*\
!*** ./node_modules/@material-ui/core/ListItemText/index.js ***!
\**************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _ListItemText.default;
}
});
var _ListItemText = _interopRequireDefault(__webpack_require__(/*! ./ListItemText */ "./node_modules/@material-ui/core/ListItemText/ListItemText.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/ListSubheader/ListSubheader.js":
/*!***********************************************************************!*\
!*** ./node_modules/@material-ui/core/ListSubheader/ListSubheader.js ***!
\***********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _helpers = __webpack_require__(/*! ../utils/helpers */ "./node_modules/@material-ui/core/utils/helpers.js");
var styles = function styles(theme) {
return {
root: theme.mixins.gutters({
boxSizing: 'border-box',
lineHeight: '48px',
listStyle: 'none',
color: theme.palette.text.secondary,
fontFamily: theme.typography.fontFamily,
fontWeight: theme.typography.fontWeightMedium,
fontSize: theme.typography.pxToRem(14)
}),
colorPrimary: {
color: theme.palette.primary.main
},
colorInherit: {
color: 'inherit'
},
inset: {
paddingLeft: 72
},
sticky: {
position: 'sticky',
top: 0,
zIndex: 1,
backgroundColor: 'inherit'
}
};
};
exports.styles = styles;
function ListSubheader(props) {
var _classNames;
var classes = props.classes,
className = props.className,
color = props.color,
Component = props.component,
disableSticky = props.disableSticky,
inset = props.inset,
other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "color", "component", "disableSticky", "inset"]);
return _react.default.createElement(Component, (0, _extends2.default)({
className: (0, _classnames.default)(classes.root, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes["color".concat((0, _helpers.capitalize)(color))], color !== 'default'), (0, _defineProperty2.default)(_classNames, classes.inset, inset), (0, _defineProperty2.default)(_classNames, classes.sticky, !disableSticky), _classNames), className)
}, other));
}
ListSubheader.propTypes = true ? {
/**
* The content of the component.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @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', 'primary', 'inherit']),
/**
* The component used for the root node.
* Either a string to use a DOM element or a component.
*/
component: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* If `true`, the List Subheader will not stick to the top during scroll.
*/
disableSticky: _propTypes.default.bool,
/**
* If `true`, the List Subheader will be indented.
*/
inset: _propTypes.default.bool
} : undefined;
ListSubheader.defaultProps = {
color: 'default',
component: 'li',
disableSticky: false,
inset: false
};
ListSubheader.muiName = 'ListSubheader';
var _default = (0, _withStyles.default)(styles, {
name: 'MuiListSubheader'
})(ListSubheader);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/ListSubheader/index.js":
/*!***************************************************************!*\
!*** ./node_modules/@material-ui/core/ListSubheader/index.js ***!
\***************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _ListSubheader.default;
}
});
var _ListSubheader = _interopRequireDefault(__webpack_require__(/*! ./ListSubheader */ "./node_modules/@material-ui/core/ListSubheader/ListSubheader.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/Menu/Menu.js":
/*!*****************************************************!*\
!*** ./node_modules/@material-ui/core/Menu/Menu.js ***!
\*****************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectSpread */ "./node_modules/@babel/runtime/helpers/builtin/objectSpread.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js"));
var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/inherits */ "./node_modules/@babel/runtime/helpers/builtin/inherits.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "./node_modules/react-dom/index.js"));
var _scrollbarSize = _interopRequireDefault(__webpack_require__(/*! dom-helpers/util/scrollbarSize */ "./node_modules/dom-helpers/util/scrollbarSize.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _Popover = _interopRequireDefault(__webpack_require__(/*! ../Popover */ "./node_modules/@material-ui/core/Popover/index.js"));
var _MenuList = _interopRequireDefault(__webpack_require__(/*! ../MenuList */ "./node_modules/@material-ui/core/MenuList/index.js"));
// @inheritedComponent Popover
var RTL_ORIGIN = {
vertical: 'top',
horizontal: 'right'
};
var LTR_ORIGIN = {
vertical: 'top',
horizontal: 'left'
};
var styles = {
paper: {
// specZ: The maximum height of a simple menu should be one or more rows less than the view
// height. This ensures a tappable area outside of the simple menu with which to dismiss
// the menu.
maxHeight: 'calc(100% - 96px)',
// Add iOS momentum scrolling.
WebkitOverflowScrolling: 'touch',
// Fix a scrolling issue on Chrome.
transform: 'translateZ(0)'
}
};
exports.styles = styles;
var Menu =
/*#__PURE__*/
function (_React$Component) {
(0, _inherits2.default)(Menu, _React$Component);
function Menu() {
var _ref;
var _temp, _this;
(0, _classCallCheck2.default)(this, Menu);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
return (0, _possibleConstructorReturn2.default)(_this, (_temp = _this = (0, _possibleConstructorReturn2.default)(this, (_ref = Menu.__proto__ || Object.getPrototypeOf(Menu)).call.apply(_ref, [this].concat(args))), _this.menuList = null, _this.getContentAnchorEl = function () {
if (!_this.menuList || !_this.menuList.selectedItem) {
return _reactDom.default.findDOMNode(_this.menuList).firstChild;
}
return _reactDom.default.findDOMNode(_this.menuList.selectedItem);
}, _this.focus = function () {
if (_this.menuList && _this.menuList.selectedItem) {
_reactDom.default.findDOMNode(_this.menuList.selectedItem).focus();
return;
}
var menuList = _reactDom.default.findDOMNode(_this.menuList);
if (menuList && menuList.firstChild) {
menuList.firstChild.focus();
}
}, _this.handleEnter = function (element) {
var _this$props = _this.props,
disableAutoFocusItem = _this$props.disableAutoFocusItem,
theme = _this$props.theme;
var menuList = _reactDom.default.findDOMNode(_this.menuList); // Focus so the scroll computation of the Popover works as expected.
if (disableAutoFocusItem !== true) {
_this.focus();
} // Let's ignore that piece of logic if users are already overriding the width
// of the menu.
if (menuList && element.clientHeight < menuList.clientHeight && !menuList.style.width) {
var size = "".concat((0, _scrollbarSize.default)(), "px");
menuList.style[theme.direction === 'rtl' ? 'paddingLeft' : 'paddingRight'] = size;
menuList.style.width = "calc(100% + ".concat(size, ")");
}
if (_this.props.onEnter) {
_this.props.onEnter(element);
}
}, _this.handleListKeyDown = function (event, key) {
if (key === 'tab') {
event.preventDefault();
if (_this.props.onClose) {
_this.props.onClose(event);
}
}
}, _temp));
}
(0, _createClass2.default)(Menu, [{
key: "componentDidMount",
value: function componentDidMount() {
if (this.props.open && this.props.disableAutoFocusItem !== true) {
this.focus();
}
}
}, {
key: "render",
value: function render() {
var _this2 = this;
var _props = this.props,
children = _props.children,
classes = _props.classes,
disableAutoFocusItem = _props.disableAutoFocusItem,
MenuListProps = _props.MenuListProps,
onEnter = _props.onEnter,
_props$PaperProps = _props.PaperProps,
PaperProps = _props$PaperProps === void 0 ? {} : _props$PaperProps,
PopoverClasses = _props.PopoverClasses,
theme = _props.theme,
other = (0, _objectWithoutProperties2.default)(_props, ["children", "classes", "disableAutoFocusItem", "MenuListProps", "onEnter", "PaperProps", "PopoverClasses", "theme"]);
return _react.default.createElement(_Popover.default, (0, _extends2.default)({
getContentAnchorEl: this.getContentAnchorEl,
classes: PopoverClasses,
onEnter: this.handleEnter,
anchorOrigin: theme.direction === 'rtl' ? RTL_ORIGIN : LTR_ORIGIN,
transformOrigin: theme.direction === 'rtl' ? RTL_ORIGIN : LTR_ORIGIN,
PaperProps: (0, _objectSpread2.default)({}, PaperProps, {
classes: (0, _objectSpread2.default)({}, PaperProps.classes, {
root: classes.paper
})
})
}, other), _react.default.createElement(_MenuList.default, (0, _extends2.default)({
onKeyDown: this.handleListKeyDown
}, MenuListProps, {
ref: function ref(node) {
_this2.menuList = node;
}
}), children));
}
}]);
return Menu;
}(_react.default.Component);
Menu.propTypes = true ? {
/**
* The DOM element used to set the position of the menu.
*/
anchorEl: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.func]),
/**
* Menu contents, normally `MenuItem`s.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* If `true`, the selected / first menu item will not be auto focused.
*/
disableAutoFocusItem: _propTypes.default.bool,
/**
* Properties applied to the [`MenuList`](/api/menu-list) element.
*/
MenuListProps: _propTypes.default.object,
/**
* Callback fired when the component requests to be closed.
*
* @param {object} event The event source of the callback
*/
onClose: _propTypes.default.func,
/**
* Callback fired before the Menu enters.
*/
onEnter: _propTypes.default.func,
/**
* Callback fired when the Menu has entered.
*/
onEntered: _propTypes.default.func,
/**
* Callback fired when the Menu is entering.
*/
onEntering: _propTypes.default.func,
/**
* Callback fired before the Menu exits.
*/
onExit: _propTypes.default.func,
/**
* Callback fired when the Menu has exited.
*/
onExited: _propTypes.default.func,
/**
* Callback fired when the Menu is exiting.
*/
onExiting: _propTypes.default.func,
/**
* If `true`, the menu is visible.
*/
open: _propTypes.default.bool.isRequired,
/**
* @ignore
*/
PaperProps: _propTypes.default.object,
/**
* `classes` property applied to the `Popover` element.
*/
PopoverClasses: _propTypes.default.object,
/**
* @ignore
*/
theme: _propTypes.default.object.isRequired,
/**
* The length of the transition in `ms`, or 'auto'
*/
transitionDuration: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.shape({
enter: _propTypes.default.number,
exit: _propTypes.default.number
}), _propTypes.default.oneOf(['auto'])])
} : undefined;
Menu.defaultProps = {
disableAutoFocusItem: false,
transitionDuration: 'auto'
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiMenu',
withTheme: true
})(Menu);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Menu/index.js":
/*!******************************************************!*\
!*** ./node_modules/@material-ui/core/Menu/index.js ***!
\******************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _Menu.default;
}
});
var _Menu = _interopRequireDefault(__webpack_require__(/*! ./Menu */ "./node_modules/@material-ui/core/Menu/Menu.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/MenuItem/MenuItem.js":
/*!*************************************************************!*\
!*** ./node_modules/@material-ui/core/MenuItem/MenuItem.js ***!
\*************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectSpread */ "./node_modules/@babel/runtime/helpers/builtin/objectSpread.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _ListItem = _interopRequireDefault(__webpack_require__(/*! ../ListItem */ "./node_modules/@material-ui/core/ListItem/index.js"));
// @inheritedComponent ListItem
var styles = function styles(theme) {
return {
root: (0, _objectSpread2.default)({}, theme.typography.subheading, {
height: 24,
boxSizing: 'content-box',
width: 'auto',
overflow: 'hidden',
textOverflow: 'ellipsis',
whiteSpace: 'nowrap',
paddingLeft: 16,
paddingRight: 16,
'&$selected': {
backgroundColor: theme.palette.action.selected
}
}),
selected: {}
};
};
exports.styles = styles;
function MenuItem(props) {
var classes = props.classes,
className = props.className,
component = props.component,
selected = props.selected,
role = props.role,
other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "component", "selected", "role"]);
return _react.default.createElement(_ListItem.default, (0, _extends2.default)({
button: true,
role: role,
tabIndex: -1,
className: (0, _classnames.default)(classes.root, (0, _defineProperty2.default)({}, classes.selected, selected), className),
component: component
}, other));
}
MenuItem.propTypes = true ? {
/**
* Menu item contents.
*/
children: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* The component used for the root node.
* Either a string to use a DOM element or a component.
*/
component: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* @ignore
*/
role: _propTypes.default.string,
/**
* Use to apply selected styling.
*/
selected: _propTypes.default.bool
} : undefined;
MenuItem.defaultProps = {
component: 'li',
role: 'menuitem',
selected: false
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiMenuItem'
})(MenuItem);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/MenuItem/index.js":
/*!**********************************************************!*\
!*** ./node_modules/@material-ui/core/MenuItem/index.js ***!
\**********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _MenuItem.default;
}
});
var _MenuItem = _interopRequireDefault(__webpack_require__(/*! ./MenuItem */ "./node_modules/@material-ui/core/MenuItem/MenuItem.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/MenuList/MenuList.js":
/*!*************************************************************!*\
!*** ./node_modules/@material-ui/core/MenuList/MenuList.js ***!
\*************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js"));
var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/inherits */ "./node_modules/@babel/runtime/helpers/builtin/inherits.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "./node_modules/react-dom/index.js"));
var _keycode = _interopRequireDefault(__webpack_require__(/*! keycode */ "./node_modules/keycode/index.js"));
var _warning = _interopRequireDefault(__webpack_require__(/*! warning */ "./node_modules/@material-ui/core/node_modules/warning/warning.js"));
var _ownerDocument = _interopRequireDefault(__webpack_require__(/*! ../utils/ownerDocument */ "./node_modules/@material-ui/core/utils/ownerDocument.js"));
var _List = _interopRequireDefault(__webpack_require__(/*! ../List */ "./node_modules/@material-ui/core/List/index.js"));
// @inheritedComponent List
var MenuList =
/*#__PURE__*/
function (_React$Component) {
(0, _inherits2.default)(MenuList, _React$Component);
function MenuList() {
var _ref;
var _temp, _this;
(0, _classCallCheck2.default)(this, MenuList);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
return (0, _possibleConstructorReturn2.default)(_this, (_temp = _this = (0, _possibleConstructorReturn2.default)(this, (_ref = MenuList.__proto__ || Object.getPrototypeOf(MenuList)).call.apply(_ref, [this].concat(args))), _this.list = null, _this.selectedItem = null, _this.blurTimer = null, _this.state = {
currentTabIndex: null
}, _this.handleBlur = function (event) {
_this.blurTimer = setTimeout(function () {
if (_this.list) {
var list = _reactDom.default.findDOMNode(_this.list);
var currentFocus = (0, _ownerDocument.default)(list).activeElement;
if (!list.contains(currentFocus)) {
_this.resetTabIndex();
}
}
}, 30);
if (_this.props.onBlur) {
_this.props.onBlur(event);
}
}, _this.handleKeyDown = function (event) {
var list = _reactDom.default.findDOMNode(_this.list);
var key = (0, _keycode.default)(event);
var currentFocus = (0, _ownerDocument.default)(list).activeElement;
if ((key === 'up' || key === 'down') && (!currentFocus || currentFocus && !list.contains(currentFocus))) {
if (_this.selectedItem) {
_reactDom.default.findDOMNode(_this.selectedItem).focus();
} else {
list.firstChild.focus();
}
} else if (key === 'down') {
event.preventDefault();
if (currentFocus.nextElementSibling) {
currentFocus.nextElementSibling.focus();
}
} else if (key === 'up') {
event.preventDefault();
if (currentFocus.previousElementSibling) {
currentFocus.previousElementSibling.focus();
}
}
if (_this.props.onKeyDown) {
_this.props.onKeyDown(event, key);
}
}, _this.handleItemFocus = function (event) {
var list = _reactDom.default.findDOMNode(_this.list);
if (list) {
for (var i = 0; i < list.children.length; i += 1) {
if (list.children[i] === event.currentTarget) {
_this.setTabIndex(i);
break;
}
}
}
}, _temp));
}
(0, _createClass2.default)(MenuList, [{
key: "componentDidMount",
value: function componentDidMount() {
this.resetTabIndex();
}
}, {
key: "componentWillUnmount",
value: function componentWillUnmount() {
clearTimeout(this.blurTimer);
}
}, {
key: "setTabIndex",
value: function setTabIndex(index) {
this.setState({
currentTabIndex: index
});
}
}, {
key: "focus",
value: function focus() {
var currentTabIndex = this.state.currentTabIndex;
var list = _reactDom.default.findDOMNode(this.list);
if (!list || !list.children || !list.firstChild) {
return;
}
if (currentTabIndex && currentTabIndex >= 0) {
list.children[currentTabIndex].focus();
} else {
list.firstChild.focus();
}
}
}, {
key: "resetTabIndex",
value: function resetTabIndex() {
var list = _reactDom.default.findDOMNode(this.list);
var currentFocus = (0, _ownerDocument.default)(list).activeElement;
var items = [];
for (var i = 0; i < list.children.length; i += 1) {
items.push(list.children[i]);
}
var currentFocusIndex = items.indexOf(currentFocus);
if (currentFocusIndex !== -1) {
return this.setTabIndex(currentFocusIndex);
}
if (this.selectedItem) {
return this.setTabIndex(items.indexOf(_reactDom.default.findDOMNode(this.selectedItem)));
}
return this.setTabIndex(0);
}
}, {
key: "render",
value: function render() {
var _this2 = this;
var _props = this.props,
children = _props.children,
className = _props.className,
onBlur = _props.onBlur,
onKeyDown = _props.onKeyDown,
other = (0, _objectWithoutProperties2.default)(_props, ["children", "className", "onBlur", "onKeyDown"]);
return _react.default.createElement(_List.default, (0, _extends2.default)({
role: "menu",
ref: function ref(node) {
_this2.list = node;
},
className: className,
onKeyDown: this.handleKeyDown,
onBlur: this.handleBlur
}, other), _react.default.Children.map(children, function (child, index) {
if (!_react.default.isValidElement(child)) {
return null;
}
true ? (0, _warning.default)(child.type !== _react.default.Fragment, ["Material-UI: the MenuList component doesn't accept a Fragment as a child.", 'Consider providing an array instead.'].join('\n')) : undefined;
return _react.default.cloneElement(child, {
tabIndex: index === _this2.state.currentTabIndex ? 0 : -1,
ref: child.props.selected ? function (node) {
_this2.selectedItem = node;
} : undefined,
onFocus: _this2.handleItemFocus
});
}));
}
}]);
return MenuList;
}(_react.default.Component);
MenuList.propTypes = true ? {
/**
* MenuList contents, normally `MenuItem`s.
*/
children: _propTypes.default.node,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* @ignore
*/
onBlur: _propTypes.default.func,
/**
* @ignore
*/
onKeyDown: _propTypes.default.func
} : undefined;
var _default = MenuList;
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/MenuList/index.js":
/*!**********************************************************!*\
!*** ./node_modules/@material-ui/core/MenuList/index.js ***!
\**********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _MenuList.default;
}
});
var _MenuList = _interopRequireDefault(__webpack_require__(/*! ./MenuList */ "./node_modules/@material-ui/core/MenuList/MenuList.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/MobileStepper/MobileStepper.js":
/*!***********************************************************************!*\
!*** ./node_modules/@material-ui/core/MobileStepper/MobileStepper.js ***!
\***********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/toConsumableArray */ "./node_modules/@babel/runtime/helpers/builtin/toConsumableArray.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _Paper = _interopRequireDefault(__webpack_require__(/*! ../Paper */ "./node_modules/@material-ui/core/Paper/index.js"));
var _helpers = __webpack_require__(/*! ../utils/helpers */ "./node_modules/@material-ui/core/utils/helpers.js");
var _LinearProgress = _interopRequireDefault(__webpack_require__(/*! ../LinearProgress */ "./node_modules/@material-ui/core/LinearProgress/index.js"));
// @inheritedComponent Paper
var styles = function styles(theme) {
return {
root: {
display: 'flex',
flexDirection: 'row',
justifyContent: 'space-between',
alignItems: 'center',
background: theme.palette.background.default,
padding: 8
},
positionBottom: {
position: 'fixed',
bottom: 0,
left: 0,
right: 0,
zIndex: theme.zIndex.mobileStepper
},
positionTop: {
position: 'fixed',
top: 0,
left: 0,
right: 0,
zIndex: theme.zIndex.mobileStepper
},
positionStatic: {},
dots: {
display: 'flex',
flexDirection: 'row'
},
dot: {
backgroundColor: theme.palette.action.disabled,
borderRadius: '50%',
width: 8,
height: 8,
margin: '0 2px'
},
dotActive: {
backgroundColor: theme.palette.primary.main
},
progress: {
width: '50%'
}
};
};
exports.styles = styles;
function MobileStepper(props) {
var activeStep = props.activeStep,
backButton = props.backButton,
classes = props.classes,
classNameProp = props.className,
nextButton = props.nextButton,
position = props.position,
steps = props.steps,
variant = props.variant,
other = (0, _objectWithoutProperties2.default)(props, ["activeStep", "backButton", "classes", "className", "nextButton", "position", "steps", "variant"]);
var className = (0, _classnames.default)(classes.root, classes["position".concat((0, _helpers.capitalize)(position))], classNameProp);
return _react.default.createElement(_Paper.default, (0, _extends2.default)({
square: true,
elevation: 0,
className: className
}, other), backButton, variant === 'dots' && _react.default.createElement("div", {
className: classes.dots
}, (0, _toConsumableArray2.default)(new Array(steps)).map(function (_, step) {
var dotClassName = (0, _classnames.default)(classes.dot, (0, _defineProperty2.default)({}, classes.dotActive, step === activeStep)); // eslint-disable-next-line react/no-array-index-key
return _react.default.createElement("div", {
key: step,
className: dotClassName
});
})), variant === 'progress' && _react.default.createElement(_LinearProgress.default, {
className: classes.progress,
variant: "determinate",
value: Math.ceil(activeStep / (steps - 1) * 100)
}), nextButton);
}
MobileStepper.propTypes = true ? {
/**
* Set the active step (zero based index).
* Defines which dot is highlighted when the variant is 'dots'.
*/
activeStep: _propTypes.default.number,
/**
* A back button element. For instance, it can be be a `Button` or a `IconButton`.
*/
backButton: _propTypes.default.node,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* A next button element. For instance, it can be be a `Button` or a `IconButton`.
*/
nextButton: _propTypes.default.node,
/**
* Set the positioning type.
*/
position: _propTypes.default.oneOf(['bottom', 'top', 'static']),
/**
* The total steps.
*/
steps: _propTypes.default.number.isRequired,
/**
* The variant to use.
*/
variant: _propTypes.default.oneOf(['text', 'dots', 'progress'])
} : undefined;
MobileStepper.defaultProps = {
activeStep: 0,
position: 'bottom',
variant: 'dots'
};
var _default = (0, _withStyles.default)(styles, {
name: 'MuiMobileStepper'
})(MobileStepper);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/MobileStepper/index.js":
/*!***************************************************************!*\
!*** ./node_modules/@material-ui/core/MobileStepper/index.js ***!
\***************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _MobileStepper.default;
}
});
var _MobileStepper = _interopRequireDefault(__webpack_require__(/*! ./MobileStepper */ "./node_modules/@material-ui/core/MobileStepper/MobileStepper.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/Modal/Modal.js":
/*!*******************************************************!*\
!*** ./node_modules/@material-ui/core/Modal/Modal.js ***!
\*******************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/extends */ "./node_modules/@babel/runtime/helpers/builtin/extends.js"));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/defineProperty */ "./node_modules/@babel/runtime/helpers/builtin/defineProperty.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/builtin/possibleConstructorReturn.js"));
var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/inherits */ "./node_modules/@babel/runtime/helpers/builtin/inherits.js"));
var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/assertThisInitialized */ "./node_modules/@babel/runtime/helpers/builtin/assertThisInitialized.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "./node_modules/react-dom/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));
var _warning = _interopRequireDefault(__webpack_require__(/*! warning */ "./node_modules/@material-ui/core/node_modules/warning/warning.js"));
var _keycode = _interopRequireDefault(__webpack_require__(/*! keycode */ "./node_modules/keycode/index.js"));
var _ownerDocument = _interopRequireDefault(__webpack_require__(/*! ../utils/ownerDocument */ "./node_modules/@material-ui/core/utils/ownerDocument.js"));
var _RootRef = _interopRequireDefault(__webpack_require__(/*! ../RootRef */ "./node_modules/@material-ui/core/RootRef/index.js"));
var _Portal = _interopRequireDefault(__webpack_require__(/*! ../Portal */ "./node_modules/@material-ui/core/Portal/index.js"));
var _helpers = __webpack_require__(/*! ../utils/helpers */ "./node_modules/@material-ui/core/utils/helpers.js");
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _ModalManager = _interopRequireDefault(__webpack_require__(/*! ./ModalManager */ "./node_modules/@material-ui/core/Modal/ModalManager.js"));
var _Backdrop = _interopRequireDefault(__webpack_require__(/*! ../Backdrop */ "./node_modules/@material-ui/core/Backdrop/index.js"));
function getContainer(container, defaultContainer) {
container = typeof container === 'function' ? container() : container;
return _reactDom.default.findDOMNode(container) || defaultContainer;
}
function getHasTransition(props) {
return props.children ? props.children.props.hasOwnProperty('in') : false;
}
var styles = function styles(theme) {
return {
root: {
position: 'fixed',
zIndex: theme.zIndex.modal,
right: 0,
bottom: 0,
top: 0,
left: 0
},
hidden: {
visibility: 'hidden'
}
};
};
/* istanbul ignore if */
exports.styles = styles;
if ("development" !== 'production' && !_react.default.createContext) {
throw new Error('Material-UI: react@16.3.0 or greater is required.');
}
/**
* This component shares many concepts with [react-overlays](https://react-bootstrap.github.io/react-overlays/#modals).
*/
var Modal =
/*#__PURE__*/
function (_React$Component) {
(0, _inherits2.default)(Modal, _React$Component);
function Modal(props) {
var _this;
(0, _classCallCheck2.default)(this, Modal);
_this = (0, _possibleConstructorReturn2.default)(this, (Modal.__proto__ || Object.getPrototypeOf(Modal)).call(this, props));
_this.mountNode = null;
_this.modalRef = null;
_this.dialogRef = null;
_this.mounted = false;
_this.handleRendered = function () {
_this.autoFocus(); // Fix a bug on Chrome where the scroll isn't initially 0.
_this.modalRef.scrollTop = 0;
if (_this.props.onRendered) {
_this.props.onRendered();
}
};
_this.handleOpen = function () {
var doc = (0, _ownerDocument.default)(_this.mountNode);
var container = getContainer(_this.props.container, doc.body);
_this.props.manager.add((0, _assertThisInitialized2.default)(_this), container);
doc.addEventListener('keydown', _this.handleDocumentKeyDown);
doc.addEventListener('focus', _this.enforceFocus, true);
};
_this.handleClose = function () {
_this.props.manager.remove((0, _assertThisInitialized2.default)(_this));
var doc = (0, _ownerDocument.default)(_this.mountNode);
doc.removeEventListener('keydown', _this.handleDocumentKeyDown);
doc.removeEventListener('focus', _this.enforceFocus, true);
_this.restoreLastFocus();
};
_this.handleExited = function () {
_this.setState({
exited: true
});
_this.handleClose();
};
_this.handleBackdropClick = function (event) {
if (event.target !== event.currentTarget) {
return;
}
if (_this.props.onBackdropClick) {
_this.props.onBackdropClick(event);
}
if (!_this.props.disableBackdropClick && _this.props.onClose) {
_this.props.onClose(event, 'backdropClick');
}
};
_this.handleDocumentKeyDown = function (event) {
if (!_this.isTopModal() || (0, _keycode.default)(event) !== 'esc') {
return;
}
if (_this.props.onEscapeKeyDown) {
_this.props.onEscapeKeyDown(event);
}
if (!_this.props.disableEscapeKeyDown && _this.props.onClose) {
_this.props.onClose(event, 'escapeKeyDown');
}
};
_this.checkForFocus = function () {
_this.lastFocus = (0, _ownerDocument.default)(_this.mountNode).activeElement;
};
_this.enforceFocus = function () {
if (_this.props.disableEnforceFocus || !_this.mounted || !_this.isTopModal()) {
return;
}
var currentActiveElement = (0, _ownerDocument.default)(_this.mountNode).activeElement;
if (_this.dialogRef && !_this.dialogRef.contains(currentActiveElement)) {
_this.dialogRef.focus();
}
};
_this.state = {
exited: !_this.props.open
};
return _this;
}
(0, _createClass2.default)(Modal, [{
key: "componentDidMount",
value: function componentDidMount() {
this.mounted = true;
if (this.props.open) {
this.handleOpen();
}
}
}, {
key: "componentDidUpdate",
value: function componentDidUpdate(prevProps) {
if (!prevProps.open && this.props.open) {
this.checkForFocus();
}
if (prevProps.open && !this.props.open && !getHasTransition(this.props)) {
// Otherwise handleExited will call this.
this.handleClose();
} else if (!prevProps.open && this.props.open) {
this.handleOpen();
}
}
}, {
key: "componentWillUnmount",
value: function componentWillUnmount() {
this.mounted = false;
if (this.props.open || getHasTransition(this.props) && !this.state.exited) {
this.handleClose();
}
}
}, {
key: "autoFocus",
value: function autoFocus() {
if (this.props.disableAutoFocus) {
return;
}
var currentActiveElement = (0, _ownerDocument.default)(this.mountNode).activeElement;
if (this.dialogRef && !this.dialogRef.contains(currentActiveElement)) {
this.lastFocus = currentActiveElement;
if (!this.dialogRef.hasAttribute('tabIndex')) {
true ? (0, _warning.default)(false, ['Material-UI: the modal content node does not accept focus.', 'For the benefit of assistive technologies, ' + 'the tabIndex of the node is being set to "-1".'].join('\n')) : undefined;
this.dialogRef.setAttribute('tabIndex', -1);
}
this.dialogRef.focus();
}
}
}, {
key: "restoreLastFocus",
value: function restoreLastFocus() {
if (this.props.disableRestoreFocus) {
return;
}
if (this.lastFocus) {
// Not all elements in IE11 have a focus method.
// Because IE11 market share is low, we accept the restore focus being broken
// and we silent the issue.
if (this.lastFocus.focus) {
this.lastFocus.focus();
}
this.lastFocus = null;
}
}
}, {
key: "isTopModal",
value: function isTopModal() {
return this.props.manager.isTopModal(this);
}
}, {
key: "render",
value: function render() {
var _this2 = this;
var _props = this.props,
BackdropComponent = _props.BackdropComponent,
BackdropProps = _props.BackdropProps,
children = _props.children,
classes = _props.classes,
className = _props.className,
container = _props.container,
disableAutoFocus = _props.disableAutoFocus,
disableBackdropClick = _props.disableBackdropClick,
disableEnforceFocus = _props.disableEnforceFocus,
disableEscapeKeyDown = _props.disableEscapeKeyDown,
disablePortal = _props.disablePortal,
disableRestoreFocus = _props.disableRestoreFocus,
hideBackdrop = _props.hideBackdrop,
keepMounted = _props.keepMounted,
manager = _props.manager,
onBackdropClick = _props.onBackdropClick,
onClose = _props.onClose,
onEscapeKeyDown = _props.onEscapeKeyDown,
onRendered = _props.onRendered,
open = _props.open,
other = (0, _objectWithoutProperties2.default)(_props, ["BackdropComponent", "BackdropProps", "children", "classes", "className", "container", "disableAutoFocus", "disableBackdropClick", "disableEnforceFocus", "disableEscapeKeyDown", "disablePortal", "disableRestoreFocus", "hideBackdrop", "keepMounted", "manager", "onBackdropClick", "onClose", "onEscapeKeyDown", "onRendered", "open"]);
var exited = this.state.exited;
var hasTransition = getHasTransition(this.props);
var childProps = {};
if (!keepMounted && !open && (!hasTransition || exited)) {
return null;
} // It's a Transition like component
if (hasTransition) {
childProps.onExited = (0, _helpers.createChainedFunction)(this.handleExited, children.props.onExited);
}
if (children.props.role === undefined) {
childProps.role = children.props.role || 'document';
}
if (children.props.tabIndex === undefined) {
childProps.tabIndex = children.props.tabIndex || '-1';
}
return _react.default.createElement(_Portal.default, {
ref: function ref(node) {
_this2.mountNode = node ? node.getMountNode() : node;
},
container: container,
disablePortal: disablePortal,
onRendered: this.handleRendered
}, _react.default.createElement("div", (0, _extends2.default)({
ref: function ref(node) {
_this2.modalRef = node;
},
className: (0, _classnames.default)(classes.root, className, (0, _defineProperty2.default)({}, classes.hidden, exited))
}, other), hideBackdrop ? null : _react.default.createElement(BackdropComponent, (0, _extends2.default)({
open: open,
onClick: this.handleBackdropClick
}, BackdropProps)), _react.default.createElement(_RootRef.default, {
rootRef: function rootRef(node) {
_this2.dialogRef = node;
}
}, _react.default.cloneElement(children, childProps))));
}
}], [{
key: "getDerivedStateFromProps",
value: function getDerivedStateFromProps(nextProps) {
if (nextProps.open) {
return {
exited: false
};
}
if (!getHasTransition(nextProps)) {
// Otherwise let handleExited take care of marking exited.
return {
exited: true
};
}
return null;
}
}]);
return Modal;
}(_react.default.Component);
Modal.propTypes = true ? {
/**
* A backdrop component. This property enables custom backdrop rendering.
*/
BackdropComponent: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.object]),
/**
* Properties applied to the [`Backdrop`](/api/backdrop) element.
*/
BackdropProps: _propTypes.default.object,
/**
* A single child content element.
*/
children: _propTypes.default.element,
/**
* Override or extend the styles applied to the component.
* See [CSS API](#css-api) below for more details.
*/
classes: _propTypes.default.object.isRequired,
/**
* @ignore
*/
className: _propTypes.default.string,
/**
* A node, component instance, or function that returns either.
* The `container` will have the portal children appended to it.
*/
container: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.func]),
/**
* If `true`, the modal will not automatically shift focus to itself when it opens, and
* replace it to the last focused element when it closes.
* This also works correctly with any modal children that have the `disableAutoFocus` prop.
*
* Generally this should never be set to `true` as it makes the modal less
* accessible to assistive technologies, like screen readers.
*/
disableAutoFocus: _propTypes.default.bool,
/**
* If `true`, clicking the backdrop will not fire any callback.
*/
disableBackdropClick: _propTypes.default.bool,
/**
* If `true`, the modal will not prevent focus from leaving the modal while open.
*
* Generally this should never be set to `true` as it makes the modal less
* accessible to assistive technologies, like screen readers.
*/
disableEnforceFocus: _propTypes.default.bool,
/**
* If `true`, hitting escape will not fire any callback.
*/
disableEscapeKeyDown: _propTypes.default.bool,
/**
* Disable the portal behavior.
* The children stay within it's parent DOM hierarchy.
*/
disablePortal: _propTypes.default.bool,
/**
* If `true`, the modal will not restore focus to previously focused element once
* modal is hidden.
*/
disableRestoreFocus: _propTypes.default.bool,
/**
* If `true`, the backdrop is not rendered.
*/
hideBackdrop: _propTypes.default.bool,
/**
* Always keep the children in the DOM.
* This property can be useful in SEO situation or
* when you want to maximize the responsiveness of the Modal.
*/
keepMounted: _propTypes.default.bool,
/**
* A modal manager used to track and manage the state of open
* Modals. This enables customizing how modals interact within a container.
*/
manager: _propTypes.default.object,
/**
* Callback fired when the backdrop is clicked.
*/
onBackdropClick: _propTypes.default.func,
/**
* Callback fired when the component requests to be closed.
* The `reason` parameter can optionally be used to control the response to `onClose`.
*
* @param {object} event The event source of the callback
* @param {string} reason Can be:`"escapeKeyDown"`, `"backdropClick"`
*/
onClose: _propTypes.default.func,
/**
* Callback fired when the escape key is pressed,
* `disableEscapeKeyDown` is false and the modal is in focus.
*/
onEscapeKeyDown: _propTypes.default.func,
/**
* Callback fired once the children has been mounted into the `container`.
* It signals that the `open={true}` property took effect.
*/
onRendered: _propTypes.default.func,
/**
* If `true`, the modal is open.
*/
open: _propTypes.default.bool.isRequired
} : undefined;
Modal.defaultProps = {
disableAutoFocus: false,
disableBackdropClick: false,
disableEnforceFocus: false,
disableEscapeKeyDown: false,
disablePortal: false,
disableRestoreFocus: false,
hideBackdrop: false,
keepMounted: false,
// Modals don't open on the server so this won't conflict with concurrent requests.
manager: new _ModalManager.default(),
BackdropComponent: _Backdrop.default
};
var _default = (0, _withStyles.default)(styles, {
flip: false,
name: 'MuiModal'
})(Modal);
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Modal/ModalManager.js":
/*!**************************************************************!*\
!*** ./node_modules/@material-ui/core/Modal/ModalManager.js ***!
\**************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/classCallCheck */ "./node_modules/@babel/runtime/helpers/builtin/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/createClass */ "./node_modules/@babel/runtime/helpers/builtin/createClass.js"));
var _style = _interopRequireDefault(__webpack_require__(/*! dom-helpers/style */ "./node_modules/dom-helpers/style/index.js"));
var _scrollbarSize = _interopRequireDefault(__webpack_require__(/*! dom-helpers/util/scrollbarSize */ "./node_modules/dom-helpers/util/scrollbarSize.js"));
var _ownerDocument = _interopRequireDefault(__webpack_require__(/*! ../utils/ownerDocument */ "./node_modules/@material-ui/core/utils/ownerDocument.js"));
var _isOverflowing = _interopRequireDefault(__webpack_require__(/*! ./isOverflowing */ "./node_modules/@material-ui/core/Modal/isOverflowing.js"));
var _manageAriaHidden = __webpack_require__(/*! ./manageAriaHidden */ "./node_modules/@material-ui/core/Modal/manageAriaHidden.js");
function findIndexOf(data, callback) {
var idx = -1;
data.some(function (item, index) {
if (callback(item)) {
idx = index;
return true;
}
return false;
});
return idx;
}
function getPaddingRight(node) {
return parseInt((0, _style.default)(node, 'paddingRight') || 0, 10);
}
function setContainerStyle(data, container) {
var style = {
overflow: 'hidden'
}; // We are only interested in the actual `style` here because we will override it.
data.style = {
overflow: container.style.overflow,
paddingRight: container.style.paddingRight
};
if (data.overflowing) {
var scrollbarSize = (0, _scrollbarSize.default)(); // Use computed style, here to get the real padding to add our scrollbar width.
style.paddingRight = "".concat(getPaddingRight(container) + scrollbarSize, "px"); // .mui-fixed is a global helper.
var fixedNodes = (0, _ownerDocument.default)(container).querySelectorAll('.mui-fixed');
for (var i = 0; i < fixedNodes.length; i += 1) {
var paddingRight = getPaddingRight(fixedNodes[i]);
data.prevPaddings.push(paddingRight);
fixedNodes[i].style.paddingRight = "".concat(paddingRight + scrollbarSize, "px");
}
}
Object.keys(style).forEach(function (key) {
container.style[key] = style[key];
});
}
function removeContainerStyle(data, container) {
Object.keys(data.style).forEach(function (key) {
container.style[key] = data.style[key];
});
var fixedNodes = (0, _ownerDocument.default)(container).querySelectorAll('.mui-fixed');
for (var i = 0; i < fixedNodes.length; i += 1) {
fixedNodes[i].style.paddingRight = "".concat(data.prevPaddings[i], "px");
}
}
/**
* @ignore - do not document.
*
* Proper state managment for containers and the modals in those containers.
* Simplified, but inspired by react-overlay's ModalManager class.
* Used by the Modal to ensure proper styling of containers.
*/
var ModalManager =
/*#__PURE__*/
function () {
function ModalManager() {
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
(0, _classCallCheck2.default)(this, ModalManager);
var _options$hideSiblingN = options.hideSiblingNodes,
hideSiblingNodes = _options$hideSiblingN === void 0 ? true : _options$hideSiblingN,
_options$handleContai = options.handleContainerOverflow,
handleContainerOverflow = _options$handleContai === void 0 ? true : _options$handleContai;
this.hideSiblingNodes = hideSiblingNodes;
this.handleContainerOverflow = handleContainerOverflow; // this.modals[modalIdx] = modal
this.modals = []; // this.containers[containerIdx] = container
this.containers = []; // this.data[containerIdx] = {
// modals: [],
// }
this.data = [];
}
(0, _createClass2.default)(ModalManager, [{
key: "add",
value: function add(modal, container) {
var modalIdx = this.modals.indexOf(modal);
if (modalIdx !== -1) {
return modalIdx;
}
modalIdx = this.modals.length;
this.modals.push(modal);
if (this.hideSiblingNodes) {
(0, _manageAriaHidden.hideSiblings)(container, modal.mountNode);
}
var containerIdx = this.containers.indexOf(container);
if (containerIdx !== -1) {
this.data[containerIdx].modals.push(modal);
return modalIdx;
}
var data = {
modals: [modal],
overflowing: (0, _isOverflowing.default)(container),
prevPaddings: []
};
if (this.handleContainerOverflow) {
setContainerStyle(data, container);
}
this.containers.push(container);
this.data.push(data);
return modalIdx;
}
}, {
key: "remove",
value: function remove(modal) {
var modalIdx = this.modals.indexOf(modal);
if (modalIdx === -1) {
return modalIdx;
}
var containerIdx = findIndexOf(this.data, function (item) {
return item.modals.indexOf(modal) !== -1;
});
var data = this.data[containerIdx];
var container = this.containers[containerIdx];
data.modals.splice(data.modals.indexOf(modal), 1);
this.modals.splice(modalIdx, 1); // If that was the last modal in a container, clean up the container.
if (data.modals.length === 0) {
if (this.handleContainerOverflow) {
removeContainerStyle(data, container);
}
if (this.hideSiblingNodes) {
(0, _manageAriaHidden.showSiblings)(container, modal.mountNode);
}
this.containers.splice(containerIdx, 1);
this.data.splice(containerIdx, 1);
} else if (this.hideSiblingNodes) {
// Otherwise make sure the next top modal is visible to a screan reader.
(0, _manageAriaHidden.ariaHidden)(false, data.modals[data.modals.length - 1].mountNode);
}
return modalIdx;
}
}, {
key: "isTopModal",
value: function isTopModal(modal) {
return !!this.modals.length && this.modals[this.modals.length - 1] === modal;
}
}]);
return ModalManager;
}();
var _default = ModalManager;
exports.default = _default;
/***/ }),
/***/ "./node_modules/@material-ui/core/Modal/index.js":
/*!*******************************************************!*\
!*** ./node_modules/@material-ui/core/Modal/index.js ***!
\*******************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function get() {
return _Modal.default;
}
});
Object.defineProperty(exports, "ModalManager", {
enumerable: true,
get: function get() {
return _ModalManager.default;
}
});
var _Modal = _interopRequireDefault(__webpack_require__(/*! ./Modal */ "./node_modules/@material-ui/core/Modal/Modal.js"));
var _ModalManager = _interopRequireDefault(__webpack_require__(/*! ./ModalManager */ "./node_modules/@material-ui/core/Modal/ModalManager.js"));
/***/ }),
/***/ "./node_modules/@material-ui/core/Modal/isOverflowing.js":
/*!***************************************************************!*\
!*** ./node_modules/@material-ui/core/Modal/isOverflowing.js ***!
\***************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.isBody = isBody;
exports.default = isOverflowing;
var _isWindow = _interopRequireDefault(__webpack_require__(/*! dom-helpers/query/isWindow */ "./node_modules/dom-helpers/query/isWindow.js"));
var _ownerDocument = _interopRequireDefault(__webpack_require__(/*! ../utils/ownerDocument */ "./node_modules/@material-ui/core/utils/ownerDocument.js"));
var _ownerWindow = _interopRequireDefault(__webpack_require__(/*! ../utils/ownerWindow */ "./node_modules/@material-ui/core/utils/ownerWindow.js"));
function isBody(node) {
return node && node.tagName.toLowerCase() === 'body';
} // Do we have a scroll bar?
function isOverflowing(container) {
var doc = (0, _ownerDocument.default)(container);
var win = (0, _ownerWindow.default)(doc);
/* istanbul ignore next */
if (!(0, _isWindow.default)(doc) && !isBody(container)) {
return container.scrollHeight > container.clientHeight;
} // Takes in account potential non zero margin on the body.
var style = win.getComputedStyle(doc.body);
var marginLeft = parseInt(style.getPropertyValue('margin-left'), 10);
var marginRight = parseInt(style.getPropertyValue('margin-right'), 10);
return marginLeft + doc.body.clientWidth + marginRight < win.innerWidth;
}
/***/ }),
/***/ "./node_modules/@material-ui/core/Modal/manageAriaHidden.js":
/*!******************************************************************!*\
!*** ./node_modules/@material-ui/core/Modal/manageAriaHidden.js ***!
\******************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.ariaHidden = ariaHidden;
exports.hideSiblings = hideSiblings;
exports.showSiblings = showSiblings;
var BLACKLIST = ['template', 'script', 'style'];
function isHidable(node) {
return node.nodeType === 1 && BLACKLIST.indexOf(node.tagName.toLowerCase()) === -1;
}
function siblings(container, mount, callback) {
mount = [].concat(mount); // eslint-disable-line no-param-reassign
[].forEach.call(container.children, function (node) {
if (mount.indexOf(node) === -1 && isHidable(node)) {
callback(node);
}
});
}
function ariaHidden(show, node) {
if (!node) {
return;
}
if (show) {
node.setAttribute('aria-hidden', 'true');
} else {
node.removeAttribute('aria-hidden');
}
}
function hideSiblings(container, mountNode) {
siblings(container, mountNode, function (node) {
return ariaHidden(true, node);
});
}
function showSiblings(container, mountNode) {
siblings(container, mountNode, function (node) {
return ariaHidden(false, node);
});
}
/***/ }),
/***/ "./node_modules/@material-ui/core/NativeSelect/NativeSelect.js":
/*!*********************************************************************!*\
!*** ./node_modules/@material-ui/core/NativeSelect/NativeSelect.js ***!
\*********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/builtin/interopRequireDefault */ "./node_modules/@babel/runtime/helpers/builtin/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.styles = void 0;
var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectSpread */ "./node_modules/@babel/runtime/helpers/builtin/objectSpread.js"));
var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/builtin/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/builtin/objectWithoutProperties.js"));
var _react = _interopRequireDefault(__webpack_require__(/*! react */ "./node_modules/react/index.js"));
var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js"));
var _NativeSelectInput = _interopRequireDefault(__webpack_require__(/*! ./NativeSelectInput */ "./node_modules/@material-ui/core/NativeSelect/NativeSelectInput.js"));
var _withStyles = _interopRequireDefault(__webpack_require__(/*! ../styles/withStyles */ "./node_modules/@material-ui/core/styles/withStyles.js"));
var _ArrowDropDown = _interopRequireDefault(__webpack_require__(/*! ../internal/svg-icons/ArrowDropDown */ "./node_modules/@material-ui/core/internal/svg-icons/ArrowDropDown.js"));
var _Input = _interopRequireDefault(__webpack_require__(/*! ../Input */ "./node_modules/@material-ui/core/Input/index.js"));
// @inheritedComponent Input
var styles = function styles(theme) {
return {
root: {
position: 'relative',
width: '100%'
},
select: {
'-moz-appearance': 'none',
// Reset
'-webkit-appearance': 'none',
// Reset
// When interacting quickly, the text can end up selected.
// Native select can't be selected either.
userSelect: 'none',
paddingRight: 32,
width: 'calc(100% - 32px)',
minWidth: 16,
// So it doesn't collapse.
cursor: 'pointer',
'&:focus': {
// Show that it's not an text input
background: theme.palette.type === 'light' ? 'rgba(0, 0, 0, 0.05)' : 'rgba(255, 255, 255, 0.05)',
borderRadius: 0 // Reset Chrome style
},
// Remove Firefox focus border
'&:-moz-focusring': {
color: 'transparent',
textShadow: '0 0 0 #000'
},
// Remove IE11 arrow
'&::-ms-expand': {
display: 'none'
},
'&$disabled': {
cursor: 'default'
}
},
selectMenu: {
width: 'auto',
// Fix Safari textOverflow
textOverflow: 'ellipsis',
whiteSpace: 'nowrap',
overflow: 'hidden',
minHeight: '1.1875em' // Reset (19px), match the native input line-height
},
disabled: {},
icon: {
// We use a position absolute over a flexbox in order to forward the pointer events
// to the input.
position: 'absolute',
right: 0,
top: 'calc(50% - 12px)',
// Center vertically
color: theme.palette.action.active,
'pointer-events': 'none' // Don't block pointer events on the select under the icon.
}
};
};
/**
* An alternative to `` with a much smaller dependency graph.
*/
exports.styles = styles;
function NativeSelect(props) {
var children = props.children,
classes = props.classes,
IconComponent = props.IconComponent,
input = props.input,
inputProps = props.inputProps,
other = (0, _objectWithoutProperties2.default)(props, ["children", "classes", "IconComponent", "input", "inputProps"]);
return _react.default.cloneElement(input, (0, _objectSpread2.default)({
// Most of the logic is implemented in `NativeSelectInput`.
// The `Select` component is a simple API wrapper to expose something better to play with.
inputComponent: _NativeSelectInput.default,
inputProps: (0, _objectSpread2.default)({
children: children,
classes: classes,
IconComponent: IconComponent,
type: undefined
}, inputProps, input ? input.props.inputProps : {})
}, other));
}
NativeSelect.propTypes = true ? {
/**
* The option elements to populate the select with.
* Can be some `