@lskjs/navbar
Version:
LSK ux subrepo: navbar
181 lines (152 loc) • 17.9 kB
JavaScript
"use strict";
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
var _classnames = _interopRequireDefault(require("classnames"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _react = _interopRequireWildcard(require("react"));
var _Dropdown = _interopRequireDefault(require("react-overlays/Dropdown"));
var _uncontrollable = require("uncontrollable");
var _useEventCallback = _interopRequireDefault(require("@restart/hooks/useEventCallback"));
var _DropdownItem = _interopRequireDefault(require("./DropdownItem"));
var _DropdownMenu = _interopRequireDefault(require("./DropdownMenu"));
var _DropdownToggle = _interopRequireDefault(require("./DropdownToggle"));
var _SelectableContext = _interopRequireDefault(require("./SelectableContext"));
var _ThemeProvider = require("./ThemeProvider");
var _createWithBsPrefix = _interopRequireDefault(require("./createWithBsPrefix"));
var propTypes = {
/** @default 'dropdown' */
bsPrefix: _propTypes["default"].string,
/**
* Determines the direction and location of the Menu in relation to it's Toggle.
*/
drop: _propTypes["default"].oneOf(['up', 'left', 'right', 'down']),
as: _propTypes["default"].elementType,
/**
* Align the menu to the right side of the Dropdown toggle
*/
alignRight: _propTypes["default"].bool,
/**
* Whether or not the Dropdown is visible.
*
* @controllable onToggle
*/
show: _propTypes["default"].bool,
/**
* Allow Dropdown to flip in case of an overlapping on the reference element. For more information refer to
* Popper.js's flip [docs](https://popper.js.org/popper-documentation.html#modifiers..flip.enabled).
*
*/
flip: _propTypes["default"].bool,
/**
* A callback fired when the Dropdown wishes to change visibility. Called with the requested
* `show` value, the DOM event, and the source that fired it: `'click'`,`'keydown'`,`'rootClose'`, or `'select'`.
*
* ```js
* function(
* isOpen: boolean,
* event: SyntheticEvent,
* metadata: {
* source: 'select' | 'click' | 'rootClose' | 'keydown'
* }
* ): void
* ```
*
* @controllable show
*/
onToggle: _propTypes["default"].func,
/**
* A callback fired when a menu item is selected.
*
* ```js
* (eventKey: any, event: Object) => any
* ```
*/
onSelect: _propTypes["default"].func,
/**
* Controls the focus behavior for when the Dropdown is opened. Set to
* `true` to always focus the first menu item, `keyboard` to focus only when
* navigating via the keyboard, or `false` to disable completely
*
* The Default behavior is `false` **unless** the Menu has a `role="menu"`
* where it will default to `keyboard` to match the recommended [ARIA Authoring practices](https://www.w3.org/TR/wai-aria-practices-1.1/#menubutton).
*/
focusFirstItemOnShow: _propTypes["default"].oneOf([false, true, 'keyboard']),
/** @private */
navbar: _propTypes["default"].bool
};
var defaultProps = {
navbar: false
};
var Dropdown = _react["default"].forwardRef(function (uncontrolledProps, ref) {
var _useUncontrolled = (0, _uncontrollable.useUncontrolled)(uncontrolledProps, {
show: 'onToggle'
}),
bsPrefix = _useUncontrolled.bsPrefix,
drop = _useUncontrolled.drop,
show = _useUncontrolled.show,
className = _useUncontrolled.className,
alignRight = _useUncontrolled.alignRight,
onSelect = _useUncontrolled.onSelect,
onToggle = _useUncontrolled.onToggle,
focusFirstItemOnShow = _useUncontrolled.focusFirstItemOnShow,
_useUncontrolled$as = _useUncontrolled.as,
Component = _useUncontrolled$as === void 0 ? 'div' : _useUncontrolled$as,
_4 = _useUncontrolled.navbar,
props = (0, _objectWithoutProperties2["default"])(_useUncontrolled, ["bsPrefix", "drop", "show", "className", "alignRight", "onSelect", "onToggle", "focusFirstItemOnShow", "as", "navbar"]);
var onSelectCtx = (0, _react.useContext)(_SelectableContext["default"]);
var prefix = (0, _ThemeProvider.useBootstrapPrefix)(bsPrefix, 'dropdown');
var handleToggle = (0, _useEventCallback["default"])(function (nextShow, event) {
var source = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : event.type;
if (event.currentTarget === document) source = 'rootClose';
onToggle(nextShow, event, {
source: source
});
});
var handleSelect = (0, _useEventCallback["default"])(function (key, event) {
if (onSelectCtx) onSelectCtx(key, event);
if (onSelect) onSelect(key, event);
handleToggle(false, event, 'select');
});
return /*#__PURE__*/_react["default"].createElement(_SelectableContext["default"].Provider, {
value: handleSelect
}, /*#__PURE__*/_react["default"].createElement(_Dropdown["default"], {
drop: drop,
show: show,
alignEnd: alignRight,
onToggle: handleToggle,
focusFirstItemOnShow: focusFirstItemOnShow,
itemSelector: ".".concat(prefix, "-item:not(.disabled):not(:disabled)")
}, function (_ref) {
var dropdownProps = _ref.props;
return /*#__PURE__*/_react["default"].createElement(Component, (0, _extends2["default"])({}, props, dropdownProps, {
ref: ref,
className: (0, _classnames["default"])(className, show && 'show', (!drop || drop === 'down') && prefix, drop === 'up' && 'dropup', drop === 'right' && 'dropright', drop === 'left' && 'dropleft')
}));
}));
});
Dropdown.displayName = 'Dropdown';
Dropdown.propTypes = propTypes;
Dropdown.defaultProps = defaultProps;
Dropdown.Toggle = _DropdownToggle["default"];
Dropdown.Menu = _DropdownMenu["default"];
Dropdown.Item = _DropdownItem["default"];
Dropdown.Header = (0, _createWithBsPrefix["default"])('dropdown-header', {
defaultProps: {
role: 'heading'
}
});
Dropdown.Divider = (0, _createWithBsPrefix["default"])('dropdown-divider', {
defaultProps: {
role: 'separator'
}
});
var _default = Dropdown;
exports["default"] = _default;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9Ecm9wZG93bi5qcyJdLCJuYW1lcyI6WyJwcm9wVHlwZXMiLCJic1ByZWZpeCIsIlByb3BUeXBlcyIsInN0cmluZyIsImRyb3AiLCJvbmVPZiIsImFzIiwiZWxlbWVudFR5cGUiLCJhbGlnblJpZ2h0IiwiYm9vbCIsInNob3ciLCJmbGlwIiwib25Ub2dnbGUiLCJmdW5jIiwib25TZWxlY3QiLCJmb2N1c0ZpcnN0SXRlbU9uU2hvdyIsIm5hdmJhciIsImRlZmF1bHRQcm9wcyIsIkRyb3Bkb3duIiwiUmVhY3QiLCJmb3J3YXJkUmVmIiwidW5jb250cm9sbGVkUHJvcHMiLCJyZWYiLCJjbGFzc05hbWUiLCJDb21wb25lbnQiLCJfNCIsInByb3BzIiwib25TZWxlY3RDdHgiLCJTZWxlY3RhYmxlQ29udGV4dCIsInByZWZpeCIsImhhbmRsZVRvZ2dsZSIsIm5leHRTaG93IiwiZXZlbnQiLCJzb3VyY2UiLCJ0eXBlIiwiY3VycmVudFRhcmdldCIsImRvY3VtZW50IiwiaGFuZGxlU2VsZWN0Iiwia2V5IiwiZHJvcGRvd25Qcm9wcyIsImRpc3BsYXlOYW1lIiwiVG9nZ2xlIiwiRHJvcGRvd25Ub2dnbGUiLCJNZW51IiwiRHJvcGRvd25NZW51IiwiSXRlbSIsIkRyb3Bkb3duSXRlbSIsIkhlYWRlciIsInJvbGUiLCJEaXZpZGVyIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQSxJQUFNQSxTQUFTLEdBQUc7QUFDaEI7QUFDQUMsRUFBQUEsUUFBUSxFQUFFQyxzQkFBVUMsTUFGSjs7QUFHaEI7OztBQUdBQyxFQUFBQSxJQUFJLEVBQUVGLHNCQUFVRyxLQUFWLENBQWdCLENBQUMsSUFBRCxFQUFPLE1BQVAsRUFBZSxPQUFmLEVBQXdCLE1BQXhCLENBQWhCLENBTlU7QUFRaEJDLEVBQUFBLEVBQUUsRUFBRUosc0JBQVVL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XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUNvbnRleHQgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgQmFzZURyb3Bkb3duIGZyb20gJ3JlYWN0LW92ZXJsYXlzL0Ryb3Bkb3duJztcbmltcG9ydCB7IHVzZVVuY29udHJvbGxlZCB9IGZyb20gJ3VuY29udHJvbGxhYmxlJztcbmltcG9ydCB1c2VFdmVudENhbGxiYWNrIGZyb20gJ0ByZXN0YXJ0L2hvb2tzL3VzZUV2ZW50Q2FsbGJhY2snO1xuaW1wb3J0IERyb3Bkb3duSXRlbSBmcm9tICcuL0Ryb3Bkb3duSXRlbSc7XG5pbXBvcnQgRHJvcGRvd25NZW51IGZyb20gJy4vRHJvcGRvd25NZW51JztcbmltcG9ydCBEcm9wZG93blRvZ2dsZSBmcm9tICcuL0Ryb3Bkb3duVG9nZ2xlJztcbmltcG9ydCBTZWxlY3RhYmxlQ29udGV4dCBmcm9tICcuL1NlbGVjdGFibGVDb250ZXh0JztcbmltcG9ydCB7IHVzZUJvb3RzdHJhcFByZWZpeCB9IGZyb20gJy4vVGhlbWVQcm92aWRlcic7XG5pbXBvcnQgY3JlYXRlV2l0aEJzUHJlZml4IGZyb20gJy4vY3JlYXRlV2l0aEJzUHJlZml4JztcblxuY29uc3QgcHJvcFR5cGVzID0ge1xuICAvKiogQGRlZmF1bHQgJ2Ryb3Bkb3duJyAqL1xuICBic1ByZWZpeDogUHJvcFR5cGVzLnN0cmluZyxcbiAgLyoqXG4gICAqIERldGVybWluZXMgdGhlIGRpcmVjdGlvbiBhbmQgbG9jYXRpb24gb2YgdGhlIE1lbnUgaW4gcmVsYXRpb24gdG8gaXQncyBUb2dnbGUuXG4gICAqL1xuICBkcm9wOiBQcm9wVHlwZXMub25lT2YoWyd1cCcsICdsZWZ0JywgJ3JpZ2h0JywgJ2Rvd24nXSksXG5cbiAgYXM6IFByb3BUeXBlcy5lbGVtZW50VHlwZSxcblxuICAvKipcbiAgICogQWxpZ24gdGhlIG1lbnUgdG8gdGhlIHJpZ2h0IHNpZGUgb2YgdGhlIERyb3Bkb3duIHRvZ2dsZVxuICAgKi9cbiAgYWxpZ25SaWdodDogUHJvcFR5cGVzLmJvb2wsXG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRoZSBEcm9wZG93biBpcyB2aXNpYmxlLlxuICAgKlxuICAgKiBAY29udHJvbGxhYmxlIG9uVG9nZ2xlXG4gICAqL1xuICBzaG93OiBQcm9wVHlwZXMuYm9vbCxcblxuICAvKipcbiAgICogQWxsb3cgRHJvcGRvd24gdG8gZmxpcCBpbiBjYXNlIG9mIGFuIG92ZXJsYXBwaW5nIG9uIHRoZSByZWZlcmVuY2UgZWxlbWVudC4gRm9yIG1vcmUgaW5mb3JtYXRpb24gcmVmZXIgdG9cbiAgICogUG9wcGVyLmpzJ3MgZmxpcCBbZG9jc10oaHR0cHM6Ly9wb3BwZXIuanMub3JnL3BvcHBlci1kb2N1bWVudGF0aW9uLmh0bWwjbW9kaWZpZXJzLi5mbGlwLmVuYWJsZWQpLlxuICAgKlxuICAgKi9cbiAgZmxpcDogUHJvcFR5cGVzLmJvb2wsXG5cbiAgLyoqXG4gICAqIEEgY2FsbGJhY2sgZmlyZWQgd2hlbiB0aGUgRHJvcGRvd24gd2lzaGVzIHRvIGNoYW5nZSB2aXNpYmlsaXR5LiBDYWxsZWQgd2l0aCB0aGUgcmVxdWVzdGVkXG4gICAqIGBzaG93YCB2YWx1ZSwgdGhlIERPTSBldmVudCwgYW5kIHRoZSBzb3VyY2UgdGhhdCBmaXJlZCBpdDogYCdjbGljaydgLGAna2V5ZG93bidgLGAncm9vdENsb3NlJ2AsIG9yIGAnc2VsZWN0J2AuXG4gICAqXG4gICAqIGBgYGpzXG4gICAqIGZ1bmN0aW9uKFxuICAgKiAgIGlzT3BlbjogYm9vbGVhbixcbiAgICogICBldmVudDogU3ludGhldGljRXZlbnQsXG4gICAqICAgbWV0YWRhdGE6IHtcbiAgICogICAgIHNvdXJjZTogJ3NlbGVjdCcgfCAnY2xpY2snIHwgJ3Jvb3RDbG9zZScgfCAna2V5ZG93bidcbiAgICogICB9XG4gICAqICk6IHZvaWRcbiAgICogYGBgXG4gICAqXG4gICAqIEBjb250cm9sbGFibGUgc2hvd1xuICAgKi9cbiAgb25Ub2dnbGU6IFByb3BUeXBlcy5mdW5jLFxuXG4gIC8qKlxuICAgKiBBIGNhbGxiYWNrIGZpcmVkIHdoZW4gYSBtZW51IGl0ZW0gaXMgc2VsZWN0ZWQuXG4gICAqXG4gICAqIGBgYGpzXG4gICAqIChldmVudEtleTogYW55LCBldmVudDogT2JqZWN0KSA9PiBhbnlcbiAgICogYGBgXG4gICAqL1xuICBvblNlbGVjdDogUHJvcFR5cGVzLmZ1bmMsXG5cbiAgLyoqXG4gICAqIENvbnRyb2xzIHRoZSBmb2N1cyBiZWhhdmlvciBmb3Igd2hlbiB0aGUgRHJvcGRvd24gaXMgb3BlbmVkLiBTZXQgdG9cbiAgICogYHRydWVgIHRvIGFsd2F5cyBmb2N1cyB0aGUgZmlyc3QgbWVudSBpdGVtLCBga2V5Ym9hcmRgIHRvIGZvY3VzIG9ubHkgd2hlblxuICAgKiBuYXZpZ2F0aW5nIHZpYSB0aGUga2V5Ym9hcmQsIG9yIGBmYWxzZWAgdG8gZGlzYWJsZSBjb21wbGV0ZWx5XG4gICAqXG4gICAqIFRoZSBEZWZhdWx0IGJlaGF2aW9yIGlzIGBmYWxzZWAgKip1bmxlc3MqKiB0aGUgTWVudSBoYXMgYSBgcm9sZT1cIm1lbnVcImBcbiAgICogd2hlcmUgaXQgd2lsbCBkZWZhdWx0IHRvIGBrZXlib2FyZGAgdG8gbWF0Y2ggdGhlIHJlY29tbWVuZGVkIFtBUklBIEF1dGhvcmluZyBwcmFjdGljZXNdKGh0dHBzOi8vd3d3LnczLm9yZy9UUi93YWktYXJpYS1wcmFjdGljZXMtMS4xLyNtZW51YnV0dG9uKS5cbiAgICovXG4gIGZvY3VzRmlyc3RJdGVtT25TaG93OiBQcm9wVHlwZXMub25lT2YoW2ZhbHNlLCB0cnVlLCAna2V5Ym9hcmQnXSksXG5cbiAgLyoqIEBwcml2YXRlICovXG4gIG5hdmJhcjogUHJvcFR5cGVzLmJvb2wsXG59O1xuXG5jb25zdCBkZWZhdWx0UHJvcHMgPSB7XG4gIG5hdmJhcjogZmFsc2UsXG59O1xuXG5jb25zdCBEcm9wZG93biA9IFJlYWN0LmZvcndhcmRSZWYoKHVuY29udHJvbGxlZFByb3BzLCByZWYpID0+IHtcbiAgY29uc3Qge1xuICAgIGJzUHJlZml4LFxuICAgIGRyb3AsXG4gICAgc2hvdyxcbiAgICBjbGFzc05hbWUsXG4gICAgYWxpZ25SaWdodCxcbiAgICBvblNlbGVjdCxcbiAgICBvblRvZ2dsZSxcbiAgICBmb2N1c0ZpcnN0SXRlbU9uU2hvdyxcbiAgICAvLyBOZWVkIHRvIGRlZmluZSB0aGUgZGVmYXVsdCBcImFzXCIgZHVyaW5nIHByb3AgZGVzdHJ1Y3R1cmluZyB0byBiZSBjb21wYXRpYmxlIHdpdGggc3R5bGVkLWNvbXBvbmVudHMgZ2l0aHViLmNvbS9yZWFjdC1ib290c3RyYXAvcmVhY3QtYm9vdHN0cmFwL2lzc3Vlcy8zNTk1XG4gICAgYXM6IENvbXBvbmVudCA9ICdkaXYnLFxuICAgIG5hdmJhcjogXzQsXG4gICAgLi4ucHJvcHNcbiAgfSA9IHVzZVVuY29udHJvbGxlZCh1bmNvbnRyb2xsZWRQcm9wcywgeyBzaG93OiAnb25Ub2dnbGUnIH0pO1xuXG4gIGNvbnN0IG9uU2VsZWN0Q3R4ID0gdXNlQ29udGV4dChTZWxlY3RhYmxlQ29udGV4dCk7XG4gIGNvbnN0IHByZWZpeCA9IHVzZUJvb3RzdHJhcFByZWZpeChic1ByZWZpeCwgJ2Ryb3Bkb3duJyk7XG5cbiAgY29uc3QgaGFuZGxlVG9nZ2xlID0gdXNlRXZlbnRDYWxsYmFjayhcbiAgICAobmV4dFNob3csIGV2ZW50LCBzb3VyY2UgPSBldmVudC50eXBlKSA9PiB7XG4gICAgICBpZiAoZXZlbnQuY3VycmVudFRhcmdldCA9PT0gZG9jdW1lbnQpIHNvdXJjZSA9ICdyb290Q2xvc2UnO1xuICAgICAgb25Ub2dnbGUobmV4dFNob3csIGV2ZW50LCB7IHNvdXJjZSB9KTtcbiAgICB9LFxuICApO1xuXG4gIGNvbnN0IGhhbmRsZVNlbGVjdCA9IHVzZUV2ZW50Q2FsbGJhY2soKGtleSwgZXZlbnQpID0+IHtcbiAgICBpZiAob25TZWxlY3RDdHgpIG9uU2VsZWN0Q3R4KGtleSwgZXZlbnQpO1xuICAgIGlmIChvblNlbGVjdCkgb25TZWxlY3Qoa2V5LCBldmVudCk7XG4gICAgaGFuZGxlVG9nZ2xlKGZhbHNlLCBldmVudCwgJ3NlbGVjdCcpO1xuICB9KTtcblxuICByZXR1cm4gKFxuICAgIDxTZWxlY3RhYmxlQ29udGV4dC5Qcm92aWRlciB2YWx1ZT17aGFuZGxlU2VsZWN0fT5cbiAgICAgIDxCYXNlRHJvcGRvd25cbiAgICAgICAgZHJvcD17ZHJvcH1cbiAgICAgICAgc2hvdz17c2hvd31cbiAgICAgICAgYWxpZ25FbmQ9e2FsaWduUmlnaHR9XG4gICAgICAgIG9uVG9nZ2xlPXtoYW5kbGVUb2dnbGV9XG4gICAgICAgIGZvY3VzRmlyc3RJdGVtT25TaG93PXtmb2N1c0ZpcnN0SXRlbU9uU2hvd31cbiAgICAgICAgaXRlbVNlbGVjdG9yPXtgLiR7cHJlZml4fS1pdGVtOm5vdCguZGlzYWJsZWQpOm5vdCg6ZGlzYWJsZWQpYH1cbiAgICAgID5cbiAgICAgICAgeyh7IHByb3BzOiBkcm9wZG93blByb3BzIH0pID0+IChcbiAgICAgICAgICA8Q29tcG9uZW50XG4gICAgICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgICAgICB7Li4uZHJvcGRvd25Qcm9wc31cbiAgICAgICAgICAgIHJlZj17cmVmfVxuICAgICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWVzKFxuICAgICAgICAgICAgICBjbGFzc05hbWUsXG4gICAgICAgICAgICAgIHNob3cgJiYgJ3Nob3cnLFxuICAgICAgICAgICAgICAoIWRyb3AgfHwgZHJvcCA9PT0gJ2Rvd24nKSAmJiBwcmVmaXgsXG4gICAgICAgICAgICAgIGRyb3AgPT09ICd1cCcgJiYgJ2Ryb3B1cCcsXG4gICAgICAgICAgICAgIGRyb3AgPT09ICdyaWdodCcgJiYgJ2Ryb3ByaWdodCcsXG4gICAgICAgICAgICAgIGRyb3AgPT09ICdsZWZ0JyAmJiAnZHJvcGxlZnQnLFxuICAgICAgICAgICAgKX1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgPC9CYXNlRHJvcGRvd24+XG4gICAgPC9TZWxlY3RhYmxlQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcbn0pO1xuXG5Ecm9wZG93bi5kaXNwbGF5TmFtZSA9ICdEcm9wZG93bic7XG5Ecm9wZG93bi5wcm9wVHlwZXMgPSBwcm9wVHlwZXM7XG5Ecm9wZG93bi5kZWZhdWx0UHJvcHMgPSBkZWZhdWx0UHJvcHM7XG5cbkRyb3Bkb3duLlRvZ2dsZSA9IERyb3Bkb3duVG9nZ2xlO1xuRHJvcGRvd24uTWVudSA9IERyb3Bkb3duTWVudTtcbkRyb3Bkb3duLkl0ZW0gPSBEcm9wZG93bkl0ZW07XG5cbkRyb3Bkb3duLkhlYWRlciA9IGNyZWF0ZVdpdGhCc1ByZWZpeCgnZHJvcGRvd24taGVhZGVyJywge1xuICBkZWZhdWx0UHJvcHM6IHsgcm9sZTogJ2hlYWRpbmcnIH0sXG59KTtcbkRyb3Bkb3duLkRpdmlkZXIgPSBjcmVhdGVXaXRoQnNQcmVmaXgoJ2Ryb3Bkb3duLWRpdmlkZXInLCB7XG4gIGRlZmF1bHRQcm9wczogeyByb2xlOiAnc2VwYXJhdG9yJyB9LFxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IERyb3Bkb3duO1xuIl19
//# sourceMappingURL=Dropdown.js.map