Socket
Socket
Sign inDemoInstall

ak-dropdown-menu

Package Overview
Dependencies
35
Maintainers
1
Versions
19
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 1.5.0 to 1.6.0

14

CHANGELOG.md

@@ -1,6 +0,16 @@

<a name="1.5.0"></a>
# 1.5.0 (2016-12-29)
<a name="1.6.0"></a>
# 1.6.0 (2016-12-30)
<a name="ak-dropdown-menu@1.6.0"></a>
# ak-dropdown-menu@1.6.0 (2016-12-30)
### Features
* **component:** export smart and dumb version of the dropdown menu component ([68136d7](https://bitbucket.org/atlassian/atlaskit/commits/68136d7))
<a name="ak-dropdown-menu@1.5.0"></a>

@@ -7,0 +17,0 @@ # ak-dropdown-menu@1.5.0 (2016-12-29)

151

dist/bundle-cjs.js

@@ -80,6 +80,4 @@ module.exports = /******/

value: !0
});
var _toConsumableArray2 = __webpack_require__(2), _toConsumableArray3 = _interopRequireDefault(_toConsumableArray2), _getPrototypeOf = __webpack_require__(3), _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf), _classCallCheck2 = __webpack_require__(4), _classCallCheck3 = _interopRequireDefault(_classCallCheck2), _createClass2 = __webpack_require__(5), _createClass3 = _interopRequireDefault(_createClass2), _possibleConstructorReturn2 = __webpack_require__(6), _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2), _inherits2 = __webpack_require__(7), _inherits3 = _interopRequireDefault(_inherits2), _react = __webpack_require__(8), _react2 = _interopRequireDefault(_react), _akDroplist = __webpack_require__(9), _akDroplist2 = _interopRequireDefault(_akDroplist), _akButton = __webpack_require__(10), _akButton2 = _interopRequireDefault(_akButton), _expand = __webpack_require__(11), _expand2 = _interopRequireDefault(_expand), Icon = _react2.default.createElement(_expand2.default, {
label: "trigger button"
}), DropdownMenu = function(_PureComponent) {
}), exports.StatelessDropdownMenu = void 0;
var _toConsumableArray2 = __webpack_require__(2), _toConsumableArray3 = _interopRequireDefault(_toConsumableArray2), _getPrototypeOf = __webpack_require__(3), _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf), _classCallCheck2 = __webpack_require__(4), _classCallCheck3 = _interopRequireDefault(_classCallCheck2), _createClass2 = __webpack_require__(5), _createClass3 = _interopRequireDefault(_createClass2), _possibleConstructorReturn2 = __webpack_require__(6), _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2), _inherits2 = __webpack_require__(7), _inherits3 = _interopRequireDefault(_inherits2), _react = __webpack_require__(8), _react2 = _interopRequireDefault(_react), _StatelessMenu = __webpack_require__(9), _StatelessMenu2 = _interopRequireDefault(_StatelessMenu), DropdownMenu = function(_PureComponent) {
function DropdownMenu() {

@@ -139,3 +137,3 @@ var _ref, _temp, _this, _ret;

var _this2 = _this, props = _this2.props, state = _this2.state;
return _react2.default.createElement(_akDroplist2.default, {
return _react2.default.createElement(_StatelessMenu2.default, {
position: props.position,

@@ -146,9 +144,6 @@ appearance: props.appearance,

onOpenChange: _this.handleOpenChange,
isTriggerNotTabbable: "button" === props.triggerType || props.isTriggerNotTabbable,
listContext: "menu",
isTriggerNotTabbable: props.isTriggerNotTabbable,
triggerType: props.triggerType,
items: state.items
}, "button" === props.triggerType ? _react2.default.createElement(_akButton2.default, {
isSelected: state.isOpen,
iconAfter: Icon
}, props.children) : props.children);
}, props.children);
}, _ret = _temp, (0, _possibleConstructorReturn3.default)(_this, _ret);

@@ -166,73 +161,22 @@ }

DropdownMenu.propTypes = {
/**
* @description Controls the appearance of the dropdown. Available types: 'default', 'tall'.
* Default dropdown has scroll after its height exceeds the pre-defined amount. Tall dropdown
* has no restrictions.
* @memberof DropdownMenu
* @default default
*/
appearance: _react.PropTypes.oneOf([ "default", "tall" ]),
/**
* @description Position of the menu. See the documentation of ak-layer for more details.
* @memberof DropdownMenu
* @default bottom left
*/
position: _react.PropTypes.string,
/**
* @description Types of the menu's built-in trigger. Available types: 'default', 'button'.
* @memberof DropdownMenu
* @default default
*/
triggerType: _react.PropTypes.oneOf([ "default", "button" ]),
/**
* @description Controls whether trigger is tabbable. Set this to true when you use interactive
* elements inside trigger (links, buttons, inputs)
* @memberof DropdownMenu
* @default false
*/
children: _react.PropTypes.node,
defaultOpen: _react.PropTypes.bool,
isTriggerNotTabbable: _react.PropTypes.bool,
/**
* @description List of menu items. Should be an array of groups (see the documentation for
* ak-droplist-group for available props). Every group should contain array of items
* (see the documentation for ak-droplist-item for available props).
* @memberof DropdownMenu
* @example @js [
* {
* heading: 'Title of a group',
* items: [
* { content: 'First item in the group' },
* { content: 'Second item in the group' }
* ]
* }
* ]
*/
items: _react.PropTypes.array.isRequired,
// eslint-disable-line react/forbid-prop-types
/**
* @description Whether the dropdown should be open by default
* @memberof DropdownMenu
* @default []
*/
defaultOpen: _react.PropTypes.bool,
/**
* @description Handler function to be called when the item is activated.
* @memberof DropdownMenu
*/
onItemActivated: _react.PropTypes.func,
/**
* @description Handler function to be called when the menu is opened/closed.
* @memberof DropdownMenu
*/
onOpenChange: _react.PropTypes.func,
children: _react.PropTypes.node
position: _react.PropTypes.string,
triggerType: _react.PropTypes.oneOf([ "default", "button" ])
}, DropdownMenu.defaultProps = {
appearance: "default",
position: "bottom left",
triggerType: "default",
items: [],
defaultOpen: !1,
isTriggerNotTabbable: !1,
items: [],
onItemActivated: function() {},
onOpenChange: function() {}
}, exports.default = DropdownMenu;
onOpenChange: function() {},
position: "bottom left",
triggerType: "default"
}, exports.default = DropdownMenu, exports.StatelessDropdownMenu = _StatelessMenu2.default;
}, /* 2 */

