import _extends from "@babel/runtime-corejs2/helpers/esm/extends"; import _objectWithoutPropertiesLoose from "@babel/runtime-corejs2/helpers/esm/objectWithoutPropertiesLoose"; import _inheritsLoose from "@babel/runtime-corejs2/helpers/esm/inheritsLoose"; import _assertThisInitialized from "@babel/runtime-corejs2/helpers/esm/assertThisInitialized"; // TODO: Remove this pragma once we upgrade eslint-config-airbnb. /* eslint-disable react/no-multi-comp */ import classNames from 'classnames'; import React from 'react'; import PropTypes from 'prop-types'; import elementType from 'prop-types-extra/lib/elementType'; import uncontrollable from 'uncontrollable'; import Grid from './Grid'; import NavbarBrand from './NavbarBrand'; import NavbarCollapse from './NavbarCollapse'; import NavbarHeader from './NavbarHeader'; import NavbarToggle from './NavbarToggle'; import { bsClass as setBsClass, bsStyles, getClassSet, prefix, splitBsPropsAndOmit } from './utils/bootstrapUtils'; import { Style } from './utils/StyleConfig'; import createChainedFunction from './utils/createChainedFunction'; var propTypes = { /** * Create a fixed navbar along the top of the screen, that scrolls with the * page */ fixedTop: PropTypes.bool, /** * Create a fixed navbar along the bottom of the screen, that scrolls with * the page */ fixedBottom: PropTypes.bool, /** * Create a full-width navbar that scrolls away with the page */ staticTop: PropTypes.bool, /** * An alternative dark visual style for the Navbar */ inverse: PropTypes.bool, /** * Allow the Navbar to fluidly adjust to the page or container width, instead * of at the predefined screen breakpoints */ fluid: PropTypes.bool, /** * Set a custom element for this component. */ componentClass: elementType, /** * A callback fired when the `` body collapses or expands. Fired when * a `` is clicked and called with the new `expanded` * boolean value. * * @controllable expanded */ onToggle: PropTypes.func, /** * A callback fired when a descendant of a child `