{"ast":null,"code":"import React, { useEffect, useState } from 'react';\nimport { Button, Page, PageHeader, PageSidebar, PageHeaderTools, PageHeaderToolsItem, TextInput, Brand, Dropdown, DropdownToggle, DropdownItem, DropdownGroup, Divider, SkipToContent, Switch } from '@patternfly/react-core';\nimport SearchIcon from '@patternfly/react-icons/dist/esm/icons/search-icon';\nimport ExternalLinkAltIcon from '@patternfly/react-icons/dist/esm/icons/external-link-alt-icon';\nimport TimesIcon from '@patternfly/react-icons/dist/esm/icons/times-icon';\nimport GithubIcon from '@patternfly/react-icons/dist/esm/icons/github-icon';\nimport { SideNav, TopNav, GdprBanner } from '../../components';\nimport staticVersions from '../../versions.json';\nimport logo from '../logo.svg';\n\nvar HeaderTools = function HeaderTools(_ref) {\n  var versions = _ref.versions,\n      hasVersionSwitcher = _ref.hasVersionSwitcher,\n      hasSearch = _ref.hasSearch,\n      hasDarkThemeSwitcher = _ref.hasDarkThemeSwitcher,\n      pathPrefix = _ref.pathPrefix;\n  var initialVersion = staticVersions.Releases.find(function (release) {\n    return release.latest;\n  });\n\n  var _useState = useState(false),\n      isDropdownOpen = _useState[0],\n      setDropdownOpen = _useState[1];\n\n  var _useState2 = useState(false),\n      isSearchExpanded = _useState2[0],\n      setSearchExpanded = _useState2[1];\n\n  var latestVersion = versions.Releases.find(function (version) {\n    return version.latest;\n  });\n\n  var getDropdownItem = function getDropdownItem(version) {\n    return React.createElement(DropdownItem, {\n      key: version.name,\n      component: React.createElement(\"a\", {\n        href: version.latest ? '/v4' : \"/\" + version.name\n      }, \"Release \" + version.name)\n    });\n  };\n\n  var searchRef = React.useRef();\n  useEffect(function () {\n    var handleSearchHotkeys = function handleSearchHotkeys(event) {\n      var tagName = event.target.tagName.toLowerCase();\n      var isContentEditable = event.target.contentEditable === 'true';\n\n      if ((event.code === 'Slash' || event.code === 'KeyS') && tagName !== 'input' && tagName !== 'textarea' && !isContentEditable) {\n        setSearchExpanded(true);\n        setTimeout(function () {\n          return searchRef.current && searchRef.current.focus();\n        }, 0);\n      } else if (event.code === 'Escape' && event.target === searchRef.current) {\n        setSearchExpanded(false);\n      }\n    };\n\n    window.addEventListener('keyup', handleSearchHotkeys);\n    return function () {\n      return window.removeEventListener('keyup', handleSearchHotkeys);\n    };\n  }, []);\n  return React.createElement(PageHeaderTools, null, hasDarkThemeSwitcher && React.createElement(PageHeaderToolsItem, null, React.createElement(Switch, {\n    id: \"ws-theme-switch\",\n    label: \"Dark theme\",\n    defaultChecked: false,\n    onChange: function onChange() {\n      return document.querySelector('html').classList.toggle('pf-theme-dark');\n    }\n  })), hasSearch && React.createElement(PageHeaderToolsItem, {\n    id: \"ws-global-search-wrapper\",\n    className: isSearchExpanded ? '' : 'ws-hide-search-input'\n  }, React.createElement(TextInput, {\n    id: \"ws-global-search\",\n    ref: searchRef,\n    placeholder: \"Search\"\n  }), isSearchExpanded && React.createElement(SearchIcon, {\n    className: \"global-search-icon\"\n  })), hasSearch && React.createElement(Button, {\n    \"aria-label\": (isSearchExpanded ? 'Collapse' : 'Expand') + \" search input\",\n    variant: \"plain\",\n    className: \"ws-toggle-search\",\n    onClick: function onClick() {\n      setSearchExpanded(!isSearchExpanded);\n\n      if (!isSearchExpanded) {\n        setTimeout(function () {\n          return searchRef.current && searchRef.current.focus();\n        }, 0);\n      }\n    }\n  }, isSearchExpanded ? React.createElement(TimesIcon, null) : React.createElement(SearchIcon, {\n    className: \"global-search-icon\"\n  })), React.createElement(PageHeaderToolsItem, null, React.createElement(Button, {\n    component: \"a\",\n    variant: \"link\",\n    href: \"//github.com/patternfly\",\n    target: \"top\",\n    \"aria-label\": \"Link to PatternFly GitHub page\",\n    className: \"ws-github-pageheader pf-u-mr-sm\"\n  }, React.createElement(GithubIcon, null))), hasVersionSwitcher && React.createElement(PageHeaderToolsItem, null, React.createElement(Dropdown, {\n    className: \"ws-org-version-switcher\",\n    onSelect: function onSelect() {\n      return setDropdownOpen(!isDropdownOpen);\n    },\n    toggle: React.createElement(DropdownToggle, {\n      className: \"ws-org-version-toggle\" + (isDropdownOpen ? '-expanded' : ''),\n      onToggle: function onToggle() {\n        return setDropdownOpen(!isDropdownOpen);\n      }\n    }, \"Release \", initialVersion.name),\n    isOpen: isDropdownOpen,\n    dropdownItems: [React.createElement(DropdownGroup, {\n      key: \"latest\",\n      label: \"Latest\"\n    }, getDropdownItem(latestVersion)), React.createElement(DropdownGroup, {\n      key: \"Previous\",\n      label: \"Previous releases\"\n    }, Object.values(versions.Releases).filter(function (version) {\n      return !version.hidden && !version.latest;\n    }).slice(0, 3).map(getDropdownItem)), React.createElement(Divider, {\n      key: \"divider\",\n      className: \"ws-switcher-divider\"\n    }), React.createElement(DropdownItem, {\n      key: \"PatternFly 3\",\n      className: \"ws-patternfly-3\",\n      target: \"_blank\",\n      href: \"https://www.patternfly.org/v3\"\n    }, \"PatternFly 3\", React.createElement(ExternalLinkAltIcon, null))]\n  })));\n}; // https://github.com/algolia/autocomplete.js#global-options\n\n\nexport function attachDocSearch(algolia, inputSelector, timeout) {\n  if (window.docsearch) {\n    return window.docsearch(Object.assign({\n      inputSelector: inputSelector,\n      autocompleteOptions: {\n        hint: false,\n        appendTo: inputSelector + \"-wrapper\"\n      },\n      debug: process.env.NODE_ENV !== 'production'\n    }, algolia));\n  } else {\n    setTimeout(function () {\n      return attachDocSearch(algolia, inputSelector, timeout);\n    }, timeout);\n  }\n}\nexport var SideNavLayout = function SideNavLayout(_ref2) {\n  var children = _ref2.children,\n      groupedRoutes = _ref2.groupedRoutes,\n      navOpenProp = _ref2.navOpen;\n  var pathPrefix = process.env.pathPrefix;\n  var algolia = process.env.algolia;\n  var hasGdprBanner = process.env.hasGdprBanner;\n  var hasVersionSwitcher = process.env.hasVersionSwitcher;\n  var hasDarkThemeSwitcher = process.env.hasDarkThemeSwitcher;\n  var sideNavItems = process.env.sideNavItems;\n  var topNavItems = process.env.topNavItems;\n  var prnum = process.env.prnum;\n  var prurl = process.env.prurl;\n\n  var _useState3 = useState(Object.assign({}, staticVersions)),\n      versions = _useState3[0],\n      setVersions = _useState3[1];\n\n  useEffect(function () {\n    if (typeof window === 'undefined') {\n      return;\n    }\n\n    if (algolia) {\n      attachDocSearch(algolia, '#ws-global-search', 1000);\n    }\n\n    if (hasVersionSwitcher && window.fetch) {\n      fetch('/versions.json').then(function (res) {\n        if (res.ok) {\n          res.json().then(function (json) {\n            return setVersions(json);\n          });\n        }\n      });\n    }\n  }, []);\n  var SideBar = React.createElement(PageSidebar, {\n    className: \"ws-page-sidebar\",\n    theme: \"light\",\n    nav: React.createElement(SideNav, {\n      navItems: sideNavItems,\n      groupedRoutes: groupedRoutes\n    })\n  });\n  var Header = React.createElement(PageHeader, {\n    className: \"ws-page-header\",\n    headerTools: (algolia || hasVersionSwitcher) && React.createElement(HeaderTools, {\n      versions: versions,\n      hasSearch: algolia,\n      hasVersionSwitcher: hasVersionSwitcher,\n      hasDarkThemeSwitcher: hasDarkThemeSwitcher,\n      pathPrefix: pathPrefix\n    }),\n    logo: prnum ? \"PR #\" + prnum : React.createElement(Brand, {\n      src: logo,\n      alt: \"Patternfly Logo\"\n    }),\n    logoProps: {\n      href: prurl || pathPrefix || '/'\n    },\n    showNavToggle: true,\n    topNav: topNavItems.length > 0 && React.createElement(TopNav, {\n      navItems: topNavItems\n    })\n  });\n  return React.createElement(React.Fragment, null, React.createElement(\"div\", {\n    id: \"ws-page-banners\"\n  }, hasGdprBanner && React.createElement(GdprBanner, null)), React.createElement(Page, {\n    id: \"ws-page\",\n    mainContainerId: \"ws-page-main\",\n    header: Header,\n    sidebar: SideBar,\n    skipToContent: React.createElement(SkipToContent, {\n      href: \"#ws-page-main\"\n    }, \"Skip to content\"),\n    isManagedSidebar: true,\n    defaultManagedSidebarIsOpen: navOpenProp\n  }, children));\n};","map":{"version":3,"names":["React","useEffect","useState","Button","Page","PageHeader","PageSidebar","PageHeaderTools","PageHeaderToolsItem","TextInput","Brand","Dropdown","DropdownToggle","DropdownItem","DropdownGroup","Divider","SkipToContent","Switch","SearchIcon","ExternalLinkAltIcon","TimesIcon","GithubIcon","SideNav","TopNav","GdprBanner","staticVersions","logo","HeaderTools","versions","hasVersionSwitcher","hasSearch","hasDarkThemeSwitcher","pathPrefix","initialVersion","Releases","find","release","latest","isDropdownOpen","setDropdownOpen","isSearchExpanded","setSearchExpanded","latestVersion","version","getDropdownItem","name","searchRef","useRef","handleSearchHotkeys","event","tagName","target","toLowerCase","isContentEditable","contentEditable","code","setTimeout","current","focus","window","addEventListener","removeEventListener","document","querySelector","classList","toggle","Object","values","filter","hidden","slice","map","attachDocSearch","algolia","inputSelector","timeout","docsearch","autocompleteOptions","hint","appendTo","debug","process","env","NODE_ENV","SideNavLayout","children","groupedRoutes","navOpenProp","navOpen","hasGdprBanner","sideNavItems","topNavItems","prnum","prurl","setVersions","fetch","then","res","ok","json","SideBar","Header","href","length"],"sources":["/Users/ausulliv/repos/temp/patternfly-react/node_modules/@patternfly/documentation-framework/layouts/sideNavLayout/sideNavLayout.js"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport {\n  Button,\n  Page,\n  PageHeader,\n  PageSidebar,\n  PageHeaderTools,\n  PageHeaderToolsItem,\n  TextInput,\n  Brand,\n  Dropdown,\n  DropdownToggle,\n  DropdownItem,\n  DropdownGroup,\n  Divider,\n  SkipToContent,\n  Switch\n} from '@patternfly/react-core';\nimport SearchIcon from '@patternfly/react-icons/dist/esm/icons/search-icon';\nimport ExternalLinkAltIcon from '@patternfly/react-icons/dist/esm/icons/external-link-alt-icon';\nimport TimesIcon from '@patternfly/react-icons/dist/esm/icons/times-icon';\nimport GithubIcon from '@patternfly/react-icons/dist/esm/icons/github-icon';\nimport { SideNav, TopNav, GdprBanner } from '../../components';\nimport staticVersions from '../../versions.json';\nimport logo from '../logo.svg';\n\nconst HeaderTools = ({\n  versions,\n  hasVersionSwitcher,\n  hasSearch,\n  hasDarkThemeSwitcher,\n  pathPrefix\n}) => {\n  const initialVersion = staticVersions.Releases.find(release => release.latest);\n  const [isDropdownOpen, setDropdownOpen] = useState(false);\n  const [isSearchExpanded, setSearchExpanded] = useState(false);\n  const latestVersion = versions.Releases.find(version => version.latest);\n  const getDropdownItem = version => (\n    <DropdownItem\n      key={version.name}\n      component={\n        <a href={version.latest ? '/v4' : `/${version.name}`}>\n          {`Release ${version.name}`}\n        </a>\n      }\n    />\n  );\n  const searchRef = React.useRef();\n\n  useEffect(() => {\n    const handleSearchHotkeys = (event) => {\n      const tagName = event.target.tagName.toLowerCase();\n      const isContentEditable = event.target.contentEditable === 'true';\n      if (\n        (event.code === 'Slash' || event.code === 'KeyS') &&\n        tagName !== 'input' &&\n        tagName !== 'textarea' &&\n        !isContentEditable\n      ) {\n        setSearchExpanded(true);\n        setTimeout(() => searchRef.current && searchRef.current.focus(), 0);\n      } else if (event.code === 'Escape' && event.target === searchRef.current) {\n        setSearchExpanded(false);\n      }\n    };\n    window.addEventListener('keyup', handleSearchHotkeys);\n    return () => window.removeEventListener('keyup', handleSearchHotkeys);\n  }, []);\n\n  return (\n    <PageHeaderTools>\n      {hasDarkThemeSwitcher && (\n        <PageHeaderToolsItem>\n          <Switch id=\"ws-theme-switch\" label=\"Dark theme\" defaultChecked={false} onChange={() => \n          document.querySelector('html').classList.toggle('pf-theme-dark')} />\n        </PageHeaderToolsItem>\n      )}\n      {hasSearch && (\n        <PageHeaderToolsItem id=\"ws-global-search-wrapper\" className={isSearchExpanded ? '' : 'ws-hide-search-input'}>\n          <TextInput id=\"ws-global-search\" ref={searchRef} placeholder=\"Search\" />\n          {isSearchExpanded && <SearchIcon className=\"global-search-icon\" />}\n        </PageHeaderToolsItem>\n      )}\n      {hasSearch && (\n        <Button\n        aria-label={`${isSearchExpanded ? 'Collapse' : 'Expand'} search input`}\n        variant=\"plain\"\n        className=\"ws-toggle-search\"\n        onClick={() => {\n            setSearchExpanded(!isSearchExpanded);\n            if (!isSearchExpanded) {\n              setTimeout(() => searchRef.current && searchRef.current.focus(), 0);\n            }\n          }}\n          >\n          {isSearchExpanded\n            ? <TimesIcon />\n            : <SearchIcon className=\"global-search-icon\" />\n          }\n        </Button>\n      )}\n      <PageHeaderToolsItem>\n        <Button\n          component=\"a\"\n          variant=\"link\"\n          href=\"//github.com/patternfly\"\n          target=\"top\"\n          aria-label=\"Link to PatternFly GitHub page\"\n          className=\"ws-github-pageheader pf-u-mr-sm\"\n        >\n          <GithubIcon />\n        </Button>\n      </PageHeaderToolsItem>\n      {hasVersionSwitcher && (\n        <PageHeaderToolsItem>\n          <Dropdown\n            className=\"ws-org-version-switcher\"\n            onSelect={() => setDropdownOpen(!isDropdownOpen)}\n            toggle={(\n              <DropdownToggle\n                className={`ws-org-version-toggle${isDropdownOpen ? '-expanded': ''}`}\n                onToggle={() => setDropdownOpen(!isDropdownOpen)}\n              >\n                Release {initialVersion.name}\n              </DropdownToggle>\n            )}\n            isOpen={isDropdownOpen}\n            dropdownItems={[\n              <DropdownGroup key=\"latest\" label=\"Latest\">\n                {getDropdownItem(latestVersion)}\n              </DropdownGroup>,\n              <DropdownGroup key=\"Previous\" label=\"Previous releases\">\n                {Object.values(versions.Releases)\n                  .filter(version => !version.hidden && !version.latest)\n                  .slice(0,3)\n                  .map(getDropdownItem)}\n              </DropdownGroup>,\n              <Divider key=\"divider\" className=\"ws-switcher-divider\"/>,\n              <DropdownItem\n                key=\"PatternFly 3\"\n                className=\"ws-patternfly-3\"\n                target=\"_blank\"\n                href=\"https://www.patternfly.org/v3\"\n              >\n                PatternFly 3\n                <ExternalLinkAltIcon />\n              </DropdownItem>\n            ]}\n          />\n        </PageHeaderToolsItem>\n      )}\n    </PageHeaderTools>\n  );\n}\n\n// https://github.com/algolia/autocomplete.js#global-options\nexport function attachDocSearch(algolia, inputSelector, timeout) {\n  if (window.docsearch) {\n    return window.docsearch({\n      inputSelector,\n      autocompleteOptions: {\n        hint: false,\n        appendTo: `${inputSelector}-wrapper`,\n      },\n      debug: process.env.NODE_ENV !== 'production',\n      ...algolia\n    });\n  }\n  else {\n    setTimeout(() => attachDocSearch(algolia, inputSelector, timeout), timeout);\n  }\n}\n\nexport const SideNavLayout = ({ children, groupedRoutes, navOpen: navOpenProp }) => {\n  const pathPrefix = process.env.pathPrefix;\n  const algolia = process.env.algolia;\n  const hasGdprBanner = process.env.hasGdprBanner;\n  const hasVersionSwitcher = process.env.hasVersionSwitcher;\n  const hasDarkThemeSwitcher = process.env.hasDarkThemeSwitcher;\n  const sideNavItems = process.env.sideNavItems;\n  const topNavItems = process.env.topNavItems;\n  const prnum = process.env.prnum;\n  const prurl = process.env.prurl;\n\n  const [versions, setVersions] = useState({ ...staticVersions });\n\n  useEffect(() => {\n    if (typeof window === 'undefined') {\n      return;\n    }\n    if (algolia) {\n      attachDocSearch(algolia, '#ws-global-search', 1000);\n    }\n    if (hasVersionSwitcher && window.fetch) {\n      fetch('/versions.json').then(res => {\n        if (res.ok) {\n          res.json().then(json => setVersions(json));\n        }\n      });\n    }\n  }, []);\n\n  const SideBar = (\n    <PageSidebar\n      className=\"ws-page-sidebar\"\n      theme=\"light\"\n      nav={<SideNav navItems={sideNavItems} groupedRoutes={groupedRoutes} />}\n    />\n  );\n\n  const Header = (\n    <PageHeader\n      className=\"ws-page-header\"\n      headerTools={(algolia || hasVersionSwitcher) && <HeaderTools\n        versions={versions}\n        hasSearch={algolia}\n        hasVersionSwitcher={hasVersionSwitcher}\n        hasDarkThemeSwitcher={hasDarkThemeSwitcher}\n        pathPrefix={pathPrefix} />}\n      logo={prnum ? `PR #${prnum}` : <Brand src={logo} alt=\"Patternfly Logo\" />}\n      logoProps={{ href: prurl || pathPrefix || '/' }}\n      showNavToggle\n      topNav={topNavItems.length > 0 && <TopNav navItems={topNavItems} />}\n    />\n  );\n\n  return (\n    <React.Fragment>\n      <div id=\"ws-page-banners\">\n        {hasGdprBanner && <GdprBanner />}\n      </div>\n      <Page\n        id=\"ws-page\"\n        mainContainerId=\"ws-page-main\"\n        header={Header}\n        sidebar={SideBar}\n        skipToContent={<SkipToContent href=\"#ws-page-main\">Skip to content</SkipToContent>}\n        isManagedSidebar\n        defaultManagedSidebarIsOpen={navOpenProp}\n      >\n        {children}\n      </Page>\n    </React.Fragment>\n  );\n}\n"],"mappings":"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"},"metadata":{},"sourceType":"module"}