@@ -268,9 +212,70 @@ /***/

/***/
function(module, exports, __webpack_require__) {
"use strict";
function _interopRequireDefault(obj) {
return obj && obj.__esModule ? obj : {
default: obj
};
}
Object.defineProperty(exports, "__esModule", {
value: !0
});
var _getPrototypeOf = __webpack_require__(3), _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf), _classCallCheck2 = __webpack_require__(4), _classCallCheck3 = _interopRequireDefault(_classCallCheck2), _possibleConstructorReturn2 = __webpack_require__(6), _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2), _inherits2 = __webpack_require__(7), _inherits3 = _interopRequireDefault(_inherits2), _react = __webpack_require__(8), _react2 = _interopRequireDefault(_react), _akDroplist = __webpack_require__(10), _akDroplist2 = _interopRequireDefault(_akDroplist), _akButton = __webpack_require__(11), _akButton2 = _interopRequireDefault(_akButton), _expand = __webpack_require__(12), _expand2 = _interopRequireDefault(_expand), Icon = _react2.default.createElement(_expand2.default, {
label: ""
}), StatelessDropdownMenu = function(_PureComponent) {
function StatelessDropdownMenu() {
var _ref, _temp, _this, _ret;
(0, _classCallCheck3.default)(this, StatelessDropdownMenu);
for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key];
return _temp = _this = (0, _possibleConstructorReturn3.default)(this, (_ref = StatelessDropdownMenu.__proto__ || (0,
_getPrototypeOf2.default)(StatelessDropdownMenu)).call.apply(_ref, [ this ].concat(args))),
_this.render = function() {
var _this2 = _this, props = _this2.props;
return _react2.default.createElement(_akDroplist2.default, {
position: props.position,
appearance: props.appearance,
isOpen: props.isOpen,
onItemActivated: props.onItemActivated,
onOpenChange: props.onOpenChange,
isTriggerNotTabbable: "button" === props.triggerType || props.isTriggerNotTabbable,
listContext: "menu",
items: props.items
}, "button" === props.triggerType ? _react2.default.createElement(_akButton2.default, {
isSelected: props.isOpen,
iconAfter: Icon
}, props.children) : props.children);
}, _ret = _temp, (0, _possibleConstructorReturn3.default)(_this, _ret);
}
return (0, _inherits3.default)(StatelessDropdownMenu, _PureComponent), StatelessDropdownMenu;
}(_react.PureComponent);
StatelessDropdownMenu.propTypes = {
appearance: _react.PropTypes.oneOf([ "default", "tall" ]),
children: _react.PropTypes.node,
isOpen: _react.PropTypes.bool,
isTriggerNotTabbable: _react.PropTypes.bool,
items: _react.PropTypes.array.isRequired,
// eslint-disable-line react/forbid-prop-types
onItemActivated: _react.PropTypes.func,
onOpenChange: _react.PropTypes.func,
position: _react.PropTypes.string,
triggerType: _react.PropTypes.oneOf([ "default", "button" ])
}, StatelessDropdownMenu.defaultProps = {
appearance: "default",
isOpen: !1,
isTriggerNotTabbable: !1,
items: [],
onItemActivated: function() {},
onOpenChange: function() {},
position: "bottom left",
triggerType: "default"
}, exports.default = StatelessDropdownMenu;
}, /* 10 */
/***/
function(module, exports) {
module.exports = require("ak-droplist");
}, /* 10 */
}, /* 11 */
/***/
function(module, exports) {
module.exports = require("ak-button");
}, /* 11 */
}, /* 12 */
/***/

