You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1 line
6.8 KiB

  1. {"ast":null,"code":"import _regeneratorRuntime from \"@babel/runtime/regenerator\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nvar __jsx = React.createElement;\nimport React from \"react\"; // @material-ui/core components\n\nimport { makeStyles } from \"@material-ui/core/styles\";\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\nimport Icon from \"@material-ui/core/Icon\"; // @material-ui/icons\n\nimport Email from \"@material-ui/icons/Email\";\nimport People from \"@material-ui/icons/People\"; // core components\n\nimport Header from \"components/Header/Header.js\";\nimport HeaderLinks from \"components/Header/HeaderLinks.js\";\nimport Footer from \"components/Footer/Footer.js\";\nimport GridContainer from \"components/Grid/GridContainer.js\";\nimport GridItem from \"components/Grid/GridItem.js\";\nimport Button from \"components/CustomButtons/Button.js\";\nimport Card from \"components/Card/Card.js\";\nimport CardBody from \"components/Card/CardBody.js\";\nimport CardHeader from \"components/Card/CardHeader.js\";\nimport CardFooter from \"components/Card/CardFooter.js\";\nimport CustomInput from \"components/CustomInput/CustomInput.js\";\nimport Grid from \"@material-ui/core/Grid\";\nimport styles from \"assets/jss/nextjs-material-kit/pages/loginPage.js\";\nimport image from \"assets/img/bgtbg.jpg\";\nimport Carousel from \"react-slick\";\nimport Collapse from \"@material-ui/core/Collapse\";\nimport Alert from \"@material-ui/lab/Alert\";\nimport IconButton from \"@material-ui/core/IconButton\";\nimport CloseIcon from \"@material-ui/icons/Close\";\nimport { useRouter } from \"next/router\";\nvar useStyles = makeStyles(styles);\nexport default function LoginPage(props) {\n var _React$useState = React.useState(\"cardHidden\"),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n cardAnimaton = _React$useState2[0],\n setCardAnimation = _React$useState2[1];\n\n var _React$useState3 = React.useState(\"\"),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n email = _React$useState4[0],\n setEmail = _React$useState4[1];\n\n var _React$useState5 = React.useState(\"\"),\n _React$useState6 = _slicedToArray(_React$useState5, 2),\n pass = _React$useState6[0],\n setPass = _React$useState6[1];\n\n var _React$useState7 = React.useState(false),\n _React$useState8 = _slicedToArray(_React$useState7, 2),\n open = _React$useState8[0],\n setOpen = _React$useState8[1];\n\n var _React$useState9 = React.useState(\"\"),\n _React$useState10 = _slicedToArray(_React$useState9, 2),\n error = _React$useState10[0],\n setError = _React$useState10[1];\n\n var router = useRouter();\n setTimeout(function () {\n setCardAnimation(\"\");\n }, 700);\n var classes = useStyles();\n\n var rest = _extends({}, props);\n\n var submitHandler = function submitHandler(event) {\n var res;\n return _regeneratorRuntime.async(function submitHandler$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n event.preventDefault();\n setEmail(event.target.email.value);\n setPass(event.target.pass.value);\n _context.next = 5;\n return _regeneratorRuntime.awrap(fetch(\"../api/auth/login\", {\n body: JSON.stringify({\n partner: \"yamaha\",\n email: email,\n pass: pass\n }),\n headers: {\n \"Content-Type\": \"application/json\"\n },\n method: \"POST\"\n }));\n\n case 5:\n res = _context.sent;\n\n if (!res.ok) {\n _context.next = 10;\n break;\n }\n\n router.push(\"/yamaha/home\");\n _context.next = 16;\n break;\n\n case 10:\n _context.t0 = setError;\n _context.next = 13;\n return _regeneratorRuntime.awrap(res.text());\n\n case 13:\n _context.t1 = _context.sent;\n (0, _context.t0)(_context.t1);\n setOpen(true);\n\n case 16:\n case \"end\":\n return _context.stop();\n }\n }\n }, null, null, null, Promise);\n };\n\n return __jsx(\"div\", null, __jsx(Collapse, {\n className: classes.collapsible,\n \"in\": open\n }, __jsx(Alert, {\n severity: \"error\",\n action: __jsx(IconButton, {\n \"aria-label\": \"close\",\n color: \"inherit\",\n size: \"small\",\n onClick: function onClick() {\n setOpen(false);\n }\n }, __jsx(CloseIcon, {\n fontSize: \"inherit\"\n }))\n }, error)), __jsx(\"div\", {\n className: classes.pageHeader,\n style: {\n backgroundImage: \"url(\" + image + \")\",\n backgroundSize: \"cover\",\n backgroundPosition: \"top center\"\n }\n }, __jsx(\"div\", {\n className: classes.container\n }, __jsx(Grid, {\n container: true\n }, __jsx(GridItem, {\n className: classes.marginAuto\n }, __jsx(Carousel, null, __jsx(Card, {\n className: classes[cardAnimaton]\n }, __jsx(\"form\", {\n onSubmit: submitHandler,\n className: classes.form\n }, __jsx(CardHeader, {\n color: \"info\",\n className: classes.cardHeader\n }, __jsx(\"h4\", null, __jsx(\"b\", null, \"Login\"))), __jsx(\"h4\", {\n className: classes.divider\n }, __jsx(\"b\", null, \"Selamat Datang di Halaman Login Thamrin Brothers\")), __jsx(CardBody, null, __jsx(CustomInput, {\n labelText: \"Email...\",\n id: \"email\",\n value: email,\n formControlProps: {\n fullWidth: true\n },\n inputProps: {\n type: \"email\",\n name: \"email\",\n onChange: function onChange(event) {\n return setEmail(event.target.value);\n },\n endAdornment: __jsx(InputAdornment, {\n position: \"end\"\n }, __jsx(Email, {\n className: classes.inputIconsColor\n }))\n }\n }), __jsx(CustomInput, {\n labelText: \"Password\",\n id: \"pass\",\n value: pass,\n formControlProps: {\n fullWidth: true\n },\n inputProps: {\n name: \"pass\",\n onChange: function onChange(event) {\n return setPass(event.target.value);\n },\n type: \"password\",\n endAdornment: __jsx(InputAdornment, {\n position: \"end\"\n }, __jsx(Icon, {\n className: classes.inputIconsColor\n }, \"lock_outline\")),\n autoComplete: \"off\"\n }\n })), __jsx(CardFooter, {\n className: classes.cardFooter\n }, __jsx(Button, {\n type: \"submit\",\n color: \"info\",\n size: \"lg\"\n }, \"Login\"), __jsx(Button, {\n href: \"/yamaha/register\",\n color: \"info\",\n size: \"lg\"\n }, \"Register\"))))))))));\n}","map":null,"metadata":{},"sourceType":"module"}