react-dropdown-select
Version:
Customizable dropdown select for react
1 lines • 8.68 kB
JavaScript
exports.__esModule=!0,exports.default=void 0;var _base=_interopRequireDefault(require("@emotion/styled/base")),_react=_interopRequireWildcard(require("react")),_util=require("../util"),PropTypes=_interopRequireWildcard(require("prop-types")),_constants=require("../constants");function _getRequireWildcardCache(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(_getRequireWildcardCache=function(a){return a?c:b})(a)}function _interopRequireWildcard(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!=typeof a&&"function"!=typeof a)return{default:a};var c=_getRequireWildcardCache(b);if(c&&c.has(a))return c.get(a);var d={},e=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var f in a)if("default"!=f&&Object.prototype.hasOwnProperty.call(a,f)){var g=e?Object.getOwnPropertyDescriptor(a,f):null;g&&(g.get||g.set)?Object.defineProperty(d,f,g):d[f]=a[f]}return d.default=a,c&&c.set(a,d),d}function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}function _inheritsLoose(a,b){a.prototype=Object.create(b.prototype),a.prototype.constructor=a,_setPrototypeOf(a,b)}function _setPrototypeOf(a,b){return _setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(a,b){return a.__proto__=b,a},_setPrototypeOf(a,b)}var Item=/*#__PURE__*/function(a){function b(){for(var b,c=arguments.length,d=Array(c),e=0;e<c;e++)d[e]=arguments[e];return b=a.call.apply(a,[this].concat(d))||this,b.item=/*#__PURE__*/_react.default.createRef(),b}_inheritsLoose(b,a);var c=b.prototype;return c.componentDidMount=function componentDidMount(){var a=this.props,b=a.props,c=a.methods;this.item.current&&!b.multi&&b.keepSelectedInList&&c.isSelected(this.props.item)&&this.item.current.scrollIntoView({block:"nearest",inline:"start"})},c.componentDidUpdate=function componentDidUpdate(){this.props.state.cursor===this.props.itemIndex&&this.item.current&&this.item.current.scrollIntoView({behavior:"smooth",block:"nearest",inline:"start"})},c.render=function render(){var a=this.props,b=a.props,c=a.state,d=a.methods,e=a.item,f=a.itemIndex;return b.itemRenderer?b.itemRenderer({item:e,itemIndex:f,props:b,state:c,methods:d}):!b.keepSelectedInList&&d.isSelected(e)?null:/*#__PURE__*/_react.default.createElement(ItemComponent,{role:"option",ref:this.item,"aria-selected":d.isSelected(e),"aria-disabled":e.disabled,"aria-label":(0,_util.getByPath)(e,b.labelField),disabled:e.disabled,key:""+(0,_util.getByPath)(e,b.valueField)+(0,_util.getByPath)(e,b.labelField),tabIndex:"-1",className:_constants.LIB_NAME+"-item "+(d.isSelected(e)?_constants.LIB_NAME+"-item-selected":"")+" "+(c.cursor===f?_constants.LIB_NAME+"-item-active":"")+" "+(e.disabled?_constants.LIB_NAME+"-item-disabled":""),onClick:e.disabled?void 0:function(){return d.addItem(e)},onKeyPress:e.disabled?void 0:function(){return d.addItem(e)},color:b.color},(0,_util.getByPath)(e,b.labelField)," ",e.disabled&&/*#__PURE__*/_react.default.createElement("ins",null,b.disabledLabel))},b}(_react.Component),ItemComponent=/*#__PURE__*/(0,_base.default)("span","production"===process.env.NODE_ENV?{target:"evc32pp0"}:{target:"evc32pp0",label:"ItemComponent"})("padding:5px 10px;cursor:pointer;border-bottom:1px solid #fff;&.",_constants.LIB_NAME,"-item-active{border-bottom:1px solid #fff;",function(a){var b=a.disabled,c=a.color;return!b&&c&&"background: "+(0,_util.hexToRGBA)(c,.1)+";"},";}:hover,:focus{background:",function(a){var b=a.color;return b&&(0,_util.hexToRGBA)(b,.1)},";outline:none;}&.",_constants.LIB_NAME,"-item-selected{",function(a){var b=a.disabled,c=a.color;return b?"\n background: #f2f2f2;\n color: #ccc;\n ":"\n background: "+c+";\n color: #fff;\n border-bottom: 1px solid #fff;\n "},";}",function(a){var b=a.disabled;return b?"\n background: #f2f2f2;\n color: #ccc;\n\n ins {\n text-decoration: none;\n border:1px solid #ccc;\n border-radius: 2px;\n padding: 0px 3px;\n font-size: x-small;\n text-transform: uppercase;\n }\n ":""},";"+("production"===process.env.NODE_ENV?"":"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL0l0ZW0uanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBdUVpQyIsImZpbGUiOiIuLi8uLi9zcmMvY29tcG9uZW50cy9JdGVtLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IENvbXBvbmVudCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcbmltcG9ydCB7IGhleFRvUkdCQSwgZ2V0QnlQYXRoIH0gZnJvbSAnLi4vdXRpbCc7XG5pbXBvcnQgKiBhcyBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgeyBMSUJfTkFNRSB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5cbmNsYXNzIEl0ZW0gZXh0ZW5kcyBDb21wb25lbnQge1xuICBpdGVtID0gUmVhY3QuY3JlYXRlUmVmKCk7XG5cbiAgY29tcG9uZW50RGlkTW91bnQoKSB7XG4gICAgY29uc3QgeyBwcm9wcywgbWV0aG9kcyB9ID0gdGhpcy5wcm9wcztcblxuICAgIGlmIChcbiAgICAgIHRoaXMuaXRlbS5jdXJyZW50ICYmXG4gICAgICAhcHJvcHMubXVsdGkgJiZcbiAgICAgIHByb3BzLmtlZXBTZWxlY3RlZEluTGlzdCAmJlxuICAgICAgbWV0aG9kcy5pc1NlbGVjdGVkKHRoaXMucHJvcHMuaXRlbSlcbiAgICApXG4gICAgICB0aGlzLml0ZW0uY3VycmVudC5zY3JvbGxJbnRvVmlldyh7IGJsb2NrOiAnbmVhcmVzdCcsIGlubGluZTogJ3N0YXJ0JyB9KTtcbiAgfVxuXG4gIGNvbXBvbmVudERpZFVwZGF0ZSgpIHtcbiAgICBpZiAodGhpcy5wcm9wcy5zdGF0ZS5jdXJzb3IgPT09IHRoaXMucHJvcHMuaXRlbUluZGV4KSB7XG4gICAgICB0aGlzLml0ZW0uY3VycmVudCAmJlxuICAgICAgICB0aGlzLml0ZW0uY3VycmVudC5zY3JvbGxJbnRvVmlldyh7IGJlaGF2aW9yOiAnc21vb3RoJywgYmxvY2s6ICduZWFyZXN0JywgaW5saW5lOiAnc3RhcnQnIH0pO1xuICAgIH1cbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7IHByb3BzLCBzdGF0ZSwgbWV0aG9kcywgaXRlbSwgaXRlbUluZGV4IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKHByb3BzLml0ZW1SZW5kZXJlcikge1xuICAgICAgcmV0dXJuIHByb3BzLml0ZW1SZW5kZXJlcih7IGl0ZW0sIGl0ZW1JbmRleCwgcHJvcHMsIHN0YXRlLCBtZXRob2RzIH0pO1xuICAgIH1cblxuICAgIGlmICghcHJvcHMua2VlcFNlbGVjdGVkSW5MaXN0ICYmIG1ldGhvZHMuaXNTZWxlY3RlZChpdGVtKSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxJdGVtQ29tcG9uZW50XG4gICAgICAgIHJvbGU9XCJvcHRpb25cIlxuICAgICAgICByZWY9e3RoaXMuaXRlbX1cbiAgICAgICAgYXJpYS1zZWxlY3RlZD17bWV0aG9kcy5pc1NlbGVjdGVkKGl0ZW0pfVxuICAgICAgICBhcmlhLWRpc2FibGVkPXtpdGVtLmRpc2FibGVkfVxuICAgICAgICBhcmlhLWxhYmVsPXtnZXRCeVBhdGgoaXRlbSwgcHJvcHMubGFiZWxGaWVsZCl9XG4gICAgICAgIGRpc2FibGVkPXtpdGVtLmRpc2FibGVkfVxuICAgICAgICBrZXk9e2Ake2dldEJ5UGF0aChpdGVtLCBwcm9wcy52YWx1ZUZpZWxkKX0ke2dldEJ5UGF0aChpdGVtLCBwcm9wcy5sYWJlbEZpZWxkKX1gfVxuICAgICAgICB0YWJJbmRleD1cIi0xXCJcbiAgICAgICAgY2xhc3NOYW1lPXtgJHtMSUJfTkFNRX0taXRlbSAke1xuICAgICAgICAgIG1ldGhvZHMuaXNTZWxlY3RlZChpdGVtKSA/IGAke0xJQl9OQU1FfS1pdGVtLXNlbGVjdGVkYCA6ICcnXG4gICAgICAgIH0gJHtzdGF0ZS5jdXJzb3IgPT09IGl0ZW1JbmRleCA/IGAke0xJQl9OQU1FfS1pdGVtLWFjdGl2ZWAgOiAnJ30gJHtcbiAgICAgICAgICBpdGVtLmRpc2FibGVkID8gYCR7TElCX05BTUV9LWl0ZW0tZGlzYWJsZWRgIDogJydcbiAgICAgICAgfWB9XG4gICAgICAgIG9uQ2xpY2s9e2l0ZW0uZGlzYWJsZWQgPyB1bmRlZmluZWQgOiAoKSA9PiBtZXRob2RzLmFkZEl0ZW0oaXRlbSl9XG4gICAgICAgIG9uS2V5UHJlc3M9e2l0ZW0uZGlzYWJsZWQgPyB1bmRlZmluZWQgOiAoKSA9PiBtZXRob2RzLmFkZEl0ZW0oaXRlbSl9XG4gICAgICAgIGNvbG9yPXtwcm9wcy5jb2xvcn0+XG4gICAgICAgIHtnZXRCeVBhdGgoaXRlbSwgcHJvcHMubGFiZWxGaWVsZCl9IHtpdGVtLmRpc2FibGVkICYmIDxpbnM+e3Byb3BzLmRpc2FibGVkTGFiZWx9PC9pbnM+fVxuICAgICAgPC9JdGVtQ29tcG9uZW50PlxuICAgICk7XG4gIH1cbn1cblxuSXRlbS5wcm9wVHlwZXMgPSB7XG4gIHByb3BzOiBQcm9wVHlwZXMuYW55LFxuICBzdGF0ZTogUHJvcFR5cGVzLmFueSxcbiAgbWV0aG9kczogUHJvcFR5cGVzLmFueSxcbiAgaXRlbTogUHJvcFR5cGVzLmFueSxcbiAgaXRlbUluZGV4OiBQcm9wVHlwZXMuYW55XG59O1xuXG5jb25zdCBJdGVtQ29tcG9uZW50ID0gc3R5bGVkLnNwYW5gXG4gIHBhZGRpbmc6IDVweCAxMHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmO1xuXG4gICYuJHtMSUJfTkFNRX0taXRlbS1hY3RpdmUge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmO1xuICAgICR7KHsgZGlzYWJsZWQsIGNvbG9yIH0pID0+ICFkaXNhYmxlZCAmJiBjb2xvciAmJiBgYmFja2dyb3VuZDogJHtoZXhUb1JHQkEoY29sb3IsIDAuMSl9O2B9XG4gIH1cblxuICA6aG92ZXIsXG4gIDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZDogJHsoeyBjb2xvciB9KSA9PiBjb2xvciAmJiBoZXhUb1JHQkEoY29sb3IsIDAuMSl9O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAmLiR7TElCX05BTUV9LWl0ZW0tc2VsZWN0ZWQge1xuICAgICR7KHsgZGlzYWJsZWQsIGNvbG9yIH0pID0+XG4gICAgICBkaXNhYmxlZFxuICAgICAgICA/IGBcbiAgICBiYWNrZ3JvdW5kOiAjZjJmMmYyO1xuICAgIGNvbG9yOiAjY2NjO1xuICAgIGBcbiAgICAgICAgOiBgXG4gICAgYmFja2dyb3VuZDogJHtjb2xvcn07XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmY7XG4gICAgYH1cbiAgfVxuXG4gICR7KHsgZGlzYWJsZWQgfSkgPT5cbiAgICBkaXNhYmxlZFxuICAgICAgPyBgXG4gICAgYmFja2dyb3VuZDogI2YyZjJmMjtcbiAgICBjb2xvcjogI2NjYztcblxuICAgIGlucyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBib3JkZXI6MXB4IHNvbGlkICNjY2M7XG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICBwYWRkaW5nOiAwcHggM3B4O1xuICAgICAgZm9udC1zaXplOiB4LXNtYWxsO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gICAgYFxuICAgICAgOiAnJ31cbmA7XG5cbmV4cG9ydCBkZWZhdWx0IEl0ZW07XG4iXX0= */")),_default=Item;exports.default=_default;
;