@@ -277,0 +282,0 @@ function(module, exports) {

@@ -1,1 +0,1 @@

module.exports=function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={exports:{},id:r,loaded:!1};return e[r].call(o.exports,o,o.exports,t),o.loaded=!0,o.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){e.exports=n(1)},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var o=n(2),i=r(o),a=n(3),s=r(a),p=n(4),u=r(p),c=n(5),l=r(c),f=n(6),d=r(f),m=n(7),b=r(m),h=n(8),g=r(h),y=n(9),O=r(y),T=n(10),x=r(T),v=n(11),C=r(v),k=g.default.createElement(C.default,{label:"trigger button"}),A=function(e){function t(){var e,n,r,o;(0,u.default)(this,t);for(var a=arguments.length,p=Array(a),c=0;c<a;c++)p[c]=arguments[c];return n=r=(0,d.default)(this,(e=t.__proto__||(0,s.default)(t)).call.apply(e,[this].concat(p))),r.state={isOpen:r.props.defaultOpen,items:[].concat((0,i.default)(r.props.items))},r.findActivatedGroup=function(e){return r.state.items.filter(function(t){return t.items.indexOf(e)>-1})[0]},r.handleItemActivation=function(e){var t=e.item,n=r.findActivatedGroup(t),o=[].concat((0,i.default)(r.state.items));switch(t.type){case"checkbox":t.isChecked=!t.isChecked,r.props.onItemActivated({item:t}),r.setState({items:o});break;case"radio":n.items.forEach(function(e){e===t?e.isChecked=!0:e.isChecked=!1}),r.props.onItemActivated({item:t}),r.setState({items:o});break;case"link":default:r.props.onItemActivated({item:t}),t.href||r.close()}},r.handleOpenChange=function(e){r.setState({isOpen:e.isOpen}),r.props.onOpenChange(e)},r.close=function(){r.setState({isOpen:!1}),r.props.onOpenChange({isOpen:!1})},r.render=function(){var e=r,t=e.props,n=e.state;return g.default.createElement(O.default,{position:t.position,appearance:t.appearance,isOpen:n.isOpen,onItemActivated:r.handleItemActivation,onOpenChange:r.handleOpenChange,isTriggerNotTabbable:"button"===t.triggerType||t.isTriggerNotTabbable,listContext:"menu",items:n.items},"button"===t.triggerType?g.default.createElement(x.default,{isSelected:n.isOpen,iconAfter:k},t.children):t.children)},o=n,(0,d.default)(r,o)}return(0,b.default)(t,e),(0,l.default)(t,[{key:"componentWillReceiveProps",value:function(e){e.items!==this.state.items&&this.setState({items:[].concat((0,i.default)(e.items))})}}]),t}(h.PureComponent);A.propTypes={appearance:h.PropTypes.oneOf(["default","tall"]),position:h.PropTypes.string,triggerType:h.PropTypes.oneOf(["default","button"]),isTriggerNotTabbable:h.PropTypes.bool,items:h.PropTypes.array.isRequired,defaultOpen:h.PropTypes.bool,onItemActivated:h.PropTypes.func,onOpenChange:h.PropTypes.func,children:h.PropTypes.node},A.defaultProps={appearance:"default",position:"bottom left",triggerType:"default",items:[],defaultOpen:!1,isTriggerNotTabbable:!1,onItemActivated:function(){},onOpenChange:function(){}},t.default=A},function(e,t){e.exports=require("babel-runtime/helpers/toConsumableArray")},function(e,t){e.exports=require("babel-runtime/core-js/object/get-prototype-of")},function(e,t){e.exports=require("babel-runtime/helpers/classCallCheck")},function(e,t){e.exports=require("babel-runtime/helpers/createClass")},function(e,t){e.exports=require("babel-runtime/helpers/possibleConstructorReturn")},function(e,t){e.exports=require("babel-runtime/helpers/inherits")},function(e,t){e.exports=require("react")},function(e,t){e.exports=require("ak-droplist")},function(e,t){e.exports=require("ak-button")},function(e,t){e.exports=require("ak-icon/glyph/expand")}]);
module.exports=function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={exports:{},id:r,loaded:!1};return e[r].call(o.exports,o,o.exports,t),o.loaded=!0,o.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){e.exports=n(1)},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.StatelessDropdownMenu=void 0;var o=n(2),i=r(o),a=n(3),p=r(a),s=n(4),u=r(s),l=n(5),c=r(l),f=n(6),d=r(f),b=n(7),m=r(b),g=n(8),h=r(g),T=n(9),y=r(T),O=function(e){function t(){var e,n,r,o;(0,u.default)(this,t);for(var a=arguments.length,s=Array(a),l=0;l<a;l++)s[l]=arguments[l];return n=r=(0,d.default)(this,(e=t.__proto__||(0,p.default)(t)).call.apply(e,[this].concat(s))),r.state={isOpen:r.props.defaultOpen,items:[].concat((0,i.default)(r.props.items))},r.findActivatedGroup=function(e){return r.state.items.filter(function(t){return t.items.indexOf(e)>-1})[0]},r.handleItemActivation=function(e){var t=e.item,n=r.findActivatedGroup(t),o=[].concat((0,i.default)(r.state.items));switch(t.type){case"checkbox":t.isChecked=!t.isChecked,r.props.onItemActivated({item:t}),r.setState({items:o});break;case"radio":n.items.forEach(function(e){e===t?e.isChecked=!0:e.isChecked=!1}),r.props.onItemActivated({item:t}),r.setState({items:o});break;case"link":default:r.props.onItemActivated({item:t}),t.href||r.close()}},r.handleOpenChange=function(e){r.setState({isOpen:e.isOpen}),r.props.onOpenChange(e)},r.close=function(){r.setState({isOpen:!1}),r.props.onOpenChange({isOpen:!1})},r.render=function(){var e=r,t=e.props,n=e.state;return h.default.createElement(y.default,{position:t.position,appearance:t.appearance,isOpen:n.isOpen,onItemActivated:r.handleItemActivation,onOpenChange:r.handleOpenChange,isTriggerNotTabbable:t.isTriggerNotTabbable,triggerType:t.triggerType,items:n.items},t.children)},o=n,(0,d.default)(r,o)}return(0,m.default)(t,e),(0,c.default)(t,[{key:"componentWillReceiveProps",value:function(e){e.items!==this.state.items&&this.setState({items:[].concat((0,i.default)(e.items))})}}]),t}(g.PureComponent);O.propTypes={appearance:g.PropTypes.oneOf(["default","tall"]),children:g.PropTypes.node,defaultOpen:g.PropTypes.bool,isTriggerNotTabbable:g.PropTypes.bool,items:g.PropTypes.array.isRequired,onItemActivated:g.PropTypes.func,onOpenChange:g.PropTypes.func,position:g.PropTypes.string,triggerType:g.PropTypes.oneOf(["default","button"])},O.defaultProps={appearance:"default",defaultOpen:!1,isTriggerNotTabbable:!1,items:[],onItemActivated:function(){},onOpenChange:function(){},position:"bottom left",triggerType:"default"},t.default=O,t.StatelessDropdownMenu=y.default},function(e,t){e.exports=require("babel-runtime/helpers/toConsumableArray")},function(e,t){e.exports=require("babel-runtime/core-js/object/get-prototype-of")},function(e,t){e.exports=require("babel-runtime/helpers/classCallCheck")},function(e,t){e.exports=require("babel-runtime/helpers/createClass")},function(e,t){e.exports=require("babel-runtime/helpers/possibleConstructorReturn")},function(e,t){e.exports=require("babel-runtime/helpers/inherits")},function(e,t){e.exports=require("react")},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var o=n(3),i=r(o),a=n(4),p=r(a),s=n(6),u=r(s),l=n(7),c=r(l),f=n(8),d=r(f),b=n(10),m=r(b),g=n(11),h=r(g),T=n(12),y=r(T),O=d.default.createElement(y.default,{label:""}),v=function(e){function t(){var e,n,r,o;(0,p.default)(this,t);for(var a=arguments.length,s=Array(a),l=0;l<a;l++)s[l]=arguments[l];return n=r=(0,u.default)(this,(e=t.__proto__||(0,i.default)(t)).call.apply(e,[this].concat(s))),r.render=function(){var e=r,t=e.props;return d.default.createElement(m.default,{position:t.position,appearance:t.appearance,isOpen:t.isOpen,onItemActivated:t.onItemActivated,onOpenChange:t.onOpenChange,isTriggerNotTabbable:"button"===t.triggerType||t.isTriggerNotTabbable,listContext:"menu",items:t.items},"button"===t.triggerType?d.default.createElement(h.default,{isSelected:t.isOpen,iconAfter:O},t.children):t.children)},o=n,(0,u.default)(r,o)}return(0,c.default)(t,e),t}(f.PureComponent);v.propTypes={appearance:f.PropTypes.oneOf(["default","tall"]),children:f.PropTypes.node,isOpen:f.PropTypes.bool,isTriggerNotTabbable:f.PropTypes.bool,items:f.PropTypes.array.isRequired,onItemActivated:f.PropTypes.func,onOpenChange:f.PropTypes.func,position:f.PropTypes.string,triggerType:f.PropTypes.oneOf(["default","button"])},v.defaultProps={appearance:"default",isOpen:!1,isTriggerNotTabbable:!1,items:[],onItemActivated:function(){},onOpenChange:function(){},position:"bottom left",triggerType:"default"},t.default=v},function(e,t){e.exports=require("ak-droplist")},function(e,t){e.exports=require("ak-button")},function(e,t){e.exports=require("ak-icon/glyph/expand")}]);
!function(root, factory) {
"object" == typeof exports && "object" == typeof module ? module.exports = factory(require("babel-runtime/helpers/toConsumableArray"), require("babel-runtime/core-js/object/get-prototype-of"), require("babel-runtime/helpers/classCallCheck"), require("babel-runtime/helpers/createClass"), require("babel-runtime/helpers/possibleConstructorReturn"), require("babel-runtime/helpers/inherits"), require("react"), require("ak-droplist"), require("ak-button"), require("ak-icon/glyph/expand")) : "function" == typeof define && define.amd ? define([ "babel-runtime/helpers/toConsumableArray", "babel-runtime/core-js/object/get-prototype-of", "babel-runtime/helpers/classCallCheck", "babel-runtime/helpers/createClass", "babel-runtime/helpers/possibleConstructorReturn", "babel-runtime/helpers/inherits", "react", "ak-droplist", "ak-button", "ak-icon/glyph/expand" ], factory) : "object" == typeof exports ? exports.akDropdownMenu = factory(require("babel-runtime/helpers/toConsumableArray"), require("babel-runtime/core-js/object/get-prototype-of"), require("babel-runtime/helpers/classCallCheck"), require("babel-runtime/helpers/createClass"), require("babel-runtime/helpers/possibleConstructorReturn"), require("babel-runtime/helpers/inherits"), require("react"), require("ak-droplist"), require("ak-button"), require("ak-icon/glyph/expand")) : root.akDropdownMenu = factory(root["babel-runtime/helpers/toConsumableArray"], root["babel-runtime/core-js/object/get-prototype-of"], root["babel-runtime/helpers/classCallCheck"], root["babel-runtime/helpers/createClass"], root["babel-runtime/helpers/possibleConstructorReturn"], root["babel-runtime/helpers/inherits"], root.react, root["ak-droplist"], root["ak-button"], root["ak-icon/glyph/expand"]);
}(this, function(__WEBPACK_EXTERNAL_MODULE_2__, __WEBPACK_EXTERNAL_MODULE_3__, __WEBPACK_EXTERNAL_MODULE_4__, __WEBPACK_EXTERNAL_MODULE_5__, __WEBPACK_EXTERNAL_MODULE_6__, __WEBPACK_EXTERNAL_MODULE_7__, __WEBPACK_EXTERNAL_MODULE_8__, __WEBPACK_EXTERNAL_MODULE_9__, __WEBPACK_EXTERNAL_MODULE_10__, __WEBPACK_EXTERNAL_MODULE_11__) {
}(this, function(__WEBPACK_EXTERNAL_MODULE_2__, __WEBPACK_EXTERNAL_MODULE_3__, __WEBPACK_EXTERNAL_MODULE_4__, __WEBPACK_EXTERNAL_MODULE_5__, __WEBPACK_EXTERNAL_MODULE_6__, __WEBPACK_EXTERNAL_MODULE_7__, __WEBPACK_EXTERNAL_MODULE_8__, __WEBPACK_EXTERNAL_MODULE_10__, __WEBPACK_EXTERNAL_MODULE_11__, __WEBPACK_EXTERNAL_MODULE_12__) {
/******/

@@ -83,6 +83,4 @@ return function(modules) {

value: !0
});
var _toConsumableArray2 = __webpack_require__(2), _toConsumableArray3 = _interopRequireDefault(_toConsumableArray2), _getPrototypeOf = __webpack_require__(3), _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf), _classCallCheck2 = __webpack_require__(4), _classCallCheck3 = _interopRequireDefault(_classCallCheck2), _createClass2 = __webpack_require__(5), _createClass3 = _interopRequireDefault(_createClass2), _possibleConstructorReturn2 = __webpack_require__(6), _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2), _inherits2 = __webpack_require__(7), _inherits3 = _interopRequireDefault(_inherits2), _react = __webpack_require__(8), _react2 = _interopRequireDefault(_react), _akDroplist = __webpack_require__(9), _akDroplist2 = _interopRequireDefault(_akDroplist), _akButton = __webpack_require__(10), _akButton2 = _interopRequireDefault(_akButton), _expand = __webpack_require__(11), _expand2 = _interopRequireDefault(_expand), Icon = _react2.default.createElement(_expand2.default, {
label: "trigger button"
}), DropdownMenu = function(_PureComponent) {
}), exports.StatelessDropdownMenu = void 0;
var _toConsumableArray2 = __webpack_require__(2), _toConsumableArray3 = _interopRequireDefault(_toConsumableArray2), _getPrototypeOf = __webpack_require__(3), _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf), _classCallCheck2 = __webpack_require__(4), _classCallCheck3 = _interopRequireDefault(_classCallCheck2), _createClass2 = __webpack_require__(5), _createClass3 = _interopRequireDefault(_createClass2), _possibleConstructorReturn2 = __webpack_require__(6), _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2), _inherits2 = __webpack_require__(7), _inherits3 = _interopRequireDefault(_inherits2), _react = __webpack_require__(8), _react2 = _interopRequireDefault(_react), _StatelessMenu = __webpack_require__(9), _StatelessMenu2 = _interopRequireDefault(_StatelessMenu), DropdownMenu = function(_PureComponent) {
function DropdownMenu() {

@@ -142,3 +140,3 @@ var _ref, _temp, _this, _ret;

var _this2 = _this, props = _this2.props, state = _this2.state;
return _react2.default.createElement(_akDroplist2.default, {
return _react2.default.createElement(_StatelessMenu2.default, {
position: props.position,

@@ -149,9 +147,6 @@ appearance: props.appearance,

onOpenChange: _this.handleOpenChange,
isTriggerNotTabbable: "button" === props.triggerType || props.isTriggerNotTabbable,
listContext: "menu",
isTriggerNotTabbable: props.isTriggerNotTabbable,
triggerType: props.triggerType,
items: state.items
}, "button" === props.triggerType ? _react2.default.createElement(_akButton2.default, {
isSelected: state.isOpen,
iconAfter: Icon
}, props.children) : props.children);
}, props.children);
}, _ret = _temp, (0, _possibleConstructorReturn3.default)(_this, _ret);

@@ -169,73 +164,22 @@ }

