Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

1 рядок
4.0 KiB

  1. {"ast":null,"code":"import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nvar __jsx = React.createElement;\nimport React from \"react\";\nimport Link from \"next/link\"; // nodejs library that concatenates classes\n\nimport classNames from \"classnames\"; // nodejs library to set properties for components\n\n// @material-ui/core components\nimport { makeStyles } from \"@material-ui/core/styles\";\nimport AppBar from \"@material-ui/core/AppBar\";\nimport Toolbar from \"@material-ui/core/Toolbar\";\nimport IconButton from \"@material-ui/core/IconButton\";\nimport Button from \"@material-ui/core/Button\";\nimport Hidden from \"@material-ui/core/Hidden\";\nimport Drawer from \"@material-ui/core/Drawer\"; // @material-ui/icons\n\nimport Menu from \"@material-ui/icons/Menu\"; // core components\n\nimport styles from \"assets/jss/nextjs-material-kit/components/headerStyle.js\";\nvar useStyles = makeStyles(styles);\nexport default function Header(props) {\n var _classNames;\n\n var classes = useStyles();\n\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n mobileOpen = _React$useState2[0],\n setMobileOpen = _React$useState2[1];\n\n React.useEffect(function () {\n if (props.changeColorOnScroll) {\n window.addEventListener(\"scroll\", headerColorChange);\n }\n\n return function cleanup() {\n if (props.changeColorOnScroll) {\n window.removeEventListener(\"scroll\", headerColorChange);\n }\n };\n });\n\n var handleDrawerToggle = function handleDrawerToggle() {\n setMobileOpen(!mobileOpen);\n };\n\n var headerColorChange = function headerColorChange() {\n var color = props.color,\n changeColorOnScroll = props.changeColorOnScroll;\n var windowsScrollTop = window.pageYOffset;\n\n if (windowsScrollTop > changeColorOnScroll.height) {\n document.body.getElementsByTagName(\"header\")[0].classList.remove(classes[color]);\n document.body.getElementsByTagName(\"header\")[0].classList.add(classes[changeColorOnScroll.color]);\n } else {\n document.body.getElementsByTagName(\"header\")[0].classList.add(classes[color]);\n document.body.getElementsByTagName(\"header\")[0].classList.remove(classes[changeColorOnScroll.color]);\n }\n };\n\n var color = props.color,\n rightLinks = props.rightLinks,\n leftLinks = props.leftLinks,\n brand = props.brand,\n fixed = props.fixed,\n absolute = props.absolute;\n var appBarClasses = classNames((_classNames = {}, _defineProperty(_classNames, classes.appBar, true), _defineProperty(_classNames, classes[color], color), _defineProperty(_classNames, classes.absolute, absolute), _defineProperty(_classNames, classes.fixed, fixed), _classNames));\n\n var brandComponent = __jsx(Link, {\n href: \"/components\",\n as: \"/components\"\n }, __jsx(Button, {\n className: classes.title\n }, brand));\n\n return __jsx(AppBar, {\n className: appBarClasses\n }, __jsx(Toolbar, {\n className: classes.container\n }, leftLinks !== undefined ? brandComponent : null, __jsx(\"div\", {\n className: classes.flex\n }, leftLinks !== undefined ? __jsx(Hidden, {\n smDown: true,\n implementation: \"css\"\n }, leftLinks) : brandComponent), __jsx(Hidden, {\n smDown: true,\n implementation: \"css\"\n }, rightLinks), __jsx(Hidden, {\n mdUp: true\n }, __jsx(IconButton, {\n color: \"inherit\",\n \"aria-label\": \"open drawer\",\n onClick: handleDrawerToggle\n }, __jsx(Menu, null)))), __jsx(Hidden, {\n mdUp: true,\n implementation: \"js\"\n }, __jsx(Drawer, {\n variant: \"temporary\",\n anchor: \"right\",\n open: mobileOpen,\n classes: {\n paper: classes.drawerPaper\n },\n onClose: handleDrawerToggle\n }, __jsx(\"div\", {\n className: classes.appResponsive\n }, leftLinks, rightLinks))));\n}\nHeader.defaultProp = {\n color: \"black\"\n};","map":null,"metadata":{},"sourceType":"module"}