DropdownMenu.propTypes = {
/**
* @description Controls the appearance of the dropdown. Available types: 'default', 'tall'.
* Default dropdown has scroll after its height exceeds the pre-defined amount. Tall dropdown
* has no restrictions.
* @memberof DropdownMenu
* @default default
*/
appearance: _react.PropTypes.oneOf([ "default", "tall" ]),
/**
* @description Position of the menu. See the documentation of ak-layer for more details.
* @memberof DropdownMenu
* @default bottom left
*/
position: _react.PropTypes.string,
/**
* @description Types of the menu's built-in trigger. Available types: 'default', 'button'.
* @memberof DropdownMenu
* @default default
*/
triggerType: _react.PropTypes.oneOf([ "default", "button" ]),
/**
* @description Controls whether trigger is tabbable. Set this to true when you use interactive
* elements inside trigger (links, buttons, inputs)
* @memberof DropdownMenu
* @default false
*/
children: _react.PropTypes.node,
defaultOpen: _react.PropTypes.bool,
isTriggerNotTabbable: _react.PropTypes.bool,
/**
* @description List of menu items. Should be an array of groups (see the documentation for
* ak-droplist-group for available props). Every group should contain array of items
* (see the documentation for ak-droplist-item for available props).
* @memberof DropdownMenu
* @example @js [
* {
* heading: 'Title of a group',
* items: [
* { content: 'First item in the group' },
* { content: 'Second item in the group' }
* ]
* }
* ]
*/
items: _react.PropTypes.array.isRequired,
// eslint-disable-line react/forbid-prop-types
/**
* @description Whether the dropdown should be open by default
* @memberof DropdownMenu
* @default []
*/
defaultOpen: _react.PropTypes.bool,
/**
* @description Handler function to be called when the item is activated.
* @memberof DropdownMenu
*/
onItemActivated: _react.PropTypes.func,
/**
* @description Handler function to be called when the menu is opened/closed.
* @memberof DropdownMenu
*/
onOpenChange: _react.PropTypes.func,
children: _react.PropTypes.node
position: _react.PropTypes.string,
triggerType: _react.PropTypes.oneOf([ "default", "button" ])
}, DropdownMenu.defaultProps = {
appearance: "default",
position: "bottom left",
triggerType: "default",
items: [],
defaultOpen: !1,
isTriggerNotTabbable: !1,
items: [],
onItemActivated: function() {},
onOpenChange: function() {}
}, exports.default = DropdownMenu;
onOpenChange: function() {},
position: "bottom left",
triggerType: "default"
}, exports.default = DropdownMenu, exports.StatelessDropdownMenu = _StatelessMenu2.default;
}, /* 2 */

@@ -271,4 +215,61 @@ /***/

/***/
function(module, exports) {
module.exports = __WEBPACK_EXTERNAL_MODULE_9__;
function(module, exports, __webpack_require__) {
"use strict";
function _interopRequireDefault(obj) {
return obj && obj.__esModule ? obj : {
default: obj
};
}
Object.defineProperty(exports, "__esModule", {
value: !0
});
var _getPrototypeOf = __webpack_require__(3), _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf), _classCallCheck2 = __webpack_require__(4), _classCallCheck3 = _interopRequireDefault(_classCallCheck2), _possibleConstructorReturn2 = __webpack_require__(6), _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2), _inherits2 = __webpack_require__(7), _inherits3 = _interopRequireDefault(_inherits2), _react = __webpack_require__(8), _react2 = _interopRequireDefault(_react), _akDroplist = __webpack_require__(10), _akDroplist2 = _interopRequireDefault(_akDroplist), _akButton = __webpack_require__(11), _akButton2 = _interopRequireDefault(_akButton), _expand = __webpack_require__(12), _expand2 = _interopRequireDefault(_expand), Icon = _react2.default.createElement(_expand2.default, {
label: ""
}), StatelessDropdownMenu = function(_PureComponent) {
function StatelessDropdownMenu() {
var _ref, _temp, _this, _ret;
(0, _classCallCheck3.default)(this, StatelessDropdownMenu);
for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key];
return _temp = _this = (0, _possibleConstructorReturn3.default)(this, (_ref = StatelessDropdownMenu.__proto__ || (0,
_getPrototypeOf2.default)(StatelessDropdownMenu)).call.apply(_ref, [ this ].concat(args))),
_this.render = function() {
var _this2 = _this, props = _this2.props;
return _react2.default.createElement(_akDroplist2.default, {
position: props.position,
appearance: props.appearance,
isOpen: props.isOpen,
onItemActivated: props.onItemActivated,
onOpenChange: props.onOpenChange,
isTriggerNotTabbable: "button" === props.triggerType || props.isTriggerNotTabbable,
listContext: "menu",
items: props.items
}, "button" === props.triggerType ? _react2.default.createElement(_akButton2.default, {
isSelected: props.isOpen,
iconAfter: Icon
}, props.children) : props.children);
}, _ret = _temp, (0, _possibleConstructorReturn3.default)(_this, _ret);
}
return (0, _inherits3.default)(StatelessDropdownMenu, _PureComponent), StatelessDropdownMenu;
}(_react.PureComponent);
StatelessDropdownMenu.propTypes = {
appearance: _react.PropTypes.oneOf([ "default", "tall" ]),
children: _react.PropTypes.node,
isOpen: _react.PropTypes.bool,
isTriggerNotTabbable: _react.PropTypes.bool,
items: _react.PropTypes.array.isRequired,
// eslint-disable-line react/forbid-prop-types
onItemActivated: _react.PropTypes.func,
onOpenChange: _react.PropTypes.func,
position: _react.PropTypes.string,
triggerType: _react.PropTypes.oneOf([ "default", "button" ])
}, StatelessDropdownMenu.defaultProps = {
appearance: "default",
isOpen: !1,
isTriggerNotTabbable: !1,
items: [],
onItemActivated: function() {},
onOpenChange: function() {},
position: "bottom left",
triggerType: "default"
}, exports.default = StatelessDropdownMenu;
}, /* 10 */

@@ -282,3 +283,7 @@ /***/

module.exports = __WEBPACK_EXTERNAL_MODULE_11__;
}, /* 12 */
/***/
function(module, exports) {
module.exports = __WEBPACK_EXTERNAL_MODULE_12__;
} ]);
});

@@ -1,1 +0,1 @@

!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("babel-runtime/helpers/toConsumableArray"),require("babel-runtime/core-js/object/get-prototype-of"),require("babel-runtime/helpers/classCallCheck"),require("babel-runtime/helpers/createClass"),require("babel-runtime/helpers/possibleConstructorReturn"),require("babel-runtime/helpers/inherits"),require("react"),require("ak-droplist"),require("ak-button"),require("ak-icon/glyph/expand")):"function"==typeof define&&define.amd?define(["babel-runtime/helpers/toConsumableArray","babel-runtime/core-js/object/get-prototype-of","babel-runtime/helpers/classCallCheck","babel-runtime/helpers/createClass","babel-runtime/helpers/possibleConstructorReturn","babel-runtime/helpers/inherits","react","ak-droplist","ak-button","ak-icon/glyph/expand"],t):"object"==typeof exports?exports.akDropdownMenu=t(require("babel-runtime/helpers/toConsumableArray"),require("babel-runtime/core-js/object/get-prototype-of"),require("babel-runtime/helpers/classCallCheck"),require("babel-runtime/helpers/createClass"),require("babel-runtime/helpers/possibleConstructorReturn"),require("babel-runtime/helpers/inherits"),require("react"),require("ak-droplist"),require("ak-button"),require("ak-icon/glyph/expand")):e.akDropdownMenu=t(e["babel-runtime/helpers/toConsumableArray"],e["babel-runtime/core-js/object/get-prototype-of"],e["babel-runtime/helpers/classCallCheck"],e["babel-runtime/helpers/createClass"],e["babel-runtime/helpers/possibleConstructorReturn"],e["babel-runtime/helpers/inherits"],e.react,e["ak-droplist"],e["ak-button"],e["ak-icon/glyph/expand"])}(this,function(e,t,r,n,o,i,a,s,p,u){return function(e){function t(n){if(r[n])return r[n].exports;var o=r[n]={exports:{},id:n,loaded:!1};return e[n].call(o.exports,o,o.exports,t),o.loaded=!0,o.exports}var r={};return t.m=e,t.c=r,t.p="",t(0)}([function(e,t,r){e.exports=r(1)},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var o=r(2),i=n(o),a=r(3),s=n(a),p=r(4),u=n(p),l=r(5),c=n(l),b=r(6),f=n(b),d=r(7),m=n(d),h=r(8),y=n(h),g=r(9),C=n(g),k=r(10),x=n(k),O=r(11),T=n(O),q=y.default.createElement(T.default,{label:"trigger button"}),v=function(e){function t(){var e,r,n,o;(0,u.default)(this,t);for(var a=arguments.length,p=Array(a),l=0;l<a;l++)p[l]=arguments[l];return r=n=(0,f.default)(this,(e=t.__proto__||(0,s.default)(t)).call.apply(e,[this].concat(p))),n.state={isOpen:n.props.defaultOpen,items:[].concat((0,i.default)(n.props.items))},n.findActivatedGroup=function(e){return n.state.items.filter(function(t){return t.items.indexOf(e)>-1})[0]},n.handleItemActivation=function(e){var t=e.item,r=n.findActivatedGroup(t),o=[].concat((0,i.default)(n.state.items));switch(t.type){case"checkbox":t.isChecked=!t.isChecked,n.props.onItemActivated({item:t}),n.setState({items:o});break;case"radio":r.items.forEach(function(e){e===t?e.isChecked=!0:e.isChecked=!1}),n.props.onItemActivated({item:t}),n.setState({items:o});break;case"link":default:n.props.onItemActivated({item:t}),t.href||n.close()}},n.handleOpenChange=function(e){n.setState({isOpen:e.isOpen}),n.props.onOpenChange(e)},n.close=function(){n.setState({isOpen:!1}),n.props.onOpenChange({isOpen:!1})},n.render=function(){var e=n,t=e.props,r=e.state;return y.default.createElement(C.default,{position:t.position,appearance:t.appearance,isOpen:r.isOpen,onItemActivated:n.handleItemActivation,onOpenChange:n.handleOpenChange,isTriggerNotTabbable:"button"===t.triggerType||t.isTriggerNotTabbable,listContext:"menu",items:r.items},"button"===t.triggerType?y.default.createElement(x.default,{isSelected:r.isOpen,iconAfter:q},t.children):t.children)},o=r,(0,f.default)(n,o)}return(0,m.default)(t,e),(0,c.default)(t,[{key:"componentWillReceiveProps",value:function(e){e.items!==this.state.items&&this.setState({items:[].concat((0,i.default)(e.items))})}}]),t}(h.PureComponent);v.propTypes={appearance:h.PropTypes.oneOf(["default","tall"]),position:h.PropTypes.string,triggerType:h.PropTypes.oneOf(["default","button"]),isTriggerNotTabbable:h.PropTypes.bool,items:h.PropTypes.array.isRequired,defaultOpen:h.PropTypes.bool,onItemActivated:h.PropTypes.func,onOpenChange:h.PropTypes.func,children:h.PropTypes.node},v.defaultProps={appearance:"default",position:"bottom left",triggerType:"default",items:[],defaultOpen:!1,isTriggerNotTabbable:!1,onItemActivated:function(){},onOpenChange:function(){}},t.default=v},function(t,r){t.exports=e},function(e,r){e.exports=t},function(e,t){e.exports=r},function(e,t){e.exports=n},function(e,t){e.exports=o},function(e,t){e.exports=i},function(e,t){e.exports=a},function(e,t){e.exports=s},function(e,t){e.exports=p},function(e,t){e.exports=u}])});
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("babel-runtime/helpers/toConsumableArray"),require("babel-runtime/core-js/object/get-prototype-of"),require("babel-runtime/helpers/classCallCheck"),require("babel-runtime/helpers/createClass"),require("babel-runtime/helpers/possibleConstructorReturn"),require("babel-runtime/helpers/inherits"),require("react"),require("ak-droplist"),require("ak-button"),require("ak-icon/glyph/expand")):"function"==typeof define&&define.amd?define(["babel-runtime/helpers/toConsumableArray","babel-runtime/core-js/object/get-prototype-of","babel-runtime/helpers/classCallCheck","babel-runtime/helpers/createClass","babel-runtime/helpers/possibleConstructorReturn","babel-runtime/helpers/inherits","react","ak-droplist","ak-button","ak-icon/glyph/expand"],t):"object"==typeof exports?exports.akDropdownMenu=t(require("babel-runtime/helpers/toConsumableArray"),require("babel-runtime/core-js/object/get-prototype-of"),require("babel-runtime/helpers/classCallCheck"),require("babel-runtime/helpers/createClass"),require("babel-runtime/helpers/possibleConstructorReturn"),require("babel-runtime/helpers/inherits"),require("react"),require("ak-droplist"),require("ak-button"),require("ak-icon/glyph/expand")):e.akDropdownMenu=t(e["babel-runtime/helpers/toConsumableArray"],e["babel-runtime/core-js/object/get-prototype-of"],e["babel-runtime/helpers/classCallCheck"],e["babel-runtime/helpers/createClass"],e["babel-runtime/helpers/possibleConstructorReturn"],e["babel-runtime/helpers/inherits"],e.react,e["ak-droplist"],e["ak-button"],e["ak-icon/glyph/expand"])}(this,function(e,t,r,n,o,a,i,s,p,u){return function(e){function t(n){if(r[n])return r[n].exports;var o=r[n]={exports:{},id:n,loaded:!1};return e[n].call(o.exports,o,o.exports,t),o.loaded=!0,o.exports}var r={};return t.m=e,t.c=r,t.p="",t(0)}([function(e,t,r){e.exports=r(1)},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.StatelessDropdownMenu=void 0;var o=r(2),a=n(o),i=r(3),s=n(i),p=r(4),u=n(p),l=r(5),c=n(l),f=r(6),b=n(f),d=r(7),m=n(d),h=r(8),g=n(h),y=r(9),T=n(y),C=function(e){function t(){var e,r,n,o;(0,u.default)(this,t);for(var i=arguments.length,p=Array(i),l=0;l<i;l++)p[l]=arguments[l];return r=n=(0,b.default)(this,(e=t.__proto__||(0,s.default)(t)).call.apply(e,[this].concat(p))),n.state={isOpen:n.props.defaultOpen,items:[].concat((0,a.default)(n.props.items))},n.findActivatedGroup=function(e){return n.state.items.filter(function(t){return t.items.indexOf(e)>-1})[0]},n.handleItemActivation=function(e){var t=e.item,r=n.findActivatedGroup(t),o=[].concat((0,a.default)(n.state.items));switch(t.type){case"checkbox":t.isChecked=!t.isChecked,n.props.onItemActivated({item:t}),n.setState({items:o});break;case"radio":r.items.forEach(function(e){e===t?e.isChecked=!0:e.isChecked=!1}),n.props.onItemActivated({item:t}),n.setState({items:o});break;case"link":default:n.props.onItemActivated({item:t}),t.href||n.close()}},n.handleOpenChange=function(e){n.setState({isOpen:e.isOpen}),n.props.onOpenChange(e)},n.close=function(){n.setState({isOpen:!1}),n.props.onOpenChange({isOpen:!1})},n.render=function(){var e=n,t=e.props,r=e.state;return g.default.createElement(T.default,{position:t.position,appearance:t.appearance,isOpen:r.isOpen,onItemActivated:n.handleItemActivation,onOpenChange:n.handleOpenChange,isTriggerNotTabbable:t.isTriggerNotTabbable,triggerType:t.triggerType,items:r.items},t.children)},o=r,(0,b.default)(n,o)}return(0,m.default)(t,e),(0,c.default)(t,[{key:"componentWillReceiveProps",value:function(e){e.items!==this.state.items&&this.setState({items:[].concat((0,a.default)(e.items))})}}]),t}(h.PureComponent);C.propTypes={appearance:h.PropTypes.oneOf(["default","tall"]),children:h.PropTypes.node,defaultOpen:h.PropTypes.bool,isTriggerNotTabbable:h.PropTypes.bool,items:h.PropTypes.array.isRequired,onItemActivated:h.PropTypes.func,onOpenChange:h.PropTypes.func,position:h.PropTypes.string,triggerType:h.PropTypes.oneOf(["default","button"])},C.defaultProps={appearance:"default",defaultOpen:!1,isTriggerNotTabbable:!1,items:[],onItemActivated:function(){},onOpenChange:function(){},position:"bottom left",triggerType:"default"},t.default=C,t.StatelessDropdownMenu=T.default},function(t,r){t.exports=e},function(e,r){e.exports=t},function(e,t){e.exports=r},function(e,t){e.exports=n},function(e,t){e.exports=o},function(e,t){e.exports=a},function(e,t){e.exports=i},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var o=r(3),a=n(o),i=r(4),s=n(i),p=r(6),u=n(p),l=r(7),c=n(l),f=r(8),b=n(f),d=r(10),m=n(d),h=r(11),g=n(h),y=r(12),T=n(y),C=b.default.createElement(T.default,{label:""}),O=function(e){function t(){var e,r,n,o;(0,s.default)(this,t);for(var i=arguments.length,p=Array(i),l=0;l<i;l++)p[l]=arguments[l];return r=n=(0,u.default)(this,(e=t.__proto__||(0,a.default)(t)).call.apply(e,[this].concat(p))),n.render=function(){var e=n,t=e.props;return b.default.createElement(m.default,{position:t.position,appearance:t.appearance,isOpen:t.isOpen,onItemActivated:t.onItemActivated,onOpenChange:t.onOpenChange,isTriggerNotTabbable:"button"===t.triggerType||t.isTriggerNotTabbable,listContext:"menu",items:t.items},"button"===t.triggerType?b.default.createElement(g.default,{isSelected:t.isOpen,iconAfter:C},t.children):t.children)},o=r,(0,u.default)(n,o)}return(0,c.default)(t,e),t}(f.PureComponent);O.propTypes={appearance:f.PropTypes.oneOf(["default","tall"]),children:f.PropTypes.node,isOpen:f.PropTypes.bool,isTriggerNotTabbable:f.PropTypes.bool,items:f.PropTypes.array.isRequired,onItemActivated:f.PropTypes.func,onOpenChange:f.PropTypes.func,position:f.PropTypes.string,triggerType:f.PropTypes.oneOf(["default","button"])},O.defaultProps={appearance:"default",isOpen:!1,isTriggerNotTabbable:!1,items:[],onItemActivated:function(){},onOpenChange:function(){},position:"bottom left",triggerType:"default"},t.default=O},function(e,t){e.exports=s},function(e,t){e.exports=p},function(e,t){e.exports=u}])});
{
"name": "ak-dropdown-menu",
"version": "1.5.0",
"version": "1.6.0",
"description": "ak-dropdown-menu React component",

@@ -27,3 +27,5 @@ "main": "dist/bundle.js",

"devDependencies": {
"ak-avatar": "^5.0.5"
"ak-avatar": "^5.0.5",
"akutil-readme": "^1.2.0",
"ak-dropdown-menu": "*"
},

@@ -30,0 +32,0 @@ "peerDependencies": {

@@ -5,3 +5,3 @@ [![AtlasKit component registry](https://img.shields.io/badge/AtlasKit-components-FF5230.svg)](http://aui-cdn.atlassian.com/atlaskit/registry/)

[![Report an issue](https://img.shields.io/badge/Report-an_issue-6554C0.svg)](https://ecosystem.atlassian.net/browse/AK)
[![Ask in our forum](https://img.shields.io/badge/Ask-in_our_forum-6554C0.svg)](https://answers.atlassian.com/questions/ask?title=AtlasKit%3A%20&topics=atlaskit,ak-dropdown-menu,ak-dropdown-menu@1.5.0)
[![Ask in our forum](https://img.shields.io/badge/Ask-in_our_forum-6554C0.svg)](https://answers.atlassian.com/questions/ask?title=AtlasKit%3A%20&topics=atlaskit,ak-dropdown-menu,ak-dropdown-menu@1.6.0)

@@ -14,3 +14,3 @@ # Dropdown menu

See more detailed documentation and code examples in the [live demo of the component](https://aui-cdn.atlassian.com/atlaskit/stories/ak-dropdown-menu/1.5.0/).
See more detailed documentation and code examples in the [live demo of the component](https://aui-cdn.atlassian.com/atlaskit/stories/ak-dropdown-menu/1.6.0/).

@@ -25,95 +25,6 @@ ## Installation

See examples of usage and detailed documentation in the [live demo of the component](https://aui-cdn.atlassian.com/atlaskit/stories/ak-dropdown-menu/1.5.0/).
See examples of usage and detailed documentation in the [live demo of the component](https://aui-cdn.atlassian.com/atlaskit/stories/ak-dropdown-menu/1.6.0/).
<a name="DropdownMenu"></a>
## DropdownMenu
**Kind**: global class
* Properties
* [DropdownMenu.appearance](#DropdownMenu.appearance)
* [DropdownMenu.position](#DropdownMenu.position)
* [DropdownMenu.triggerType](#DropdownMenu.triggerType)
* [DropdownMenu.isTriggerNotTabbable](#DropdownMenu.isTriggerNotTabbable)
* [DropdownMenu.items](#DropdownMenu.items)
* [DropdownMenu.defaultOpen](#DropdownMenu.defaultOpen)
* [DropdownMenu.onItemActivated](#DropdownMenu.onItemActivated)
* [DropdownMenu.onOpenChange](#DropdownMenu.onOpenChange)
<a name="new_DropdownMenu_new"></a>
### new DropdownMenu()
This is a basic building block of a dropdown's list.
<a name="DropdownMenu.appearance"></a>
### DropdownMenu.appearance
Controls the appearance of the dropdown. Available types: 'default', 'tall'.
Default dropdown has scroll after its height exceeds the pre-defined amount. Tall dropdown
has no restrictions.
**Kind**: static property of <code>[DropdownMenu](#DropdownMenu)</code>
**Default**: <code>default</code>
<a name="DropdownMenu.position"></a>
### DropdownMenu.position
Position of the menu. See the documentation of ak-layer for more details.
**Kind**: static property of <code>[DropdownMenu](#DropdownMenu)</code>
**Default**: <code>bottom left</code>
<a name="DropdownMenu.triggerType"></a>
### DropdownMenu.triggerType
Types of the menu's built-in trigger. Available types: 'default', 'button'.
**Kind**: static property of <code>[DropdownMenu](#DropdownMenu)</code>
**Default**: <code>default</code>
<a name="DropdownMenu.isTriggerNotTabbable"></a>
### DropdownMenu.isTriggerNotTabbable
Controls whether trigger is tabbable. Set this to true when you use interactive
elements inside trigger (links, buttons, inputs)
**Kind**: static property of <code>[DropdownMenu](#DropdownMenu)</code>
**Default**: <code>false</code>
<a name="DropdownMenu.items"></a>
### DropdownMenu.items
List of menu items. Should be an array of groups (see the documentation for
ak-droplist-group for available props). Every group should contain array of items
(see the documentation for ak-droplist-item for available props).
**Kind**: static property of <code>[DropdownMenu](#DropdownMenu)</code>
**JS Example**
```js
[
{
heading: 'Title of a group',
items: [
{ content: 'First item in the group' },
{ content: 'Second item in the group' }
]
}
]
```
<a name="DropdownMenu.defaultOpen"></a>
### DropdownMenu.defaultOpen
Whether the dropdown should be open by default
**Kind**: static property of <code>[DropdownMenu](#DropdownMenu)</code>
**Default**: <code>[]</code>
<a name="DropdownMenu.onItemActivated"></a>
### DropdownMenu.onItemActivated
Handler function to be called when the item is activated.
**Kind**: static property of <code>[DropdownMenu](#DropdownMenu)</code>
<a name="DropdownMenu.onOpenChange"></a>
### DropdownMenu.onOpenChange
Handler function to be called when the menu is opened/closed.
**Kind**: static property of <code>[DropdownMenu](#DropdownMenu)</code>
## Support and feedback

@@ -127,3 +38,3 @@

Ask a question in our [forum](https://answers.atlassian.com/questions/ask?title=AtlasKit%3A%20&topics=atlaskit,ak-dropdown-menu,ak-dropdown-menu@1.5.0).
Ask a question in our [forum](https://answers.atlassian.com/questions/ask?title=AtlasKit%3A%20&topics=atlaskit,ak-dropdown-menu,ak-dropdown-menu@1.6.0).

@@ -130,0 +41,0 @@ Check [if someone has already asked the same question before](https://answers.atlassian.com/questions/topics/42926171/atlaskit).

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc