react-clean-select 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +170 -0
- package/dist/react-clean-select.js +1 -0
- package/dist/react-dropdown-select-emotionless.js +1 -0
- package/dist/react-select-clean.js +1 -0
- package/lib/components/Clear.js +1 -0
- package/lib/components/ClickOutside.js +1 -0
- package/lib/components/Content.js +1 -0
- package/lib/components/Dropdown.js +1 -0
- package/lib/components/DropdownHandle.js +1 -0
- package/lib/components/Input.js +1 -0
- package/lib/components/Item.js +1 -0
- package/lib/components/Loading.js +1 -0
- package/lib/components/NoData.js +1 -0
- package/lib/components/Option.js +1 -0
- package/lib/components/Separator.js +1 -0
- package/lib/constants.js +1 -0
- package/lib/index.js +1 -0
- package/lib/models/SelectMethodsModel.js +35 -0
- package/lib/models/SelectPropsModel.js +135 -0
- package/lib/models/SelectStateModel.js +13 -0
- package/lib/util.js +1 -0
- package/package.json +140 -0
- package/types.d.ts +181 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2018 Sasha Khamkov
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
# react-clean-select
|
|
2
|
+
|
|
3
|
+
Customisable dropdown select for react (without @emotion or inline styles)
|
|
4
|
+
|
|
5
|
+
[](https://bundlephobia.com/result?p=react-clean-select)
|
|
6
|
+
[](https://www.npmjs.com/package/react-clean-select)
|
|
7
|
+
[](https://coveralls.io/github/jlw/react-clean-select?branch=master)
|
|
8
|
+
[](https://app.codacy.com/gh/jlw/react-clean-select/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade)
|
|
9
|
+
|
|
10
|
+
### Features
|
|
11
|
+
|
|
12
|
+
- configurable via `prop`s
|
|
13
|
+
- total custom components overrides for all internals via render prop callbacks (with access to internal props, state and methods)
|
|
14
|
+
- stylable via CSS
|
|
15
|
+
- auto position
|
|
16
|
+
- small bundle size
|
|
17
|
+
|
|
18
|
+
### Installation
|
|
19
|
+
|
|
20
|
+
> `npm install --save react-clean-select`
|
|
21
|
+
|
|
22
|
+
### Web site
|
|
23
|
+
|
|
24
|
+
[Web site with docs and demo](https://jlw.github.io/react-clean-select)
|
|
25
|
+
|
|
26
|
+
### Motivation
|
|
27
|
+
|
|
28
|
+
I need a combobox component that A) can work on a site where the Content-Security-Policy does not allow inline styles and B) allows changing the available option list. Downshift met the needs for the Content-Secuity-Policy, but could not handle changing options after the component renders. All of the other packages I tried relied on inline styles and/or non-deterministic CSS class names that fought customization.
|
|
29
|
+
|
|
30
|
+
#### Credits
|
|
31
|
+
|
|
32
|
+
This is a fork of the [react-clean-select](https://github.com/sanusart/react-clean-select) package by Sasha Khamkov.
|
|
33
|
+
|
|
34
|
+
### Usage
|
|
35
|
+
|
|
36
|
+
import:
|
|
37
|
+
|
|
38
|
+
`import Select from "react-clean-select";`
|
|
39
|
+
|
|
40
|
+
and use as:
|
|
41
|
+
|
|
42
|
+
```jsx
|
|
43
|
+
const options = [
|
|
44
|
+
{
|
|
45
|
+
value: 1,
|
|
46
|
+
label: 'Leanne Graham'
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
value: 2,
|
|
50
|
+
label: 'Ervin Howell'
|
|
51
|
+
}
|
|
52
|
+
];
|
|
53
|
+
|
|
54
|
+
<Select options={options} onChange={(values) => this.setValues(values)} />;
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
If your options don't have **value** and **label** fields, include **labelField** and **valueField** in the props:
|
|
58
|
+
|
|
59
|
+
```jsx
|
|
60
|
+
const options = [
|
|
61
|
+
{
|
|
62
|
+
id: 1,
|
|
63
|
+
name: 'Leanne Graham'
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
id: 2,
|
|
67
|
+
name: 'Ervin Howell'
|
|
68
|
+
}
|
|
69
|
+
];
|
|
70
|
+
|
|
71
|
+
<Select
|
|
72
|
+
options={options}
|
|
73
|
+
labelField="name"
|
|
74
|
+
valueField="id"
|
|
75
|
+
onChange={(values) => this.setValues(values)}
|
|
76
|
+
/>;
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
> **options** and **onChange** are the minimum required props
|
|
80
|
+
|
|
81
|
+
### Help and Contributions
|
|
82
|
+
|
|
83
|
+
#### How to help/contribute
|
|
84
|
+
|
|
85
|
+
- fix issues and pull request are very welcome
|
|
86
|
+
- write, improve docs
|
|
87
|
+
- write tests (we use jest)
|
|
88
|
+
- suggest features and improvements
|
|
89
|
+
|
|
90
|
+
# API
|
|
91
|
+
|
|
92
|
+
### Component props
|
|
93
|
+
|
|
94
|
+
| Prop | Type | Default | Description |
|
|
95
|
+
| ------------------------------------------------------------------------------------------- | ----------- | -------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
|
|
96
|
+
| values | array | [] | Selected values |
|
|
97
|
+
| options | array | [] | Available options, (option with key `disabled: true` will be disabled) |
|
|
98
|
+
| keepOpen | bool | false | If true, dropdown will always stay open (good for debugging) |
|
|
99
|
+
| defaultMenuIsOpen | bool | false | If true, dropdown will be open by default |
|
|
100
|
+
| autoFocus | bool | false | If true, and `searchable`, dropdown will auto focus |
|
|
101
|
+
| clearOnBlur | bool | true | If true, and `searchable`, search value will be cleared on blur |
|
|
102
|
+
| clearOnSelect | bool | true | If true, and `searchable`, search value will be cleared upon value select/de-select |
|
|
103
|
+
| name | string | null | If set, input type hidden would be added in the component with the value of the `name` prop as name and select's `values` as value |
|
|
104
|
+
| required | bool | false | If set, input type hidden would be added in the component with `required` prop as true/false |
|
|
105
|
+
| pattern | string | null | If set, input type hidden would be added in the component with `pattern` prop as regex |
|
|
106
|
+
| dropdownGap | number | 5 | Gap between select element and dropdown |
|
|
107
|
+
| multi | bool | false | If true - will act as multi-select, if false - only one option will be selected at the time |
|
|
108
|
+
| placeholder | string | "Select..." | Placeholder shown where there are no selected values |
|
|
109
|
+
| addPlaceholder | string | "" | Secondary placeholder on search field if any value selected |
|
|
110
|
+
| disabled | bool | false | Disable select and all interactions |
|
|
111
|
+
| style | object | {} | Style object to pass to select |
|
|
112
|
+
| className | string | | CSS class attribute to pass to select |
|
|
113
|
+
| loading | bool | false | Loading indicator |
|
|
114
|
+
| clearable | bool | false | Clear all indicator |
|
|
115
|
+
| searchable | bool | true | If true, select will have search input text |
|
|
116
|
+
| separator | bool | false | Separator line between close all and dropdown handle |
|
|
117
|
+
| dropdownHandle | bool | true | Dropdown handle to open/close dropdown |
|
|
118
|
+
| dropdownHeight | string | "300px" | Minimum height of a dropdown |
|
|
119
|
+
| direction | string | "ltr" | direction of a dropdown "ltr", "rtl" or "auto" |
|
|
120
|
+
| searchBy | string | label | Search by object property in values |
|
|
121
|
+
| sortBy | string | null | Sort by object property in values |
|
|
122
|
+
| labelField | string | "label" | Field in data to use for label |
|
|
123
|
+
| valueField | string | "value" | Field in data to use for value |
|
|
124
|
+
| color | string | "#0074D9" | Base color to use in component, also can be overwritten via CSS |
|
|
125
|
+
| closeOnScroll | bool | false | If true, scrolling the page will close the dropdown |
|
|
126
|
+
| closeOnSelect | bool | false | If true, selecting option will close the dropdown |
|
|
127
|
+
| closeOnClickInput | bool | false | If true, clicking input will close the dropdown if you are not searching. |
|
|
128
|
+
| [dropdownPosition](https://jlw.github.io/react-clean-select/prop/dropdown-position) | string | "bottom" | Available options are "auto", "top" and "bottom" defaults to "bottom". Auto will adjust itself according Select's position on the page |
|
|
129
|
+
| keepSelectedInList | bool | true | If false, selected item will not appear in a list |
|
|
130
|
+
| portal | DOM element | false | If valid dom element specified - dropdown will break out to render inside the specified element |
|
|
131
|
+
| create | bool | false | If true, select will create value from search string and fire `onCreateNew` callback prop |
|
|
132
|
+
| backspaceDelete | bool | true | If true, backspace key will delete last value |
|
|
133
|
+
| createNewLabel | string | "add {search}" | If create set to true, this will be the label of the "add new" component. `{search}` will be replaced by search value |
|
|
134
|
+
| disabledLabel | string | "disabled" | Label shown on disabled field (after) the text |
|
|
135
|
+
| selectAll | bool | false | Allow to select all |
|
|
136
|
+
| selectAllLabel | string | "Select all" | Label for "Select all" |
|
|
137
|
+
| clearAllLabel | string | "Clear all" | Label for "Clear all" |
|
|
138
|
+
| additionalProps | object | null | Additional props to pass to Select |
|
|
139
|
+
|
|
140
|
+
### Callback props
|
|
141
|
+
|
|
142
|
+
> by using renderer props to override components some of the functionality will have to be handled manually with a help of internal props, states and methods exposed
|
|
143
|
+
|
|
144
|
+
| Prop | Type | Default | Description |
|
|
145
|
+
|----------------------------------------------------------------------------------------------------------| ---- | --------- |------------------------------------------------------------------------------------------------|
|
|
146
|
+
| onChange | func | | On values change **(user and internally triggered)** callback, returns array of values objects |
|
|
147
|
+
| onSelect | func | | On values change (user triggered) callback, returns array of values objects |
|
|
148
|
+
| onDeselect | func | | On values change (user triggered) callback, returns array of values objects |
|
|
149
|
+
| onDropdownClose | func | | Fires upon dropdown close |
|
|
150
|
+
| onDropdownOpen | func | | Fires upon dropdown open |
|
|
151
|
+
| onCreateNew | func | | Fires upon creation of new item if `create` prop set to `true` |
|
|
152
|
+
| onClearAll | func | | Fires upon clearing all values (via custom renderers) |
|
|
153
|
+
| onSelectAll | func | | Fires upon selecting all values (via custom renderers) |
|
|
154
|
+
| onDropdownCloseRequest | func | undefined | Fires upon dropdown closing state, stops the closing and provides own method `close()` |
|
|
155
|
+
| [contentRenderer](https://jlw.github.io/react-clean-select/prop/content-renderer) | func | | Overrides internal content component (the contents of the select component) |
|
|
156
|
+
| [itemRenderer](https://jlw.github.io/react-clean-select/prop/item-renderer) | func | | Overrides internal item in a dropdown |
|
|
157
|
+
| [noDataRenderer](https://jlw.github.io/react-clean-select/prop/no-data-renderer) | func | | Overrides internal "no data" (shown where search has no results) |
|
|
158
|
+
| [optionRenderer](https://jlw.github.io/react-clean-select/prop/option-renderer) | func | | Overrides internal option (the pillow with an "x") on the select content |
|
|
159
|
+
| [inputRenderer](https://jlw.github.io/react-clean-select/prop/input-renderer) | func | | Overrides internal input text |
|
|
160
|
+
| [loadingRenderer](https://jlw.github.io/react-clean-select/prop/loading-renderer) | func | | Overrides internal loading |
|
|
161
|
+
| [clearRenderer](https://jlw.github.io/react-clean-select/prop/clear-renderer) | func | | Overrides internal clear button |
|
|
162
|
+
| [separatorRenderer](https://jlw.github.io/react-clean-select/prop/separator-renderer) | func | | Overrides internal separator |
|
|
163
|
+
| [dropdownRenderer](https://jlw.github.io/react-clean-select/prop/dropdown-renderer) | func | | Overrides internal dropdown component |
|
|
164
|
+
| [dropdownHandleRenderer](https://jlw.github.io/react-clean-select/prop/dropdown-handle-renderer) | func | | Overrides internal dropdown handle |
|
|
165
|
+
| searchFn | func | undefined | Overrides internal search function |
|
|
166
|
+
| handleKeyDownFn | func | undefined | Overrides internal keyDown function |
|
|
167
|
+
|
|
168
|
+
### License
|
|
169
|
+
|
|
170
|
+
[MIT](https://github.com/jlw/react-clean-select/blob/master/LICENSE)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react"),require("react-dom"),require("prop-types")):"function"==typeof define&&define.amd?define("reactCleanSelect",["react","react-dom","prop-types"],t):"object"==typeof exports?exports.reactCleanSelect=t(require("react"),require("react-dom"),require("prop-types")):e.reactCleanSelect=t(e.React,e.ReactDOM,e.PropTypes)}(this,(e,t,n)=>(()=>{var r={602:e=>{"use strict";e.exports=n},359:t=>{"use strict";t.exports=e},318:e=>{"use strict";e.exports=t},434:e=>{function t(){return e.exports=t=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},e.exports.__esModule=!0,e.exports.default=e.exports,t.apply(null,arguments)}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports}},o={};function a(e){var t=o[e];if(void 0!==t)return t.exports;var n=o[e]={exports:{}};return r[e](n,n.exports,a),n.exports}a.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return a.d(t,{a:t}),t},a.d=(e,t)=>{for(var n in t)a.o(t,n)&&!a.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),a.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var s={};return(()=>{"use strict";a.r(s),a.d(s,{Select:()=>Gt,default:()=>Wt});var e=a(359),t=a.n(e),n=a(318),r=a.n(n);function o(){return o=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},o.apply(null,arguments)}function i(e){var t=Object.create(null);return function(n){return void 0===t[n]&&(t[n]=e(n)),t[n]}}var c=/^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|disableRemotePlayback|download|draggable|encType|enterKeyHint|fetchpriority|fetchPriority|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|popover|popoverTarget|popoverTargetAction|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/,l=i(function(e){return c.test(e)||111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&e.charCodeAt(2)<91}),u=function(){function e(e){var t=this;this._insertTag=function(e){var n;n=0===t.tags.length?t.insertionPoint?t.insertionPoint.nextSibling:t.prepend?t.container.firstChild:t.before:t.tags[t.tags.length-1].nextSibling,t.container.insertBefore(e,n),t.tags.push(e)},this.isSpeedy=void 0===e.speedy||e.speedy,this.tags=[],this.ctr=0,this.nonce=e.nonce,this.key=e.key,this.container=e.container,this.prepend=e.prepend,this.insertionPoint=e.insertionPoint,this.before=null}var t=e.prototype;return t.hydrate=function(e){e.forEach(this._insertTag)},t.insert=function(e){this.ctr%(this.isSpeedy?65e3:1)==0&&this._insertTag(function(e){var t=document.createElement("style");return t.setAttribute("data-emotion",e.key),void 0!==e.nonce&&t.setAttribute("nonce",e.nonce),t.appendChild(document.createTextNode("")),t.setAttribute("data-s",""),t}(this));var t=this.tags[this.tags.length-1];if(this.isSpeedy){var n=function(e){if(e.sheet)return e.sheet;for(var t=0;t<document.styleSheets.length;t++)if(document.styleSheets[t].ownerNode===e)return document.styleSheets[t]}(t);try{n.insertRule(e,n.cssRules.length)}catch(e){}}else t.appendChild(document.createTextNode(e));this.ctr++},t.flush=function(){this.tags.forEach(function(e){var t;return null==(t=e.parentNode)?void 0:t.removeChild(e)}),this.tags=[],this.ctr=0},e}(),p=Math.abs,d=String.fromCharCode,f=Object.assign;function h(e){return e.trim()}function m(e,t,n){return e.replace(t,n)}function v(e,t){return e.indexOf(t)}function g(e,t){return 0|e.charCodeAt(t)}function b(e,t,n){return e.slice(t,n)}function y(e){return e.length}function w(e){return e.length}function x(e,t){return t.push(e),e}var k=1,S=1,C=0,O=0,A=0,R="";function P(e,t,n,r,o,a,s){return{value:e,root:t,parent:n,type:r,props:o,children:a,line:k,column:S,length:s,return:""}}function E(e,t){return f(P("",null,null,"",null,null,0),e,{length:-e.length},t)}function D(){return A=O>0?g(R,--O):0,S--,10===A&&(S=1,k--),A}function _(){return A=O<C?g(R,O++):0,S++,10===A&&(S=1,k++),A}function I(){return g(R,O)}function F(){return O}function N(e,t){return b(R,e,t)}function B(e){switch(e){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function j(e){return k=S=1,C=y(R=e),O=0,[]}function T(e){return R="",e}function L(e){return h(N(O-1,M(91===e?e+2:40===e?e+1:e)))}function $(e){for(;(A=I())&&A<33;)_();return B(e)>2||B(A)>3?"":" "}function z(e,t){for(;--t&&_()&&!(A<48||A>102||A>57&&A<65||A>70&&A<97););return N(e,F()+(t<6&&32==I()&&32==_()))}function M(e){for(;_();)switch(A){case e:return O;case 34:case 39:34!==e&&39!==e&&M(A);break;case 40:41===e&&M(e);break;case 92:_()}return O}function q(e,t){for(;_()&&e+A!==57&&(e+A!==84||47!==I()););return"/*"+N(t,O-1)+"*"+d(47===e?e:_())}function H(e){for(;!B(I());)_();return N(e,O)}var K="-ms-",G="-moz-",U="-webkit-",W="comm",V="rule",X="decl",Y="@keyframes";function J(e,t){for(var n="",r=w(e),o=0;o<r;o++)n+=t(e[o],o,e,t)||"";return n}function Z(e,t,n,r){switch(e.type){case"@layer":if(e.children.length)break;case"@import":case X:return e.return=e.return||e.value;case W:return"";case Y:return e.return=e.value+"{"+J(e.children,r)+"}";case V:e.value=e.props.join(",")}return y(n=J(e.children,r))?e.return=e.value+"{"+n+"}":""}function Q(e){var t=w(e);return function(n,r,o,a){for(var s="",i=0;i<t;i++)s+=e[i](n,r,o,a)||"";return s}}function ee(e){return T(te("",null,null,null,[""],e=j(e),0,[0],e))}function te(e,t,n,r,o,a,s,i,c){for(var l=0,u=0,p=s,f=0,h=0,b=0,w=1,k=1,S=1,C=0,O="",A=o,R=a,P=r,E=O;k;)switch(b=C,C=_()){case 40:if(108!=b&&58==g(E,p-1)){-1!=v(E+=m(L(C),"&","&\f"),"&\f")&&(S=-1);break}case 34:case 39:case 91:E+=L(C);break;case 9:case 10:case 13:case 32:E+=$(b);break;case 92:E+=z(F()-1,7);continue;case 47:switch(I()){case 42:case 47:x(re(q(_(),F()),t,n),c);break;default:E+="/"}break;case 123*w:i[l++]=y(E)*S;case 125*w:case 59:case 0:switch(C){case 0:case 125:k=0;case 59+u:-1==S&&(E=m(E,/\f/g,"")),h>0&&y(E)-p&&x(h>32?oe(E+";",r,n,p-1):oe(m(E," ","")+";",r,n,p-2),c);break;case 59:E+=";";default:if(x(P=ne(E,t,n,l,u,o,i,O,A=[],R=[],p),a),123===C)if(0===u)te(E,t,P,P,A,a,p,i,R);else switch(99===f&&110===g(E,3)?100:f){case 100:case 108:case 109:case 115:te(e,P,P,r&&x(ne(e,P,P,0,0,o,i,O,o,A=[],p),R),o,R,p,i,r?A:R);break;default:te(E,P,P,P,[""],R,0,i,R)}}l=u=h=0,w=S=1,O=E="",p=s;break;case 58:p=1+y(E),h=b;default:if(w<1)if(123==C)--w;else if(125==C&&0==w++&&125==D())continue;switch(E+=d(C),C*w){case 38:S=u>0?1:(E+="\f",-1);break;case 44:i[l++]=(y(E)-1)*S,S=1;break;case 64:45===I()&&(E+=L(_())),f=I(),u=p=y(O=E+=H(F())),C++;break;case 45:45===b&&2==y(E)&&(w=0)}}return a}function ne(e,t,n,r,o,a,s,i,c,l,u){for(var d=o-1,f=0===o?a:[""],v=w(f),g=0,y=0,x=0;g<r;++g)for(var k=0,S=b(e,d+1,d=p(y=s[g])),C=e;k<v;++k)(C=h(y>0?f[k]+" "+S:m(S,/&\f/g,f[k])))&&(c[x++]=C);return P(e,t,n,0===o?V:i,c,l,u)}function re(e,t,n){return P(e,t,n,W,d(A),b(e,2,-2),0)}function oe(e,t,n,r){return P(e,t,n,X,b(e,0,r),b(e,r+1,-1),r)}var ae="undefined"!=typeof document,se=function(e,t,n){for(var r=0,o=0;r=o,o=I(),38===r&&12===o&&(t[n]=1),!B(o);)_();return N(e,O)},ie=new WeakMap,ce=function(e){if("rule"===e.type&&e.parent&&!(e.length<1)){for(var t=e.value,n=e.parent,r=e.column===n.column&&e.line===n.line;"rule"!==n.type;)if(!(n=n.parent))return;if((1!==e.props.length||58===t.charCodeAt(0)||ie.get(n))&&!r){ie.set(e,!0);for(var o=[],a=function(e,t){return T(function(e,t){var n=-1,r=44;do{switch(B(r)){case 0:38===r&&12===I()&&(t[n]=1),e[n]+=se(O-1,t,n);break;case 2:e[n]+=L(r);break;case 4:if(44===r){e[++n]=58===I()?"&\f":"",t[n]=e[n].length;break}default:e[n]+=d(r)}}while(r=_());return e}(j(e),t))}(t,o),s=n.props,i=0,c=0;i<a.length;i++)for(var l=0;l<s.length;l++,c++)e.props[c]=o[i]?a[i].replace(/&\f/g,s[l]):s[l]+" "+a[i]}}},le=function(e){if("decl"===e.type){var t=e.value;108===t.charCodeAt(0)&&98===t.charCodeAt(2)&&(e.return="",e.value="")}};function ue(e,t){switch(function(e,t){return 45^g(e,0)?(((t<<2^g(e,0))<<2^g(e,1))<<2^g(e,2))<<2^g(e,3):0}(e,t)){case 5103:return U+"print-"+e+e;case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return U+e+e;case 5349:case 4246:case 4810:case 6968:case 2756:return U+e+G+e+K+e+e;case 6828:case 4268:return U+e+K+e+e;case 6165:return U+e+K+"flex-"+e+e;case 5187:return U+e+m(e,/(\w+).+(:[^]+)/,U+"box-$1$2"+K+"flex-$1$2")+e;case 5443:return U+e+K+"flex-item-"+m(e,/flex-|-self/,"")+e;case 4675:return U+e+K+"flex-line-pack"+m(e,/align-content|flex-|-self/,"")+e;case 5548:return U+e+K+m(e,"shrink","negative")+e;case 5292:return U+e+K+m(e,"basis","preferred-size")+e;case 6060:return U+"box-"+m(e,"-grow","")+U+e+K+m(e,"grow","positive")+e;case 4554:return U+m(e,/([^-])(transform)/g,"$1"+U+"$2")+e;case 6187:return m(m(m(e,/(zoom-|grab)/,U+"$1"),/(image-set)/,U+"$1"),e,"")+e;case 5495:case 3959:return m(e,/(image-set\([^]*)/,U+"$1$`$1");case 4968:return m(m(e,/(.+:)(flex-)?(.*)/,U+"box-pack:$3"+K+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+U+e+e;case 4095:case 3583:case 4068:case 2532:return m(e,/(.+)-inline(.+)/,U+"$1$2")+e;case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:if(y(e)-1-t>6)switch(g(e,t+1)){case 109:if(45!==g(e,t+4))break;case 102:return m(e,/(.+:)(.+)-([^]+)/,"$1"+U+"$2-$3$1"+G+(108==g(e,t+3)?"$3":"$2-$3"))+e;case 115:return~v(e,"stretch")?ue(m(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(115!==g(e,t+1))break;case 6444:switch(g(e,y(e)-3-(~v(e,"!important")&&10))){case 107:return m(e,":",":"+U)+e;case 101:return m(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+U+(45===g(e,14)?"inline-":"")+"box$3$1"+U+"$2$3$1"+K+"$2box$3")+e}break;case 5936:switch(g(e,t+11)){case 114:return U+e+K+m(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return U+e+K+m(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return U+e+K+m(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return U+e+K+e+e}return e}var pe,de,fe=ae?void 0:(pe=function(){return e=Object.create(null),function(t){return void 0===e[t]&&(e[t]={}),e[t]};var e},de=new WeakMap,function(e){if(de.has(e))return de.get(e);var t=pe();return de.set(e,t),t}),he=[function(e,t,n,r){if(e.length>-1&&!e.return)switch(e.type){case X:e.return=ue(e.value,e.length);break;case Y:return J([E(e,{value:m(e.value,"@","@"+U)})],r);case V:if(e.length)return function(e,t){return e.map(t).join("")}(e.props,function(t){switch(function(e){return(e=/(::plac\w+|:read-\w+)/.exec(e))?e[0]:e}(t)){case":read-only":case":read-write":return J([E(e,{props:[m(t,/:(read-\w+)/,":-moz-$1")]})],r);case"::placeholder":return J([E(e,{props:[m(t,/:(plac\w+)/,":"+U+"input-$1")]}),E(e,{props:[m(t,/:(plac\w+)/,":-moz-$1")]}),E(e,{props:[m(t,/:(plac\w+)/,K+"input-$1")]})],r)}return""})}}],me=function(e){var t=e.key;if(ae&&"css"===t){var n=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(n,function(e){-1!==e.getAttribute("data-emotion").indexOf(" ")&&(document.head.appendChild(e),e.setAttribute("data-s",""))})}var r,o,a=e.stylisPlugins||he,s={},i=[];ae&&(r=e.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+t+' "]'),function(e){for(var t=e.getAttribute("data-emotion").split(" "),n=1;n<t.length;n++)s[t[n]]=!0;i.push(e)}));var c,l=[ce,le];if(fe){var p=[Z],d=Q(l.concat(a,p)),f=fe(a)(t);o=function(e,t,n,r){var o=t.name,a=function(e,t){var n=t.name;return void 0===f[n]&&(f[n]=J(ee(e?e+"{"+t.styles+"}":t.styles),d)),f[n]}(e,t);return void 0===g.compat?(r&&(g.inserted[o]=!0),a):r?void(g.inserted[o]=a):a}}else{var h,m=[Z,(c=function(e){h.insert(e)},function(e){e.root||(e=e.return)&&c(e)})],v=Q(l.concat(a,m));o=function(e,t,n,r){h=n,J(ee(e?e+"{"+t.styles+"}":t.styles),v),r&&(g.inserted[t.name]=!0)}}var g={key:t,sheet:new u({key:t,container:r,nonce:e.nonce,speedy:e.speedy,prepend:e.prepend,insertionPoint:e.insertionPoint}),nonce:e.nonce,inserted:s,registered:{},insert:o};return g.sheet.hydrate(i),g},ve="undefined"!=typeof document,ge=function(e,t,n){var r=e.key+"-"+t.name;(!1===n||!1===ve&&void 0!==e.compat)&&void 0===e.registered[r]&&(e.registered[r]=t.styles)},be={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,scale:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1};function ye(e){var t=Object.create(null);return function(n){return void 0===t[n]&&(t[n]=e(n)),t[n]}}var we=/[A-Z]|^ms/g,xe=/_EMO_([^_]+?)_([^]*?)_EMO_/g,ke=function(e){return 45===e.charCodeAt(1)},Se=function(e){return null!=e&&"boolean"!=typeof e},Ce=ye(function(e){return ke(e)?e:e.replace(we,"-$&").toLowerCase()}),Oe=function(e,t){switch(e){case"animation":case"animationName":if("string"==typeof t)return t.replace(xe,function(e,t,n){return Re={name:t,styles:n,next:Re},t})}return 1===be[e]||ke(e)||"number"!=typeof t||0===t?t:t+"px"};function Ae(e,t,n){if(null==n)return"";var r=n;if(void 0!==r.__emotion_styles)return r;switch(typeof n){case"boolean":return"";case"object":var o=n;if(1===o.anim)return Re={name:o.name,styles:o.styles,next:Re},o.name;var a=n;if(void 0!==a.styles){var s=a.next;if(void 0!==s)for(;void 0!==s;)Re={name:s.name,styles:s.styles,next:Re},s=s.next;return a.styles+";"}return function(e,t,n){var r="";if(Array.isArray(n))for(var o=0;o<n.length;o++)r+=Ae(e,t,n[o])+";";else for(var a in n){var s=n[a];if("object"!=typeof s){var i=s;null!=t&&void 0!==t[i]?r+=a+"{"+t[i]+"}":Se(i)&&(r+=Ce(a)+":"+Oe(a,i)+";")}else if(!Array.isArray(s)||"string"!=typeof s[0]||null!=t&&void 0!==t[s[0]]){var c=Ae(e,t,s);switch(a){case"animation":case"animationName":r+=Ce(a)+":"+c+";";break;default:r+=a+"{"+c+"}"}}else for(var l=0;l<s.length;l++)Se(s[l])&&(r+=Ce(a)+":"+Oe(a,s[l])+";")}return r}(e,t,n);case"function":if(void 0!==e){var i=Re,c=n(e);return Re=i,Ae(e,t,c)}}var l=n;if(null==t)return l;var u=t[l];return void 0!==u?u:l}var Re,Pe=/label:\s*([^\s;{]+)\s*(;|$)/g,Ee="undefined"!=typeof document,De=!!e.useInsertionEffect&&e.useInsertionEffect,_e=Ee&&De||function(e){return e()},Ie=(De||e.useLayoutEffect,"undefined"!=typeof document),Fe=e.createContext("undefined"!=typeof HTMLElement?me({key:"css"}):null);Fe.Provider;var Ne=function(t){return(0,e.forwardRef)(function(n,r){var o=(0,e.useContext)(Fe);return t(n,o,r)})};Ie||(Ne=function(t){return function(n){var r=(0,e.useContext)(Fe);return null===r?(r=me({key:"css"}),e.createElement(Fe.Provider,{value:r},t(n,r))):t(n,r)}});var Be=e.createContext({}),je=l,Te=function(e){return"theme"!==e},Le=function(e){return"string"==typeof e&&e.charCodeAt(0)>96?je:Te},$e=function(e,t,n){var r;if(t){var o=t.shouldForwardProp;r=e.__emotion_forwardProp&&o?function(t){return e.__emotion_forwardProp(t)&&o(t)}:o}return"function"!=typeof r&&n&&(r=e.__emotion_forwardProp),r},ze="undefined"!=typeof document,Me=function(t){var n=t.cache,r=t.serialized,o=t.isStringTag;ge(n,r,o);var a=_e(function(){return function(e,t,n){ge(e,t,n);var r=e.key+"-"+t.name;if(void 0===e.inserted[t.name]){var o="",a=t;do{var s=e.insert(t===a?"."+r:"",a,e.sheet,!0);ve||void 0===s||(o+=s),a=a.next}while(void 0!==a);if(!ve&&0!==o.length)return o}}(n,r,o)});if(!ze&&void 0!==a){for(var s,i=r.name,c=r.next;void 0!==c;)i+=" "+c.name,c=c.next;return e.createElement("style",((s={})["data-emotion"]=n.key+" "+i,s.dangerouslySetInnerHTML={__html:a},s.nonce=n.sheet.nonce,s))}return null},qe=(a(434),function t(n,r){var a,s,i=n.__emotion_real===n,c=i&&n.__emotion_base||n;void 0!==r&&(a=r.label,s=r.target);var l=$e(n,r,i),u=l||Le(c),p=!u("as");return function(){var d=arguments,f=i&&void 0!==n.__emotion_styles?n.__emotion_styles.slice(0):[];if(void 0!==a&&f.push("label:"+a+";"),null==d[0]||void 0===d[0].raw)f.push.apply(f,d);else{f.push(d[0][0]);for(var h=d.length,m=1;m<h;m++)f.push(d[m],d[0][m])}var v=Ne(function(t,n,r){var o,a,i,d,h=p&&t.as||c,m="",v=[],g=t;if(null==t.theme){for(var b in g={},t)g[b]=t[b];g.theme=e.useContext(Be)}"string"==typeof t.className?(o=n.registered,a=v,i=t.className,d="",i.split(" ").forEach(function(e){void 0!==o[e]?a.push(o[e]+";"):e&&(d+=e+" ")}),m=d):null!=t.className&&(m=t.className+" ");var y=function(e,t,n){if(1===e.length&&"object"==typeof e[0]&&null!==e[0]&&void 0!==e[0].styles)return e[0];var r=!0,o="";Re=void 0;var a=e[0];null==a||void 0===a.raw?(r=!1,o+=Ae(n,t,a)):o+=a[0];for(var s=1;s<e.length;s++)o+=Ae(n,t,e[s]),r&&(o+=a[s]);Pe.lastIndex=0;for(var i,c="";null!==(i=Pe.exec(o));)c+="-"+i[1];var l=function(e){for(var t,n=0,r=0,o=e.length;o>=4;++r,o-=4)t=1540483477*(65535&(t=255&e.charCodeAt(r)|(255&e.charCodeAt(++r))<<8|(255&e.charCodeAt(++r))<<16|(255&e.charCodeAt(++r))<<24))+(59797*(t>>>16)<<16),n=1540483477*(65535&(t^=t>>>24))+(59797*(t>>>16)<<16)^1540483477*(65535&n)+(59797*(n>>>16)<<16);switch(o){case 3:n^=(255&e.charCodeAt(r+2))<<16;case 2:n^=(255&e.charCodeAt(r+1))<<8;case 1:n=1540483477*(65535&(n^=255&e.charCodeAt(r)))+(59797*(n>>>16)<<16)}return(((n=1540483477*(65535&(n^=n>>>13))+(59797*(n>>>16)<<16))^n>>>15)>>>0).toString(36)}(o)+c;return{name:l,styles:o,next:Re}}(f.concat(v),n.registered,g);m+=n.key+"-"+y.name,void 0!==s&&(m+=" "+s);var w=p&&void 0===l?Le(h):u,x={};for(var k in t)p&&"as"===k||w(k)&&(x[k]=t[k]);return x.className=m,x.ref=r,e.createElement(e.Fragment,null,e.createElement(Me,{cache:n,serialized:y,isStringTag:"string"==typeof h}),e.createElement(h,x))});return v.displayName=void 0!==a?a:"Styled("+("string"==typeof c?c:c.displayName||c.name||"Component")+")",v.defaultProps=n.defaultProps,v.__emotion_real=v,v.__emotion_base=c,v.__emotion_styles=f,v.__emotion_forwardProp=l,Object.defineProperty(v,"toString",{value:function(){return"."+s}}),v.withComponent=function(e,n){return t(e,o({},r,n,{shouldForwardProp:$e(v,n,!0)})).apply(void 0,f)},v}}.bind());function He(e,t){return He=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},He(e,t)}["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","big","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","marquee","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr","circle","clipPath","defs","ellipse","foreignObject","g","image","line","linearGradient","mask","path","pattern","polygon","polyline","radialGradient","rect","stop","svg","text","tspan"].forEach(function(e){qe[e]=qe(e)}),a(602);var Ke=function(e){function n(){for(var n,r=arguments.length,o=Array(r),a=0;a<r;a++)o[a]=arguments[a];return(n=e.call.apply(e,[this].concat(o))||this).container=t().createRef(),n.handleClick=function(e){var t=n.container.current,r=e.target,o=n.props.onClickOutside;(t&&t===r||t&&!t.contains(r))&&o(e)},n}!function(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,He(e,t)}(n,e);var r=n.prototype;return r.componentDidMount=function(){document.addEventListener("click",this.handleClick,!0)},r.componentWillUnmount=function(){document.removeEventListener("click",this.handleClick,!0)},r.render=function(){var e=this.props,n=e.className,r=e.children;return t().createElement("div",{className:n,ref:this.container},r)},n}(t().Component);const Ge=Ke;var Ue,We,Ve,Xe=function(e,t,n){return!!t.find(function(t){return Ze(t,n.valueField)===e||Ze(t,n.labelField)===e})},Ye=function(e,t){return 4===e.length&&(e=""+e[1]+e[1]+e[2]+e[2]+e[3]+e[3]+"}"),"rgba("+parseInt(e.slice(1,3),16)+", "+parseInt(e.slice(3,5),16)+", "+parseInt(e.slice(5,7),16)+(t&&", "+t)+")"},Je=function(e,t){var n;return void 0===t&&(t=0),function(){for(var r=arguments.length,o=Array(r),a=0;a<r;a++)o[a]=arguments[a];n&&clearTimeout(n),n=setTimeout(function(){e.apply(void 0,o),n=null},t)}},Ze=function(e,t){return t?t.split(".").reduce(function(e,t){return e[t]},e):void 0},Qe=function(e,t,n){if(!t)return e;var r=Array.isArray(t)?t:t.split(".").filter(function(e){return e.length});return r.length?Qe(e[r.shift()],r,n):void 0===e?n:e},et=function(){return"undefined"==typeof window&&(global.window={}),window},tt="react-clean-select",nt=qe.span(Ue||(We=["\n padding: 0 5px;\n border-radius: 2px;\n line-height: 21px;\n margin: 3px 0 3px 5px;\n background: ",";\n color: #fff;\n display: flex;\n flex-direction: ",";\n \n\n .","-option-remove {\n cursor: pointer;\n width: 22px;\n height: 22px;\n display: inline-block;\n text-align: center;\n margin: 0 -5px 0 0px;\n border-radius: 0 3px 3px 0;\n\n :hover {\n color: tomato;\n }\n }\n\n :hover,\n :hover > span {\n opacity: 0.9;\n }\n"],Ve||(Ve=We.slice(0)),We.raw=Ve,Ue=We),function(e){return e.color},function(e){return"rtl"===e.direction?"row-reverse":"row"},tt);const rt=function(e){var n=e.item,r=e.props,o=e.state,a=e.methods;return n&&r.optionRenderer?r.optionRenderer({item:n,props:r,state:o,methods:a}):t().createElement(nt,{role:"listitem",disabled:r.disabled,direction:r.direction,className:tt+"-option",color:r.color},t().createElement("span",{className:tt+"-option-label"},Ze(n,r.labelField)),t().createElement("span",{className:tt+"-option-remove",onClick:function(e){return a.removeItem(e,n,r.closeOnSelect)}},"×"))};var ot;function at(e,t){return at=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},at(e,t)}var st=function(e,t){var n=e.addPlaceholder,r=e.searchable,o=e.placeholder,a=t.values&&0===t.values.length;return t.values&&0<t.values.length&&n&&r?n:a?o:""},it=function(e){function n(){for(var n,r=arguments.length,o=Array(r),a=0;a<r;a++)o[a]=arguments[a];return(n=e.call.apply(e,[this].concat(o))||this).input=t().createRef(),n.onBlur=function(e){return e.stopPropagation(),n.props.state.dropdown?n.input.current.focus():n.input.current.blur()},n.handleKeyPress=function(e){var t=n.props,r=t.props,o=t.state,a=t.methods;return r.create&&"Enter"===e.key&&!Xe(o.search,[].concat(o.values,r.options),n.props)&&o.search&&null===o.cursor&&a.createNew(o.search)},n}!function(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,at(e,t)}(n,e);var r=n.prototype;return r.componentDidUpdate=function(e){(this.props.state.dropdown||e.state.dropdown!==this.props.state.dropdown&&this.props.state.dropdown||this.props.props.autoFocus)&&this.input.current.focus(),e.state.dropdown===this.props.state.dropdown||this.props.state.dropdown||this.input.current.blur()},r.render=function(){var e=this.props,n=e.props,r=e.state,o=e.methods;return n.inputRenderer?n.inputRenderer({props:n,state:r,methods:o,inputRef:this.input}):t().createElement(ct,{ref:this.input,tabIndex:"-1",onFocus:function(e){return e.stopPropagation()},className:tt+"-input",size:o.getInputSize(),value:r.search,readOnly:!n.searchable,onClick:function(){return o.dropDown("open")},onKeyPress:this.handleKeyPress,onChange:o.setSearch,onBlur:this.onBlur,placeholder:st(n,r),disabled:n.disabled})},n}(e.Component),ct=qe.input(ot||(ot=function(e,t){return t||(t=e.slice(0)),e.raw=t,e}(["\n line-height: inherit;\n border: none;\n margin-left: 5px;\n background: transparent;\n padding: 0;\n width: calc("," + 5px);\n font-size: smaller;\n ","\n :focus {\n outline: none;\n }\n"])),function(e){return e.size+"ch"},function(e){return e.readOnly&&"cursor: pointer;"});const lt=it;var ut,pt=qe.div(ut||(ut=function(e,t){return t||(t=e.slice(0)),e.raw=t,e}(["\n display: flex;\n flex: 1;\n flex-wrap: wrap;\n"])));const dt=function(e){var n=e.props,r=e.state,o=e.methods;return t().createElement(pt,{className:tt+"-content "+(n.multi?tt+"-type-multi":tt+"-type-single"),onClick:function(e){return e.stopPropagation(),!0===r.dropdown&&n.closeOnClickInput&&!r.search?o.dropDown("close"):o.dropDown("open")}},n.contentRenderer?n.contentRenderer({props:n,state:r,methods:o}):t().createElement(t().Fragment,null,n.multi?r.values&&r.values.map(function(e){return t().createElement(rt,{key:""+Ze(e,n.valueField)+Ze(e,n.labelField),item:e,state:r,props:n,methods:o})}):r.values&&0<r.values.length&&t().createElement("span",null,Ze(r.values[0],n.labelField)),t().createElement(lt,{props:n,methods:o,state:r})))};var ft,ht=qe.div(ft||(ft=function(e,t){return t||(t=e.slice(0)),e.raw=t,e}(["\n padding: 10px;\n text-align: center;\n color: ",";\n"])),function(e){return e.color});const mt=function(e){var n=e.props,r=e.state,o=e.methods;return n.noDataRenderer?n.noDataRenderer({props:n,state:r,methods:o}):t().createElement(ht,{className:tt+"-no-data",color:n.color},n.noDataLabel)};var vt;function gt(e,t){return gt=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},gt(e,t)}var bt=function(e){function n(){for(var n,r=arguments.length,o=Array(r),a=0;a<r;a++)o[a]=arguments[a];return(n=e.call.apply(e,[this].concat(o))||this).item=t().createRef(),n}!function(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,gt(e,t)}(n,e);var r=n.prototype;return r.componentDidMount=function(){var e=this.props,t=e.props,n=e.methods;this.item.current&&!t.multi&&t.keepSelectedInList&&n.isSelected(this.props.item)&&this.item.current.scrollIntoView({block:"nearest",inline:"start"})},r.componentDidUpdate=function(){this.props.state.cursor===this.props.itemIndex&&this.item.current&&this.item.current.scrollIntoView({behavior:"smooth",block:"nearest",inline:"start"})},r.render=function(){var e=this.props,n=e.props,r=e.state,o=e.methods,a=e.item,s=e.itemIndex;return n.itemRenderer?n.itemRenderer({item:a,itemIndex:s,props:n,state:r,methods:o}):!n.keepSelectedInList&&o.isSelected(a)?null:t().createElement(yt,{role:"option",ref:this.item,"aria-selected":o.isSelected(a),"aria-disabled":a.disabled,"aria-label":Ze(a,n.labelField),disabled:a.disabled,key:""+Ze(a,n.valueField)+Ze(a,n.labelField),tabIndex:"-1",className:tt+"-item "+(o.isSelected(a)?tt+"-item-selected":"")+" "+(r.cursor===s?tt+"-item-active":"")+" "+(a.disabled?tt+"-item-disabled":""),onClick:a.disabled?void 0:function(){return o.addItem(a)},onKeyPress:a.disabled?void 0:function(){return o.addItem(a)},color:n.color},Ze(a,n.labelField)," ",a.disabled&&t().createElement("ins",null,n.disabledLabel))},n}(e.Component),yt=qe.span(vt||(vt=function(e,t){return t||(t=e.slice(0)),e.raw=t,e}(["\n padding: 5px 10px;\n cursor: pointer;\n border-bottom: 1px solid #fff;\n\n &.","-item-active {\n border-bottom: 1px solid #fff;\n ","\n }\n\n :hover,\n :focus {\n background: ",";\n outline: none;\n }\n\n &.","-item-selected {\n ","\n }\n\n ","\n"])),tt,function(e){var t=e.disabled,n=e.color;return!t&&n&&"background: "+Ye(n,.1)+";"},function(e){var t=e.color;return t&&Ye(t,.1)},tt,function(e){var t=e.disabled,n=e.color;return t?"\n background: #f2f2f2;\n color: #ccc;\n ":"\n background: "+n+";\n color: #fff;\n border-bottom: 1px solid #fff;\n "},function(e){return e.disabled?"\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 ":""});const wt=bt;var xt,kt,St;function Ct(e,t){return t||(t=e.slice(0)),e.raw=t,e}var Ot=function(e,t){var n=t.getSelectRef().getBoundingClientRect(),r=n.bottom+parseInt(e.dropdownHeight,10)+parseInt(e.dropdownGap,10);return"auto"===e.dropdownPosition?r>et().innerHeight&&r>n.top?"top":"bottom":e.dropdownPosition},At=qe.div(xt||(xt=Ct(["\n position: absolute;\n ",";\n\n ",";\n border: 1px solid #ccc;\n width: ","px;\n padding: 0;\n display: flex;\n flex-direction: column;\n background: #fff;\n border-radius: 2px;\n box-shadow: 0 0 10px 0 ",";\n max-height: ",";\n overflow: auto;\n z-index: 9;\n\n :focus {\n outline: none;\n }\n}\n"])),function(e){var t=e.selectBounds,n=e.dropdownGap;return"top"===e.dropdownPosition?"bottom: "+(t.height+2+n)+"px":"top: "+(t.height+2+n)+"px"},function(e){var t=e.selectBounds,n=e.dropdownGap,r=e.dropdownPosition;return e.portal?"\n position: fixed;\n "+("bottom"===r?"top: "+(t.bottom+n)+"px;":"bottom: "+(et().innerHeight-t.top+n)+"px;")+"\n left: "+(t.left-1)+"px;":"left: -1px;"},function(e){return e.selectBounds.width},function(){return Ye("#000000",.2)},function(e){return e.dropdownHeight}),Rt=qe.div(kt||(kt=Ct(["\n color: ",";\n padding: 5px 10px;\n\n :hover {\n background: ",";\n outline: none;\n cursor: pointer;\n }\n"])),function(e){return e.color},function(e){var t=e.color;return t&&Ye(t,.1)}),Pt=qe.div(St||(St=Ct(["\n color: ",";\n padding: 5px 10px;\n position: sticky;\n bottom: 0;\n margin: 0;\n opacity: 1;\n background: #fff;\n box-shadow: 0 0 10px 0 ",";\n\n :hover {\n outline: none;\n cursor: pointer;\n }\n"])),function(e){return e.color},function(){return Ye("#000000",.2)});const Et=function(e){var n=e.props,r=e.state,o=e.methods;return t().createElement(At,{tabIndex:"-1","aria-expanded":"true",role:"list",dropdownPosition:Ot(n,o),selectBounds:r.selectBounds,portal:n.portal,dropdownGap:n.dropdownGap,dropdownHeight:n.dropdownHeight,className:tt+"-dropdown "+tt+"-dropdown-position-"+Ot(n,o)},n.dropdownRenderer?n.dropdownRenderer({props:n,state:r,methods:o}):t().createElement(t().Fragment,null,n.create&&r.search&&!Xe(r.search,[].concat(r.values,n.options),n)&&t().createElement(Rt,{role:"button",className:tt+"-dropdown-add-new",color:n.color,onClick:function(){return o.createNew(r.search)}},n.createNewLabel.replace("{search}",'"'+r.search+'"')),0===r.searchResults.length?t().createElement(mt,{className:tt+"-no-data",state:r,props:n,methods:o}):r.searchResults.map(function(e,a){return t().createElement(wt,{key:e[n.valueField].toString(),item:e,itemIndex:a,state:r,props:n,methods:o})}),n.selectAll&&n.options&&n.multi&&t().createElement(Pt,{role:"button",className:tt+"-dropdown-select-all",color:n.color,onClick:function(){return o.areAllSelected()?o.clearAll():o.selectAll()}},o.areAllSelected()?n.clearAllLabel:n.selectAllLabel)))};var Dt,_t=qe.div(Dt||(Dt=function(e,t){return t||(t=e.slice(0)),e.raw=t,e}(["\n @keyframes dual-ring-spin {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(180deg);\n }\n }\n\n padding: 0 5px;\n display: block;\n width: auto;\n height: auto;\n\n :after {\n content: ' ';\n display: block;\n width: 16px;\n height: 16px;\n border-radius: 50%;\n border-width: 1px;\n border-style: solid;\n border-color: "," transparent;\n animation: dual-ring-spin 0.7s ease-in-out infinite;\n margin: 0 0 0 -10px;\n }\n"])),function(e){return e.color});const It=function(e){var n=e.props;return n.loadingRenderer?n.loadingRenderer({props:n}):t().createElement(_t,{className:tt+"-loading",color:n.color})};var Ft,Nt=qe.div(Ft||(Ft=function(e,t){return t||(t=e.slice(0)),e.raw=t,e}(["\n line-height: 25px;\n margin: 0 10px;\n cursor: pointer;\n\n :focus {\n outline: none;\n }\n\n :hover {\n color: tomato;\n }\n"])));const Bt=function(e){var n=e.props,r=e.state,o=e.methods;return n.clearRenderer?n.clearRenderer({props:n,state:r,methods:o}):t().createElement(Nt,{className:tt+"-clear",tabIndex:"-1",onClick:function(){return o.clearAll()},onKeyPress:function(){return o.clearAll()}},"×")};var jt,Tt=qe.div(jt||(jt=function(e,t){return t||(t=e.slice(0)),e.raw=t,e}(["\n border-left: 1px solid #ccc;\n width: 1px;\n height: 25px;\n display: block;\n"])));const Lt=function(e){var n=e.props,r=e.state,o=e.methods;return n.separatorRenderer?n.separatorRenderer({props:n,state:r,methods:o}):t().createElement(Tt,{className:tt+"-separator"})};var $t,zt=qe.div($t||($t=function(e,t){return t||(t=e.slice(0)),e.raw=t,e}(["\n text-align: center;\n ",";\n cursor: pointer;\n\n svg {\n width: 16px;\n height: 16px;\n }\n\n :hover {\n path {\n stroke: ",";\n }\n }\n\n :focus {\n outline: none;\n\n path {\n stroke: ",";\n }\n }\n"])),function(e){var t=e.dropdownOpen,n=e.rotate;return t?"\n pointer-events: all;\n "+(n?"transform: rotate(0deg);margin: 0px 0 -3px 5px;":"")+"\n ":"\n pointer-events: none;\n "+(n?"margin: 0 0 0 5px;transform: rotate(180deg);":"")+"\n "},function(e){return e.color},function(e){return e.color});const Mt=function(e){var n=e.props,r=e.state,o=e.methods;return t().createElement(zt,{tabIndex:"-1",onClick:function(e){return o.dropDown(r.dropdown?"close":"open",e)},dropdownOpen:r.dropdown,onKeyPress:function(e){return o.dropDown("toggle",e)},onKeyDown:function(e){return o.dropDown("toggle",e)},className:tt+"-dropdown-handle",rotate:n.dropdownHandleRenderer?0:1,color:n.color},n.dropdownHandleRenderer?n.dropdownHandleRenderer({props:n,state:r,methods:o}):t().createElement("svg",{fill:"currentColor",viewBox:"0 0 40 40"},t().createElement("path",{d:"M31 26.4q0 .3-.2.5l-1.1 1.2q-.3.2-.6.2t-.5-.2l-8.7-8.8-8.8 8.8q-.2.2-.5.2t-.5-.2l-1.2-1.2q-.2-.2-.2-.5t.2-.5l10.4-10.4q.3-.2.6-.2t.5.2l10.4 10.4q.2.2.2.5z"})))};var qt;function Ht(){return Ht=Object.assign?Object.assign.bind():function(e){for(var t,n=1;n<arguments.length;n++)for(var r in t=arguments[n])({}).hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},Ht.apply(null,arguments)}function Kt(e,t){return Kt=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Kt(e,t)}var Gt=function(e){function n(n){var o;return(o=e.call(this,n)||this).onDropdownClose=function(){o.setState({cursor:null}),o.props.onDropdownClose()},o.onScroll=function(){o.props.closeOnScroll&&o.dropDown("close"),o.updateSelectBounds()},o.updateSelectBounds=function(){return o.select.current&&o.setState({selectBounds:o.select.current.getBoundingClientRect()})},o.getSelectBounds=function(){return o.state.selectBounds},o.dropDown=function(e,t,n){void 0===e&&(e="toggle"),void 0===n&&(n=!1);var r=t&&t.target||t&&t.srcElement;return void 0!==o.props.onDropdownCloseRequest&&o.state.dropdown&&!1===n&&"close"===e?o.props.onDropdownCloseRequest({props:o.props,methods:o.methods,state:o.state,close:function(){return o.dropDown("close",null,!0)}}):o.props.portal&&!o.props.closeOnScroll&&!o.props.closeOnSelect&&t&&r&&r.offsetParent&&r.offsetParent.classList.contains("react-clean-select-dropdown")?void 0:o.props.keepOpen?o.setState({dropdown:!0}):"close"===e&&o.state.dropdown?(o.select.current.blur(),o.setState({dropdown:!1,search:o.props.clearOnBlur?"":o.state.search,searchResults:o.props.options})):"open"!==e||o.state.dropdown?"toggle"===e&&(o.select.current.focus(),o.setState({dropdown:!o.state.dropdown})):o.setState({dropdown:!0})},o.getSelectRef=function(){return o.select.current},o.addItem=function(e){if(o.props.multi){if(Xe(Ze(e,o.props.valueField),o.state.values,o.props))return o.removeItem(null,e,!1);o.setState({values:[].concat(o.state.values,[e])}),o.props.onSelect([].concat(o.state.values,[e]))}else o.setState({values:[e],dropdown:!1}),o.props.onSelect([e]);return o.props.clearOnSelect&&o.setState({search:""},function(){o.setState({searchResults:o.searchResults()})}),!0},o.removeItem=function(e,t,n){void 0===n&&(n=!1),e&&n&&(e.preventDefault(),e.stopPropagation(),o.dropDown("close"));var r=o.state.values.filter(function(e){return Ze(e,o.props.valueField)!==Ze(t,o.props.valueField)});o.setState({values:r}),o.props.onDeselect(r)},o.setSearch=function(e){o.setState({cursor:null}),o.setState({search:e.target.value},function(){o.setState({searchResults:o.searchResults()})})},o.getInputSize=function(){return o.state.search?o.state.search.length:0<o.state.values.length?o.props.addPlaceholder.length:o.props.placeholder.length},o.toggleSelectAll=function(){return o.setState({values:0===o.state.values.length?o.selectAll():o.clearAll()})},o.clearAll=function(){o.props.onClearAll(),o.setState({values:[]})},o.selectAll=function(e){void 0===e&&(e=[]),o.props.onSelectAll();var t=0<e.length?e:o.props.options.filter(function(e){return!e.disabled});o.setState({values:t})},o.isSelected=function(e){return!!o.state.values.find(function(t){return Ze(t,o.props.valueField)===Ze(e,o.props.valueField)})},o.areAllSelected=function(){return o.state.values.length===o.props.options.filter(function(e){return!e.disabled}).length},o.safeString=function(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")},o.sortBy=function(){var e=o.props,t=e.sortBy,n=e.options;return t?(n.sort(function(e,n){return Qe(e,t)<Qe(n,t)?-1:Qe(e,t)>Qe(n,t)?1:0}),n):n},o.searchFn=function(e){var t=e.state,n=e.methods,r=new RegExp(n.safeString(t.search),"i");return n.sortBy().filter(function(e){return r.test(Ze(e,o.props.searchBy)||Ze(e,o.props.valueField))})},o.searchResults=function(){var e={state:o.state,props:o.props,methods:o.methods};return o.props.searchFn(e)||o.searchFn(e)},o.activeCursorItem=function(e){return o.setState({activeCursorItem:e})},o.handleKeyDown=function(e){var t={event:e,state:o.state,props:o.props,methods:o.methods,setState:o.setState.bind(o)};return o.props.handleKeyDownFn(t)||o.handleKeyDownFn(t)},o.handleKeyDownFn=function(e){var t=e.event,n=e.state,r=e.props,a=e.methods,s=e.setState,i=n.cursor,c=n.searchResults,l="Escape"===t.key,u="Enter"===t.key,p="ArrowUp"===t.key,d="ArrowDown"===t.key,f="Backspace"===t.key,h="Tab"===t.key&&!t.shiftKey,m=t.shiftKey&&"Tab"===t.key;if(d&&!n.dropdown)return t.preventDefault(),o.dropDown("open"),s({cursor:0});if((d||h&&n.dropdown)&&null===i)return s({cursor:0});if((p||d||m&&n.dropdown||h&&n.dropdown)&&t.preventDefault(),l&&o.dropDown("close"),u){var v=c[i];if(v&&!v.disabled){if(r.create&&Xe(n.search,n.values,r))return null;a.addItem(v)}}return(d||h&&n.dropdown)&&c.length===i?s({cursor:0}):((d||h&&n.dropdown)&&s(function(e){return{cursor:e.cursor+1}}),(p||m&&n.dropdown)&&0<i&&s(function(e){return{cursor:e.cursor-1}}),(p||m&&n.dropdown)&&0===i&&s({cursor:c.length}),void(f&&r.backspaceDelete&&0===o.getInputSize()&&o.setState({values:o.state.values.slice(0,-1)})))},o.renderDropdown=function(){return o.props.portal?r().createPortal(t().createElement(Et,{props:o.props,state:o.state,methods:o.methods}),o.dropdownRoot):t().createElement(Et,{props:o.props,state:o.state,methods:o.methods})},o.createNew=function(e){var t,n=((t={})[o.props.labelField]=e,t[o.props.valueField]=e,t);o.addItem(n),o.props.onCreateNew(n),o.setState({search:""})},o.state={dropdown:!1,values:n.values,search:"",selectBounds:{},cursor:null,searchResults:n.options},o.methods={activeCursorItem:o.activeCursorItem,addItem:o.addItem,areAllSelected:o.areAllSelected,clearAll:o.clearAll,createNew:o.createNew,dropDown:o.dropDown,getInputSize:o.getInputSize,getSelectBounds:o.getSelectBounds,getSelectRef:o.getSelectRef,handleKeyDown:o.handleKeyDown,isSelected:o.isSelected,removeItem:o.removeItem,safeString:o.safeString,searchResults:o.searchResults,selectAll:o.selectAll,setSearch:o.setSearch,sortBy:o.sortBy,toggleSelectAll:o.toggleSelectAll},o.select=t().createRef(),o.dropdownRoot="undefined"!=typeof document&&document.createElement("div"),o}!function(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,Kt(e,t)}(n,e);var o=n.prototype;return o.componentDidMount=function(){this.props.portal&&this.props.portal.appendChild(this.dropdownRoot),et().addEventListener("resize",Je(this.updateSelectBounds)),et().addEventListener("scroll",Je(this.onScroll)),this.dropDown("close"),this.select&&this.updateSelectBounds(),this.props.defaultMenuIsOpen&&this.dropDown("open")},o.componentDidUpdate=function(e,t){var n=this;!this.props.compareValuesFunc(e.values,this.props.values)&&this.props.compareValuesFunc(e.values,t.values)&&(this.setState({values:this.props.values},function(){n.props.onChange(n.state.values)}),this.updateSelectBounds()),e.options!==this.props.options&&this.setState({searchResults:this.searchResults()}),t.values!==this.state.values&&(this.props.onChange(this.state.values),this.updateSelectBounds()),t.search!==this.state.search&&this.updateSelectBounds(),t.values!==this.state.values&&this.props.closeOnSelect&&this.dropDown("close"),e.multi!==this.props.multi&&this.updateSelectBounds(),t.dropdown&&t.dropdown!==this.state.dropdown&&this.onDropdownClose(),t.dropdown||t.dropdown===this.state.dropdown||this.props.onDropdownOpen()},o.componentWillUnmount=function(){this.props.portal&&this.props.portal.removeChild(this.dropdownRoot),et().removeEventListener("resize",Je(this.updateSelectBounds,this.props.debounceDelay)),et().removeEventListener("scroll",Je(this.onScroll,this.props.debounceDelay))},o.render=function(){var e=this;return t().createElement(Ge,{onClickOutside:function(t){return e.dropDown("close",t)}},t().createElement(Ut,Ht({onKeyDown:this.handleKeyDown,"aria-label":"Dropdown select","aria-expanded":this.state.dropdown,onClick:function(t){return e.dropDown("open",t)},tabIndex:this.props.disabled?"-1":"0",direction:this.props.direction,style:this.props.style,ref:this.select,disabled:this.props.disabled,className:tt+" "+this.props.className,color:this.props.color},this.props.additionalProps),t().createElement(dt,{props:this.props,state:this.state,methods:this.methods}),(this.props.name||this.props.required)&&t().createElement("input",{tabIndex:-1,style:{opacity:0,width:0,position:"absolute"},name:this.props.name,required:this.props.required,pattern:this.props.pattern,defaultValue:this.state.values.map(function(t){return t[e.props.labelField]}).toString()||[],disabled:this.props.disabled}),this.props.loading&&t().createElement(It,{props:this.props}),this.props.clearable&&t().createElement(Bt,{props:this.props,state:this.state,methods:this.methods}),this.props.separator&&t().createElement(Lt,{props:this.props,state:this.state,methods:this.methods}),this.props.dropdownHandle&&t().createElement(Mt,{onClick:function(){return e.select.current.focus()},props:this.props,state:this.state,methods:this.methods}),this.state.dropdown&&!this.props.disabled&&this.renderDropdown()))},n}(e.Component);Gt.defaultProps={addPlaceholder:"",additionalProps:null,autoFocus:!1,backspaceDelete:!0,clearAllLabel:"Clear all",clearOnBlur:!0,clearOnSelect:!0,clearable:!1,closeOnScroll:!1,closeOnSelect:!1,closeOnClickInput:!1,color:"#0074D9",compareValuesFunc:function(e,t){return JSON.stringify(e)===JSON.stringify(t)},create:!1,createNewLabel:"add {search}",debounceDelay:0,direction:"ltr",disabled:!1,disabledLabel:"disabled",dropdownGap:5,dropdownHandle:!0,dropdownHeight:"300px",dropdownPosition:"bottom",handleKeyDownFn:function(){},keepOpen:!1,keepSelectedInList:!0,labelField:"label",loading:!1,multi:!1,name:null,noDataLabel:"No data",onChange:function(){},onSelect:function(){},onDeselect:function(){},onClearAll:function(){},onCreateNew:function(){},onDropdownClose:function(){},onDropdownCloseRequest:void 0,onDropdownOpen:function(){},onSelectAll:function(){},options:[],pattern:void 0,placeholder:"Select...",portal:null,required:!1,searchBy:"label",searchFn:function(){},searchable:!0,selectAll:!1,selectAllLabel:"Select all",separator:!1,sortBy:null,valueField:"value",values:[],defaultMenuIsOpen:!1};var Ut=qe.div(qt||(qt=function(e,t){return t||(t=e.slice(0)),e.raw=t,e}(["\n box-sizing: border-box;\n position: relative;\n display: flex;\n border: 1px solid #ccc;\n width: 100%;\n border-radius: 2px;\n padding: 2px 5px;\n flex-direction: row;\n direction: ",";\n align-items: center;\n cursor: pointer;\n min-height: 36px;\n\n ","\n :hover,\n :focus-within {\n border-color: ",";\n }\n\n :focus,\n :focus-within {\n outline: 0;\n box-shadow: 0 0 0 3px ",";\n }\n\n * {\n box-sizing: border-box;\n }\n"])),function(e){return e.direction},function(e){return e.disabled?"cursor: not-allowed;pointer-events: none;opacity: 0.3;":"pointer-events: all;"},function(e){return e.color},function(e){var t=e.color;return Ye(t,.2)});const Wt=Gt})(),s})());
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react"),require("react-dom"),require("prop-types")):"function"==typeof define&&define.amd?define("reactDropdownSelect",["react","react-dom","prop-types"],t):"object"==typeof exports?exports.reactDropdownSelect=t(require("react"),require("react-dom"),require("prop-types")):e.reactDropdownSelect=t(e.React,e.ReactDOM,e.PropTypes)}(this,(e,t,o)=>(()=>{"use strict";var r={602:e=>{e.exports=o},359:t=>{t.exports=e},318:e=>{e.exports=t}},n={};function s(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,s),o.exports}s.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return s.d(t,{a:t}),t},s.d=(e,t)=>{for(var o in t)s.o(t,o)&&!s.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};return(()=>{s.r(a),s.d(a,{Select:()=>F,default:()=>P});var e=s(359),t=s.n(e),o=s(318),r=s.n(o),n=(s(602),"react-clean-select");function l(e,t){return l=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},l(e,t)}const p=function(e){function o(){for(var o,r=arguments.length,n=Array(r),s=0;s<r;s++)n[s]=arguments[s];return(o=e.call.apply(e,[this].concat(n))||this).container=t().createRef(),o.handleClick=function(e){var t=o.container.current,r=e.target,n=o.props.onClickOutside;(t&&t===r||t&&!t.contains(r))&&n(e)},o}!function(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,l(e,t)}(o,e);var r=o.prototype;return r.componentDidMount=function(){document.addEventListener("click",this.handleClick,!0)},r.componentWillUnmount=function(){document.removeEventListener("click",this.handleClick,!0)},r.render=function(){var e=this.props.children;return t().createElement("div",{className:n+"-container",ref:this.container},e)},o}(t().Component);var c=function(e,t,o){return!!t.find(function(t){return d(t,o.valueField)===e||d(t,o.labelField)===e})},i=function(e,t){var o;return void 0===t&&(t=0),function(){for(var r=arguments.length,n=Array(r),s=0;s<r;s++)n[s]=arguments[s];o&&clearTimeout(o),o=setTimeout(function(){e.apply(void 0,n),o=null},t)}},d=function(e,t){return t?t.split(".").reduce(function(e,t){return e[t]},e):void 0},u=function(e,t,o){if(!t)return e;var r=Array.isArray(t)?t:t.split(".").filter(function(e){return e.length});return r.length?u(e[r.shift()],r,o):void 0===e?o:e},h=function(){return"undefined"==typeof window&&(global.window={}),window};const f=function(e){var o=e.item,r=e.props,s=e.state,a=e.methods;return o&&r.optionRenderer?r.optionRenderer({item:o,props:r,state:s,methods:a}):t().createElement("span",{role:"listitem",disabled:r.disabled,className:n+"-option"+("rtl"===r.direction?" "+n+"-option-rtl":"")},t().createElement("span",{className:n+"-option-label"},d(o,r.labelField)),t().createElement("span",{className:n+"-option-remove",onClick:function(e){return a.removeItem(e,o,r.closeOnSelect)}},"×"))};function m(e,t){return m=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},m(e,t)}var v=function(e,t){var o=e.addPlaceholder,r=e.searchable,n=e.placeholder,s=t.values&&0===t.values.length;return t.values&&0<t.values.length&&o&&r?o:s?n:""};const w=function(e){function o(){for(var o,r=arguments.length,n=Array(r),s=0;s<r;s++)n[s]=arguments[s];return(o=e.call.apply(e,[this].concat(n))||this).input=t().createRef(),o.onBlur=function(e){return e.stopPropagation(),o.props.state.dropdown?o.input.current.focus():o.input.current.blur()},o.handleKeyPress=function(e){var t=o.props,r=t.props,n=t.state,s=t.methods;return r.create&&"Enter"===e.key&&!c(n.search,[].concat(n.values,r.options),o.props)&&n.search&&null===n.cursor&&s.createNew(n.search)},o}!function(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,m(e,t)}(o,e);var r=o.prototype;return r.componentDidUpdate=function(e){(this.props.state.dropdown||e.state.dropdown!==this.props.state.dropdown&&this.props.state.dropdown||this.props.props.autoFocus)&&this.input.current.focus(),e.state.dropdown===this.props.state.dropdown||this.props.state.dropdown||this.input.current.blur()},r.render=function(){var e=this.props,o=e.props,r=e.state,s=e.methods;return o.inputRenderer?o.inputRenderer({props:o,state:r,methods:s,inputRef:this.input}):t().createElement("input",{ref:this.input,tabIndex:"-1",onFocus:function(e){return e.stopPropagation()},className:n+"-input"+(o.searchable?"":" "+n+"-input-readonly"),value:r.search,onClick:function(){return s.dropDown("open")},onKeyPress:this.handleKeyPress,onChange:s.setSearch,onBlur:this.onBlur,placeholder:v(o,r),disabled:o.disabled})},o}(e.Component),b=function(e){var o=e.props,r=e.state,s=e.methods;return t().createElement("div",{className:n+"-content "+(o.multi?n+"-type-multi":n+"-type-single"),onClick:function(e){return e.stopPropagation(),!0===r.dropdown&&o.closeOnClickInput&&!r.search?s.dropDown("close"):s.dropDown("open")}},o.contentRenderer?o.contentRenderer({props:o,state:r,methods:s}):t().createElement(t().Fragment,null,o.multi?r.values&&r.values.map(function(e){return t().createElement(f,{key:""+d(e,o.valueField)+d(e,o.labelField),item:e,state:r,props:o,methods:s})}):r.values&&0<r.values.length&&t().createElement("span",null,d(r.values[0],o.labelField)),t().createElement(w,{props:o,methods:s,state:r})))},S=function(e){var o=e.props,r=e.state,s=e.methods;return o.noDataRenderer?o.noDataRenderer({props:o,state:r,methods:s}):t().createElement("div",{className:n+"-no-data"},o.noDataLabel)};function y(e,t){return y=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},y(e,t)}const g=function(e){function o(){for(var o,r=arguments.length,n=Array(r),s=0;s<r;s++)n[s]=arguments[s];return(o=e.call.apply(e,[this].concat(n))||this).item=t().createRef(),o}!function(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,y(e,t)}(o,e);var r=o.prototype;return r.componentDidMount=function(){var e=this.props,t=e.props,o=e.methods;this.item.current&&!t.multi&&t.keepSelectedInList&&o.isSelected(this.props.item)&&this.item.current.scrollIntoView({block:"nearest",inline:"start"})},r.componentDidUpdate=function(){this.props.state.cursor===this.props.itemIndex&&this.item.current&&this.item.current.scrollIntoView({behavior:"smooth",block:"nearest",inline:"start"})},r.render=function(){var e=this.props,o=e.props,r=e.state,s=e.methods,a=e.item,l=e.itemIndex;return o.itemRenderer?o.itemRenderer({item:a,itemIndex:l,props:o,state:r,methods:s}):!o.keepSelectedInList&&s.isSelected(a)?null:t().createElement("span",{role:"option",ref:this.item,"aria-selected":s.isSelected(a),"aria-disabled":a.disabled,"aria-label":d(a,o.labelField),key:""+d(a,o.valueField)+d(a,o.labelField),tabIndex:"-1",className:n+"-item"+(s.isSelected(a)?" "+n+"-item-selected":"")+(r.cursor===l?" "+n+"-item-active":"")+(a.disabled?" "+n+"-item-disabled":""),onClick:a.disabled?void 0:function(){return s.addItem(a)},onKeyPress:a.disabled?void 0:function(){return s.addItem(a)}},d(a,o.labelField)," ",a.disabled&&t().createElement("ins",null,o.disabledLabel))},o}(e.Component);var D=function(e,t){var o=t.getSelectRef().getBoundingClientRect(),r=o.bottom+parseInt(e.dropdownHeight,10)+parseInt(e.dropdownGap,10);return"auto"===e.dropdownPosition?r>h().innerHeight&&r>o.top?"top":"bottom":e.dropdownPosition};const R=function(e){var o=e.props,r=e.state,s=e.methods;return t().createElement("div",{tabIndex:"-1","aria-expanded":"true",role:"list",className:n+"-dropdown "+n+"-dropdown-position-"+D(o,s)},o.dropdownRenderer?o.dropdownRenderer({props:o,state:r,methods:s}):t().createElement(t().Fragment,null,o.create&&r.search&&!c(r.search,[].concat(r.values,o.options),o)&&t().createElement("div",{role:"button",className:n+"-dropdown-add-new",color:o.color,onClick:function(){return s.createNew(r.search)}},o.createNewLabel.replace("{search}",'"'+r.search+'"')),0===r.searchResults.length?t().createElement(S,{className:n+"-no-data",state:r,props:o,methods:s}):r.searchResults.map(function(e,n){return t().createElement(g,{key:e[o.valueField].toString(),item:e,itemIndex:n,state:r,props:o,methods:s})}),o.selectAll&&o.options&&o.multi&&t().createElement("div",{role:"button",className:n+"-dropdown-select-all",color:o.color,onClick:function(){return s.areAllSelected()?s.clearAll():s.selectAll()}},s.areAllSelected()?o.clearAllLabel:o.selectAllLabel)))},O=function(e){var o=e.props;return o.loadingRenderer?o.loadingRenderer({props:o}):t().createElement("div",{className:n+"-loading"})},E=function(e){var o=e.props,r=e.state,s=e.methods;return o.clearRenderer?o.clearRenderer({props:o,state:r,methods:s}):t().createElement("div",{className:n+"-clear",tabIndex:"-1",onClick:function(){return s.clearAll()},onKeyPress:function(){return s.clearAll()}},"×")},C=function(e){var o=e.props,r=e.state,s=e.methods;return o.separatorRenderer?o.separatorRenderer({props:o,state:r,methods:s}):t().createElement("div",{className:n+"-separator"})},I=function(e){var o=e.props,r=e.state,s=e.methods;return t().createElement("div",{tabIndex:"-1",onClick:function(e){return s.dropDown(r.dropdown?"close":"open",e)},onKeyPress:function(e){return s.dropDown("toggle",e)},onKeyDown:function(e){return s.dropDown("toggle",e)},className:n+"-dropdown-handle "+n+"-dropdown-handle-"+(r.dropdown?"open":"closed")+(o.dropdownHandleRenderer?"":" "+n+"-dropdown-handle-rotate")},o.dropdownHandleRenderer?o.dropdownHandleRenderer({props:o,state:r,methods:s}):t().createElement("svg",{fill:"currentColor",viewBox:"0 0 40 40"},t().createElement("path",{d:"M31 26.4q0 .3-.2.5l-1.1 1.2q-.3.2-.6.2t-.5-.2l-8.7-8.8-8.8 8.8q-.2.2-.5.2t-.5-.2l-1.2-1.2q-.2-.2-.2-.5t.2-.5l10.4-10.4q.3-.2.6-.2t.5.2l10.4 10.4q.2.2.2.5z"})))};function k(){return k=Object.assign?Object.assign.bind():function(e){for(var t,o=1;o<arguments.length;o++)for(var r in t=arguments[o])({}).hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},k.apply(null,arguments)}function A(e,t){return A=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},A(e,t)}var F=function(e){function o(o){var s;return(s=e.call(this,o)||this).onDropdownClose=function(){s.setState({cursor:null}),s.props.onDropdownClose()},s.onScroll=function(){s.props.closeOnScroll&&s.dropDown("close"),s.updateSelectBounds()},s.updateSelectBounds=function(){return s.select.current&&s.setState({selectBounds:s.select.current.getBoundingClientRect()})},s.getSelectBounds=function(){return s.state.selectBounds},s.dropDown=function(e,t,o){void 0===e&&(e="toggle"),void 0===o&&(o=!1);var r=t&&t.target||t&&t.srcElement;return void 0!==s.props.onDropdownCloseRequest&&s.state.dropdown&&!1===o&&"close"===e?s.props.onDropdownCloseRequest({props:s.props,methods:s.methods,state:s.state,close:function(){return s.dropDown("close",null,!0)}}):s.props.portal&&!s.props.closeOnScroll&&!s.props.closeOnSelect&&t&&r&&r.offsetParent&&r.offsetParent.classList.contains(n+"-dropdown")?void 0:s.props.keepOpen?s.setState({dropdown:!0}):"close"===e&&s.state.dropdown?(s.select.current.blur(),s.setState({dropdown:!1,search:s.props.clearOnBlur?"":s.state.search,searchResults:s.props.options})):"open"!==e||s.state.dropdown?"toggle"===e&&(s.select.current.focus(),s.setState({dropdown:!s.state.dropdown})):s.setState({dropdown:!0})},s.getSelectRef=function(){return s.select.current},s.addItem=function(e){if(s.props.multi){if(c(d(e,s.props.valueField),s.state.values,s.props))return s.removeItem(null,e,!1);s.setState({values:[].concat(s.state.values,[e])}),s.props.onSelect([].concat(s.state.values,[e]))}else s.setState({values:[e],dropdown:!1}),s.props.onSelect([e]);return s.props.clearOnSelect&&s.setState({search:""},function(){s.setState({searchResults:s.searchResults()})}),!0},s.removeItem=function(e,t,o){void 0===o&&(o=!1),e&&o&&(e.preventDefault(),e.stopPropagation(),s.dropDown("close"));var r=s.state.values.filter(function(e){return d(e,s.props.valueField)!==d(t,s.props.valueField)});s.setState({values:r}),s.props.onDeselect(r)},s.setSearch=function(e){s.setState({cursor:null}),s.setState({search:e.target.value},function(){s.setState({searchResults:s.searchResults()})})},s.getInputSize=function(){return s.state.search?s.state.search.length:0<s.state.values.length?s.props.addPlaceholder.length:s.props.placeholder.length},s.toggleSelectAll=function(){return s.setState({values:0===s.state.values.length?s.selectAll():s.clearAll()})},s.clearAll=function(){s.props.onClearAll(),s.setState({values:[]})},s.selectAll=function(e){void 0===e&&(e=[]),s.props.onSelectAll();var t=0<e.length?e:s.props.options.filter(function(e){return!e.disabled});s.setState({values:t})},s.isSelected=function(e){return!!s.state.values.find(function(t){return d(t,s.props.valueField)===d(e,s.props.valueField)})},s.areAllSelected=function(){return s.state.values.length===s.props.options.filter(function(e){return!e.disabled}).length},s.safeString=function(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")},s.sortBy=function(){var e=s.props,t=e.sortBy,o=e.options;return t?(o.sort(function(e,o){return u(e,t)<u(o,t)?-1:u(e,t)>u(o,t)?1:0}),o):o},s.searchFn=function(e){var t=e.state,o=e.methods,r=new RegExp(o.safeString(t.search),"i");return o.sortBy().filter(function(e){return r.test(d(e,s.props.searchBy)||d(e,s.props.valueField))})},s.searchResults=function(){var e={state:s.state,props:s.props,methods:s.methods};return s.props.searchFn(e)||s.searchFn(e)},s.activeCursorItem=function(e){return s.setState({activeCursorItem:e})},s.handleKeyDown=function(e){var t={event:e,state:s.state,props:s.props,methods:s.methods,setState:s.setState.bind(s)};return s.props.handleKeyDownFn(t)||s.handleKeyDownFn(t)},s.handleKeyDownFn=function(e){var t=e.event,o=e.state,r=e.props,n=e.methods,a=e.setState,l=o.cursor,p=o.searchResults,i="Escape"===t.key,d="Enter"===t.key,u="ArrowUp"===t.key,h="ArrowDown"===t.key,f="Backspace"===t.key,m="Tab"===t.key&&!t.shiftKey,v=t.shiftKey&&"Tab"===t.key;if(h&&!o.dropdown)return t.preventDefault(),s.dropDown("open"),a({cursor:0});if((h||m&&o.dropdown)&&null===l)return a({cursor:0});if((u||h||v&&o.dropdown||m&&o.dropdown)&&t.preventDefault(),i&&s.dropDown("close"),d){var w=p[l];if(w&&!w.disabled){if(r.create&&c(o.search,o.values,r))return null;n.addItem(w)}}return(h||m&&o.dropdown)&&p.length===l?a({cursor:0}):((h||m&&o.dropdown)&&a(function(e){return{cursor:e.cursor+1}}),(u||v&&o.dropdown)&&0<l&&a(function(e){return{cursor:e.cursor-1}}),(u||v&&o.dropdown)&&0===l&&a({cursor:p.length}),void(f&&r.backspaceDelete&&0===s.getInputSize()&&s.setState({values:s.state.values.slice(0,-1)})))},s.renderDropdown=function(){return s.props.portal?r().createPortal(t().createElement(R,{props:s.props,state:s.state,methods:s.methods}),s.dropdownRoot):t().createElement(R,{props:s.props,state:s.state,methods:s.methods})},s.createNew=function(e){var t,o=((t={})[s.props.labelField]=e,t[s.props.valueField]=e,t);s.addItem(o),s.props.onCreateNew(o),s.setState({search:""})},s.state={dropdown:!1,values:o.values,search:"",selectBounds:{},cursor:null,searchResults:o.options},s.methods={activeCursorItem:s.activeCursorItem,addItem:s.addItem,areAllSelected:s.areAllSelected,clearAll:s.clearAll,createNew:s.createNew,dropDown:s.dropDown,getInputSize:s.getInputSize,getSelectBounds:s.getSelectBounds,getSelectRef:s.getSelectRef,handleKeyDown:s.handleKeyDown,isSelected:s.isSelected,removeItem:s.removeItem,safeString:s.safeString,searchResults:s.searchResults,selectAll:s.selectAll,setSearch:s.setSearch,sortBy:s.sortBy,toggleSelectAll:s.toggleSelectAll},s.select=t().createRef(),s.dropdownRoot="undefined"!=typeof document&&document.createElement("div"),s}!function(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,A(e,t)}(o,e);var s=o.prototype;return s.componentDidMount=function(){this.props.portal&&this.props.portal.appendChild(this.dropdownRoot),h().addEventListener("resize",i(this.updateSelectBounds)),h().addEventListener("scroll",i(this.onScroll)),this.dropDown("close"),this.select&&this.updateSelectBounds(),this.props.defaultMenuIsOpen&&this.dropDown("open")},s.componentDidUpdate=function(e,t){var o=this;!this.props.compareValuesFunc(e.values,this.props.values)&&this.props.compareValuesFunc(e.values,t.values)&&(this.setState({values:this.props.values},function(){o.props.onChange(o.state.values)}),this.updateSelectBounds()),e.options!==this.props.options&&this.setState({searchResults:this.searchResults()}),t.values!==this.state.values&&(this.props.onChange(this.state.values),this.updateSelectBounds()),t.search!==this.state.search&&this.updateSelectBounds(),t.values!==this.state.values&&this.props.closeOnSelect&&this.dropDown("close"),e.multi!==this.props.multi&&this.updateSelectBounds(),t.dropdown&&t.dropdown!==this.state.dropdown&&this.onDropdownClose(),t.dropdown||t.dropdown===this.state.dropdown||this.props.onDropdownOpen()},s.componentWillUnmount=function(){this.props.portal&&this.props.portal.removeChild(this.dropdownRoot),h().removeEventListener("resize",i(this.updateSelectBounds,this.props.debounceDelay)),h().removeEventListener("scroll",i(this.onScroll,this.props.debounceDelay))},s.render=function(){var e=this,o=[n];return"rtl"===this.props.direction&&o.push(n+"-rtl"),this.props.disabled&&o.push(n+"-disabled"),void 0!==this.props.className&&o.push(this.props.className),t().createElement(p,{onClickOutside:function(t){return e.dropDown("close",t)}},t().createElement("div",k({onKeyDown:this.handleKeyDown,"aria-label":"Dropdown select","aria-expanded":this.state.dropdown,onClick:function(t){return e.dropDown("open",t)},tabIndex:this.props.disabled?"-1":"0",ref:this.select,className:o.join(" ")},this.props.additionalProps),t().createElement(b,{props:this.props,state:this.state,methods:this.methods}),(this.props.name||this.props.required)&&t().createElement("input",{tabIndex:-1,className:n+"-input-zero",name:this.props.name,required:this.props.required,pattern:this.props.pattern,defaultValue:this.state.values.map(function(t){return t[e.props.labelField]}).toString()||[],disabled:this.props.disabled}),this.props.loading&&t().createElement(O,{props:this.props}),this.props.clearable&&t().createElement(E,{props:this.props,state:this.state,methods:this.methods}),this.props.separator&&t().createElement(C,{props:this.props,state:this.state,methods:this.methods}),this.props.dropdownHandle&&t().createElement(I,{onClick:function(){return e.select.current.focus()},props:this.props,state:this.state,methods:this.methods}),this.state.dropdown&&!this.props.disabled&&this.renderDropdown()))},o}(e.Component);F.defaultProps={addPlaceholder:"",additionalProps:null,autoFocus:!1,backspaceDelete:!0,clearAllLabel:"Clear all",clearOnBlur:!0,clearOnSelect:!0,clearable:!1,closeOnScroll:!1,closeOnSelect:!1,closeOnClickInput:!1,compareValuesFunc:function(e,t){return JSON.stringify(e)===JSON.stringify(t)},create:!1,createNewLabel:"add {search}",debounceDelay:0,direction:"ltr",disabled:!1,disabledLabel:"disabled",dropdownGap:5,dropdownHandle:!0,dropdownHeight:"300px",dropdownPosition:"bottom",handleKeyDownFn:function(){},keepOpen:!1,keepSelectedInList:!0,labelField:"label",loading:!1,multi:!1,name:null,noDataLabel:"No data",onChange:function(){},onSelect:function(){},onDeselect:function(){},onClearAll:function(){},onCreateNew:function(){},onDropdownClose:function(){},onDropdownCloseRequest:void 0,onDropdownOpen:function(){},onSelectAll:function(){},options:[],pattern:void 0,placeholder:"Select...",portal:null,required:!1,searchBy:"label",searchFn:function(){},searchable:!0,selectAll:!1,selectAllLabel:"Select all",separator:!1,sortBy:null,valueField:"value",values:[],defaultMenuIsOpen:!1};const P=F})(),a})());
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react"),require("react-dom"),require("prop-types")):"function"==typeof define&&define.amd?define("reactDropdownSelect",["react","react-dom","prop-types"],t):"object"==typeof exports?exports.reactDropdownSelect=t(require("react"),require("react-dom"),require("prop-types")):e.reactDropdownSelect=t(e.React,e.ReactDOM,e.PropTypes)}(this,(e,t,r)=>(()=>{"use strict";var o={602:e=>{e.exports=r},359:t=>{t.exports=e},318:e=>{e.exports=t}},n={};function s(e){var t=n[e];if(void 0!==t)return t.exports;var r=n[e]={exports:{}};return o[e](r,r.exports,s),r.exports}s.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return s.d(t,{a:t}),t},s.d=(e,t)=>{for(var r in t)s.o(t,r)&&!s.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};return(()=>{s.r(a),s.d(a,{Select:()=>k,default:()=>A});var e=s(359),t=s.n(e),r=(s(318),s(602),"react-clean-select");function o(e,t){return o=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},o(e,t)}const n=function(e){function n(){for(var r,o=arguments.length,n=Array(o),s=0;s<o;s++)n[s]=arguments[s];return(r=e.call.apply(e,[this].concat(n))||this).container=t().createRef(),r.handleClick=function(e){var t=r.container.current,o=e.target,n=r.props.onClickOutside;(t&&t===o||t&&!t.contains(o))&&n(e)},r}!function(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,o(e,t)}(n,e);var s=n.prototype;return s.componentDidMount=function(){document.addEventListener("click",this.handleClick,!0)},s.componentWillUnmount=function(){document.removeEventListener("click",this.handleClick,!0)},s.render=function(){var e=this.props.children;return t().createElement("div",{className:r+"-container",ref:this.container},e)},n}(t().Component);var l=function(e,t,r){return!!t.find(function(t){return c(t,r.valueField)===e||c(t,r.labelField)===e})},p=function(e,t){var r;return void 0===t&&(t=0),function(){for(var o=arguments.length,n=Array(o),s=0;s<o;s++)n[s]=arguments[s];r&&clearTimeout(r),r=setTimeout(function(){e.apply(void 0,n),r=null},t)}},c=function(e,t){return t?t.split(".").reduce(function(e,t){return e[t]},e):void 0},i=function(e,t,r){if(!t)return e;var o=Array.isArray(t)?t:t.split(".").filter(function(e){return e.length});return o.length?i(e[o.shift()],o,r):void 0===e?r:e},d=function(){return"undefined"==typeof window&&(global.window={}),window};const u=function(e){var o=e.item,n=e.props,s=e.state,a=e.methods;return o&&n.optionRenderer?n.optionRenderer({item:o,props:n,state:s,methods:a}):t().createElement("span",{role:"listitem",disabled:n.disabled,className:r+"-option"+("rtl"===n.direction?" "+r+"-option-rtl":"")},t().createElement("span",{className:r+"-option-label"},c(o,n.labelField)),t().createElement("span",{className:r+"-option-remove",onClick:function(e){return a.removeItem(e,o,n.closeOnSelect)}},"×"))};function h(e,t){return h=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},h(e,t)}var f=function(e,t){var r=e.addPlaceholder,o=e.searchable,n=e.placeholder,s=t.values&&0===t.values.length;return t.values&&0<t.values.length&&r&&o?r:s?n:""};const m=function(e){function o(){for(var r,o=arguments.length,n=Array(o),s=0;s<o;s++)n[s]=arguments[s];return(r=e.call.apply(e,[this].concat(n))||this).input=t().createRef(),r.onBlur=function(e){return e.stopPropagation(),r.props.state.dropdown?r.input.current.focus():r.input.current.blur()},r.handleKeyPress=function(e){var t=r.props,o=t.props,n=t.state,s=t.methods;return o.create&&"Enter"===e.key&&!l(n.search,[].concat(n.values,o.options),r.props)&&n.search&&null===n.cursor&&s.createNew(n.search)},r}!function(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,h(e,t)}(o,e);var n=o.prototype;return n.componentDidUpdate=function(e){(this.props.state.dropdown||e.state.dropdown!==this.props.state.dropdown&&this.props.state.dropdown||this.props.props.autoFocus)&&this.input.current.focus(),e.state.dropdown===this.props.state.dropdown||this.props.state.dropdown||this.input.current.blur()},n.render=function(){var e=this.props,o=e.props,n=e.state,s=e.methods;return o.inputRenderer?o.inputRenderer({props:o,state:n,methods:s,inputRef:this.input}):t().createElement("input",{ref:this.input,tabIndex:"-1",onFocus:function(e){return e.stopPropagation()},className:r+"-input"+(o.searchable?"":" "+r+"-input-readonly"),value:n.search,onClick:function(){return s.dropDown("open")},onKeyPress:this.handleKeyPress,onChange:s.setSearch,onBlur:this.onBlur,placeholder:f(o,n),disabled:o.disabled})},o}(e.Component),v=function(e){var o=e.props,n=e.state,s=e.methods;return t().createElement("div",{className:r+"-content "+(o.multi?r+"-type-multi":r+"-type-single"),onClick:function(e){return e.stopPropagation(),!0===n.dropdown&&o.closeOnClickInput&&!n.search?s.dropDown("close"):s.dropDown("open")}},o.contentRenderer?o.contentRenderer({props:o,state:n,methods:s}):t().createElement(t().Fragment,null,o.multi?n.values&&n.values.map(function(e){return t().createElement(u,{key:""+c(e,o.valueField)+c(e,o.labelField),item:e,state:n,props:o,methods:s})}):n.values&&0<n.values.length&&t().createElement("span",null,c(n.values[0],o.labelField)),t().createElement(m,{props:o,methods:s,state:n})))},w=function(e){var o=e.props,n=e.state,s=e.methods;return o.noDataRenderer?o.noDataRenderer({props:o,state:n,methods:s}):t().createElement("div",{className:r+"-no-data"},o.noDataLabel)};function b(e,t){return b=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},b(e,t)}const S=function(e){function o(){for(var r,o=arguments.length,n=Array(o),s=0;s<o;s++)n[s]=arguments[s];return(r=e.call.apply(e,[this].concat(n))||this).item=t().createRef(),r}!function(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,b(e,t)}(o,e);var n=o.prototype;return n.componentDidMount=function(){var e=this.props,t=e.props,r=e.methods;this.item.current&&!t.multi&&t.keepSelectedInList&&r.isSelected(this.props.item)&&this.item.current.scrollIntoView({block:"nearest",inline:"start"})},n.componentDidUpdate=function(){this.props.state.cursor===this.props.itemIndex&&this.item.current&&this.item.current.scrollIntoView({behavior:"smooth",block:"nearest",inline:"start"})},n.render=function(){var e=this.props,o=e.props,n=e.state,s=e.methods,a=e.item,l=e.itemIndex;return o.itemRenderer?o.itemRenderer({item:a,itemIndex:l,props:o,state:n,methods:s}):!o.keepSelectedInList&&s.isSelected(a)?null:t().createElement("span",{role:"option",ref:this.item,"aria-selected":s.isSelected(a),"aria-disabled":a.disabled,"aria-label":c(a,o.labelField),key:""+c(a,o.valueField)+c(a,o.labelField),tabIndex:"-1",className:r+"-item"+(s.isSelected(a)?" "+r+"-item-selected":"")+(n.cursor===l?" "+r+"-item-active":"")+(a.disabled?" "+r+"-item-disabled":""),onClick:a.disabled?void 0:function(){return s.addItem(a)},onKeyPress:a.disabled?void 0:function(){return s.addItem(a)}},c(a,o.labelField)," ",a.disabled&&t().createElement("ins",null,o.disabledLabel))},o}(e.Component);var y=function(e,t){var r=t.getSelectRef().getBoundingClientRect(),o=r.bottom+parseInt(e.dropdownHeight,10)+parseInt(e.dropdownGap,10);return"auto"===e.dropdownPosition?o>d().innerHeight&&o>r.top?"top":"bottom":e.dropdownPosition};const g=function(e){var o=e.props,n=e.state,s=e.methods;return t().createElement("div",{tabIndex:"-1","aria-expanded":"true",role:"list",className:r+"-dropdown "+r+"-dropdown-position-"+y(o,s)},o.dropdownRenderer?o.dropdownRenderer({props:o,state:n,methods:s}):t().createElement(t().Fragment,null,o.create&&n.search&&!l(n.search,[].concat(n.values,o.options),o)&&t().createElement("div",{role:"button",className:r+"-dropdown-add-new",color:o.color,onClick:function(){return s.createNew(n.search)}},o.createNewLabel.replace("{search}",'"'+n.search+'"')),0===n.searchResults.length?t().createElement(w,{className:r+"-no-data",state:n,props:o,methods:s}):n.searchResults.map(function(e,r){return t().createElement(S,{key:e[o.valueField].toString(),item:e,itemIndex:r,state:n,props:o,methods:s})}),o.selectAll&&o.options&&o.multi&&t().createElement("div",{role:"button",className:r+"-dropdown-select-all",color:o.color,onClick:function(){return s.areAllSelected()?s.clearAll():s.selectAll()}},s.areAllSelected()?o.clearAllLabel:o.selectAllLabel)))},D=function(e){var o=e.props;return o.loadingRenderer?o.loadingRenderer({props:o}):t().createElement("div",{className:r+"-loading"})},R=function(e){var o=e.props,n=e.state,s=e.methods;return o.clearRenderer?o.clearRenderer({props:o,state:n,methods:s}):t().createElement("div",{className:r+"-clear",tabIndex:"-1",onClick:function(){return s.clearAll()},onKeyPress:function(){return s.clearAll()}},"×")},O=function(e){var o=e.props,n=e.state,s=e.methods;return o.separatorRenderer?o.separatorRenderer({props:o,state:n,methods:s}):t().createElement("div",{className:r+"-separator"})},E=function(e){var o=e.props,n=e.state,s=e.methods;return t().createElement("div",{tabIndex:"-1",onClick:function(e){return s.dropDown(n.dropdown?"close":"open",e)},onKeyPress:function(e){return s.dropDown("toggle",e)},onKeyDown:function(e){return s.dropDown("toggle",e)},className:r+"-dropdown-handle "+r+"-dropdown-handle-"+(n.dropdown?"open":"closed")+(o.dropdownHandleRenderer?"":" "+r+"-dropdown-handle-rotate")},o.dropdownHandleRenderer?o.dropdownHandleRenderer({props:o,state:n,methods:s}):t().createElement("svg",{fill:"currentColor",viewBox:"0 0 40 40"},t().createElement("path",{d:"M31 26.4q0 .3-.2.5l-1.1 1.2q-.3.2-.6.2t-.5-.2l-8.7-8.8-8.8 8.8q-.2.2-.5.2t-.5-.2l-1.2-1.2q-.2-.2-.2-.5t.2-.5l10.4-10.4q.3-.2.6-.2t.5.2l10.4 10.4q.2.2.2.5z"})))};function C(){return C=Object.assign?Object.assign.bind():function(e){for(var t,r=1;r<arguments.length;r++)for(var o in t=arguments[r])({}).hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},C.apply(null,arguments)}function I(e,t){return I=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},I(e,t)}var k=function(e){function o(r){var o;return(o=e.call(this,r)||this).onDropdownClose=function(){o.setState({cursor:null}),o.props.onDropdownClose()},o.onScroll=function(){o.props.closeOnScroll&&o.dropDown("close"),o.updateSelectBounds()},o.updateSelectBounds=function(){return o.select.current&&o.setState({selectBounds:o.select.current.getBoundingClientRect()})},o.getSelectBounds=function(){return o.state.selectBounds},o.dropDown=function(e,t,r){return void 0===e&&(e="toggle"),void 0===r&&(r=!1),t&&t.target||t&&t.srcElement,void 0!==o.props.onDropdownCloseRequest&&o.state.dropdown&&!1===r&&"close"===e?o.props.onDropdownCloseRequest({props:o.props,methods:o.methods,state:o.state,close:function(){return o.dropDown("close",null,!0)}}):o.props.keepOpen?o.setState({dropdown:!0}):"close"===e&&o.state.dropdown?(o.select.current.blur(),o.setState({dropdown:!1,search:o.props.clearOnBlur?"":o.state.search,searchResults:o.props.options})):"open"!==e||o.state.dropdown?"toggle"===e&&(o.select.current.focus(),o.setState({dropdown:!o.state.dropdown})):o.setState({dropdown:!0})},o.getSelectRef=function(){return o.select.current},o.addItem=function(e){if(o.props.multi){if(l(c(e,o.props.valueField),o.state.values,o.props))return o.removeItem(null,e,!1);o.setState({values:[].concat(o.state.values,[e])}),o.props.onSelect([].concat(o.state.values,[e]))}else o.setState({values:[e],dropdown:!1}),o.props.onSelect([e]);return o.props.clearOnSelect&&o.setState({search:""},function(){o.setState({searchResults:o.searchResults()})}),!0},o.removeItem=function(e,t,r){void 0===r&&(r=!1),e&&r&&(e.preventDefault(),e.stopPropagation(),o.dropDown("close"));var n=o.state.values.filter(function(e){return c(e,o.props.valueField)!==c(t,o.props.valueField)});o.setState({values:n}),o.props.onDeselect(n)},o.setSearch=function(e){o.setState({cursor:null}),o.setState({search:e.target.value},function(){o.setState({searchResults:o.searchResults()})})},o.getInputSize=function(){return o.state.search?o.state.search.length:0<o.state.values.length?o.props.addPlaceholder.length:o.props.placeholder.length},o.toggleSelectAll=function(){return o.setState({values:0===o.state.values.length?o.selectAll():o.clearAll()})},o.clearAll=function(){o.props.onClearAll(),o.setState({values:[]})},o.selectAll=function(e){void 0===e&&(e=[]),o.props.onSelectAll();var t=0<e.length?e:o.props.options.filter(function(e){return!e.disabled});o.setState({values:t})},o.isSelected=function(e){return!!o.state.values.find(function(t){return c(t,o.props.valueField)===c(e,o.props.valueField)})},o.areAllSelected=function(){return o.state.values.length===o.props.options.filter(function(e){return!e.disabled}).length},o.safeString=function(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")},o.sortBy=function(){var e=o.props,t=e.sortBy,r=e.options;return t?(r.sort(function(e,r){return i(e,t)<i(r,t)?-1:i(e,t)>i(r,t)?1:0}),r):r},o.searchFn=function(e){var t=e.state,r=e.methods,n=new RegExp(r.safeString(t.search),"i");return r.sortBy().filter(function(e){return n.test(c(e,o.props.searchBy)||c(e,o.props.valueField))})},o.searchResults=function(){var e={state:o.state,props:o.props,methods:o.methods};return o.props.searchFn(e)||o.searchFn(e)},o.activeCursorItem=function(e){return o.setState({activeCursorItem:e})},o.handleKeyDown=function(e){var t={event:e,state:o.state,props:o.props,methods:o.methods,setState:o.setState.bind(o)};return o.props.handleKeyDownFn(t)||o.handleKeyDownFn(t)},o.handleKeyDownFn=function(e){var t=e.event,r=e.state,n=e.props,s=e.methods,a=e.setState,p=r.cursor,c=r.searchResults,i="Escape"===t.key,d="Enter"===t.key,u="ArrowUp"===t.key,h="ArrowDown"===t.key,f="Backspace"===t.key,m="Tab"===t.key&&!t.shiftKey,v=t.shiftKey&&"Tab"===t.key;if(h&&!r.dropdown)return t.preventDefault(),o.dropDown("open"),a({cursor:0});if((h||m&&r.dropdown)&&null===p)return a({cursor:0});if((u||h||v&&r.dropdown||m&&r.dropdown)&&t.preventDefault(),i&&o.dropDown("close"),d){var w=c[p];if(w&&!w.disabled){if(n.create&&l(r.search,r.values,n))return null;s.addItem(w)}}return(h||m&&r.dropdown)&&c.length===p?a({cursor:0}):((h||m&&r.dropdown)&&a(function(e){return{cursor:e.cursor+1}}),(u||v&&r.dropdown)&&0<p&&a(function(e){return{cursor:e.cursor-1}}),(u||v&&r.dropdown)&&0===p&&a({cursor:c.length}),void(f&&n.backspaceDelete&&0===o.getInputSize()&&o.setState({values:o.state.values.slice(0,-1)})))},o.renderDropdown=function(){return t().createElement(g,{props:o.props,state:o.state,methods:o.methods})},o.createNew=function(e){var t,r=((t={})[o.props.labelField]=e,t[o.props.valueField]=e,t);o.addItem(r),o.props.onCreateNew(r),o.setState({search:""})},o.state={dropdown:!1,values:r.values,search:"",selectBounds:{},cursor:null,searchResults:r.options},o.methods={activeCursorItem:o.activeCursorItem,addItem:o.addItem,areAllSelected:o.areAllSelected,clearAll:o.clearAll,createNew:o.createNew,dropDown:o.dropDown,getInputSize:o.getInputSize,getSelectBounds:o.getSelectBounds,getSelectRef:o.getSelectRef,handleKeyDown:o.handleKeyDown,isSelected:o.isSelected,removeItem:o.removeItem,safeString:o.safeString,searchResults:o.searchResults,selectAll:o.selectAll,setSearch:o.setSearch,sortBy:o.sortBy,toggleSelectAll:o.toggleSelectAll},o.select=t().createRef(),o.dropdownRoot="undefined"!=typeof document&&document.createElement("div"),o}!function(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,I(e,t)}(o,e);var s=o.prototype;return s.componentDidMount=function(){d().addEventListener("resize",p(this.updateSelectBounds)),d().addEventListener("scroll",p(this.onScroll)),this.dropDown("close"),this.select&&this.updateSelectBounds(),this.props.defaultMenuIsOpen&&this.dropDown("open")},s.componentDidUpdate=function(e,t){var r=this;!this.props.compareValuesFunc(e.values,this.props.values)&&this.props.compareValuesFunc(e.values,t.values)&&(this.setState({values:this.props.values},function(){r.props.onChange(r.state.values)}),this.updateSelectBounds()),e.options!==this.props.options&&this.setState({searchResults:this.searchResults()}),t.values!==this.state.values&&(this.props.onChange(this.state.values),this.updateSelectBounds()),t.search!==this.state.search&&this.updateSelectBounds(),t.values!==this.state.values&&this.props.closeOnSelect&&this.dropDown("close"),e.multi!==this.props.multi&&this.updateSelectBounds(),t.dropdown&&t.dropdown!==this.state.dropdown&&this.onDropdownClose(),t.dropdown||t.dropdown===this.state.dropdown||this.props.onDropdownOpen()},s.componentWillUnmount=function(){d().removeEventListener("resize",p(this.updateSelectBounds,this.props.debounceDelay)),d().removeEventListener("scroll",p(this.onScroll,this.props.debounceDelay))},s.render=function(){var e=this,o=[r];return"rtl"===this.props.direction&&o.push(r+"-rtl"),this.props.disabled&&o.push(r+"-disabled"),void 0!==this.props.className&&o.push(this.props.className),t().createElement(n,{onClickOutside:function(t){return e.dropDown("close",t)}},t().createElement("div",C({onKeyDown:this.handleKeyDown,"aria-label":"Dropdown select","aria-expanded":this.state.dropdown,onClick:function(t){return e.dropDown("open",t)},tabIndex:this.props.disabled?"-1":"0",ref:this.select,className:o.join(" ")},this.props.additionalProps),t().createElement(v,{props:this.props,state:this.state,methods:this.methods}),(this.props.name||this.props.required)&&t().createElement("input",{tabIndex:-1,className:r+"-input-zero",name:this.props.name,required:this.props.required,pattern:this.props.pattern,defaultValue:this.state.values.map(function(t){return t[e.props.labelField]}).toString()||[],disabled:this.props.disabled}),this.props.loading&&t().createElement(D,{props:this.props}),this.props.clearable&&t().createElement(R,{props:this.props,state:this.state,methods:this.methods}),this.props.separator&&t().createElement(O,{props:this.props,state:this.state,methods:this.methods}),this.props.dropdownHandle&&t().createElement(E,{onClick:function(){return e.select.current.focus()},props:this.props,state:this.state,methods:this.methods}),this.state.dropdown&&!this.props.disabled&&this.renderDropdown()))},o}(e.Component);k.defaultProps={addPlaceholder:"",additionalProps:null,autoFocus:!1,backspaceDelete:!0,clearAllLabel:"Clear all",clearOnBlur:!0,clearOnSelect:!0,clearable:!1,closeOnScroll:!1,closeOnSelect:!1,closeOnClickInput:!1,compareValuesFunc:function(e,t){return JSON.stringify(e)===JSON.stringify(t)},create:!1,createNewLabel:"add {search}",debounceDelay:0,direction:"ltr",disabled:!1,disabledLabel:"disabled",dropdownGap:5,dropdownHandle:!0,dropdownHeight:"300px",dropdownPosition:"bottom",handleKeyDownFn:function(){},keepOpen:!1,keepSelectedInList:!0,labelField:"label",loading:!1,multi:!1,name:null,noDataLabel:"No data",onChange:function(){},onSelect:function(){},onDeselect:function(){},onClearAll:function(){},onCreateNew:function(){},onDropdownClose:function(){},onDropdownCloseRequest:void 0,onDropdownOpen:function(){},onSelectAll:function(){},options:[],pattern:void 0,placeholder:"Select...",required:!1,searchBy:"label",searchFn:function(){},searchable:!0,selectAll:!1,selectAllLabel:"Select all",separator:!1,sortBy:null,valueField:"value",values:[],defaultMenuIsOpen:!1};const A=k})(),a})());
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.__esModule=!0,exports.default=void 0;var _templateObject,_react=_interopRequireDefault(require("react")),_styled=_interopRequireDefault(require("@emotion/styled")),_constants=require("../constants");function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}function _taggedTemplateLiteralLoose(a,b){return b||(b=a.slice(0)),a.raw=b,a}var Clear=function(a){var b=a.props,c=a.state,d=a.methods;return b.clearRenderer?b.clearRenderer({props:b,state:c,methods:d}):/*#__PURE__*/_react.default.createElement(ClearComponent,{className:_constants.LIB_NAME+"-clear",tabIndex:"-1",onClick:function(){return d.clearAll()},onKeyPress:function(){return d.clearAll()}},"\xD7")},ClearComponent=_styled.default.div(_templateObject||(_templateObject=_taggedTemplateLiteralLoose(["\n line-height: 25px;\n margin: 0 10px;\n cursor: pointer;\n\n :focus {\n outline: none;\n }\n\n :hover {\n color: tomato;\n }\n"]))),_default=exports.default=Clear;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.__esModule=!0,exports.default=void 0;var _react=_interopRequireDefault(require("react")),_propTypes=_interopRequireDefault(require("prop-types"));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 ClickOutside=/*#__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.container=/*#__PURE__*/_react.default.createRef(),b.handleClick=function(a){var c=b.container.current,d=a.target,e=b.props.onClickOutside;(c&&c===d||c&&!c.contains(d))&&e(a)},b}_inheritsLoose(b,a);var c=b.prototype;return c.componentDidMount=function(){document.addEventListener("click",this.handleClick,!0)},c.componentWillUnmount=function(){document.removeEventListener("click",this.handleClick,!0)},c.render=function(){var a=this.props,b=a.className,c=a.children;return/*#__PURE__*/_react.default.createElement("div",{className:b,ref:this.container},c)},b}(_react.default.Component),_default=exports.default=ClickOutside;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.__esModule=!0,exports.default=void 0;var _templateObject,_react=_interopRequireDefault(require("react")),_styled=_interopRequireDefault(require("@emotion/styled")),_propTypes=_interopRequireDefault(require("prop-types")),_Option=_interopRequireDefault(require("./Option")),_Input=_interopRequireDefault(require("./Input")),_constants=require("../constants"),_util=require("../util"),_SelectPropsModel=_interopRequireDefault(require("../models/SelectPropsModel")),_SelectMethodsModel=_interopRequireDefault(require("../models/SelectMethodsModel")),_SelectStateModel=_interopRequireDefault(require("../models/SelectStateModel"));function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}function _taggedTemplateLiteralLoose(a,b){return b||(b=a.slice(0)),a.raw=b,a}var Content=function(a){var b=a.props,c=a.state,d=a.methods;return/*#__PURE__*/_react.default.createElement(ContentComponent,{className:_constants.LIB_NAME+"-content "+(b.multi?_constants.LIB_NAME+"-type-multi":_constants.LIB_NAME+"-type-single"),onClick:function(a){return a.stopPropagation(),!0===c.dropdown&&b.closeOnClickInput&&!c.search?d.dropDown("close"):d.dropDown("open")}},b.contentRenderer?b.contentRenderer({props:b,state:c,methods:d}):/*#__PURE__*/_react.default.createElement(_react.default.Fragment,null,b.multi?c.values&&c.values.map(function(a){return/*#__PURE__*/_react.default.createElement(_Option.default,{key:""+(0,_util.getByPath)(a,b.valueField)+(0,_util.getByPath)(a,b.labelField),item:a,state:c,props:b,methods:d})}):c.values&&0<c.values.length&&/*#__PURE__*/_react.default.createElement("span",null,(0,_util.getByPath)(c.values[0],b.labelField)),/*#__PURE__*/_react.default.createElement(_Input.default,{props:b,methods:d,state:c})))},ContentComponent=_styled.default.div(_templateObject||(_templateObject=_taggedTemplateLiteralLoose(["\n display: flex;\n flex: 1;\n flex-wrap: wrap;\n"]))),_default=exports.default=Content;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.__esModule=!0,exports.default=void 0;var _templateObject,_templateObject2,_templateObject3,_react=_interopRequireDefault(require("react")),_styled=_interopRequireDefault(require("@emotion/styled")),_constants=require("../constants"),_NoData=_interopRequireDefault(require("../components/NoData")),_Item=_interopRequireDefault(require("../components/Item")),_util=require("../util");function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}function _taggedTemplateLiteralLoose(a,b){return b||(b=a.slice(0)),a.raw=b,a}var dropdownPosition=function(a,b){var c=b.getSelectRef().getBoundingClientRect(),d=c.bottom+parseInt(a.dropdownHeight,10)+parseInt(a.dropdownGap,10);return"auto"===a.dropdownPosition?d>(0,_util.isomorphicWindow)().innerHeight&&d>c.top?"top":"bottom":a.dropdownPosition},Dropdown=function(a){var b=a.props,c=a.state,d=a.methods;return/*#__PURE__*/_react.default.createElement(DropDown,{tabIndex:"-1","aria-expanded":"true",role:"list",dropdownPosition:dropdownPosition(b,d),selectBounds:c.selectBounds,portal:b.portal,dropdownGap:b.dropdownGap,dropdownHeight:b.dropdownHeight,className:_constants.LIB_NAME+"-dropdown "+_constants.LIB_NAME+"-dropdown-position-"+dropdownPosition(b,d)},b.dropdownRenderer?b.dropdownRenderer({props:b,state:c,methods:d}):/*#__PURE__*/_react.default.createElement(_react.default.Fragment,null,b.create&&c.search&&!(0,_util.valueExistInSelected)(c.search,[].concat(c.values,b.options),b)&&/*#__PURE__*/_react.default.createElement(AddNew,{role:"button",className:_constants.LIB_NAME+"-dropdown-add-new",color:b.color,onClick:function(){return d.createNew(c.search)}},b.createNewLabel.replace("{search}","\""+c.search+"\"")),0===c.searchResults.length?/*#__PURE__*/_react.default.createElement(_NoData.default,{className:_constants.LIB_NAME+"-no-data",state:c,props:b,methods:d}):c.searchResults.map(function(a,e){return/*#__PURE__*/_react.default.createElement(_Item.default,{key:a[b.valueField].toString(),item:a,itemIndex:e,state:c,props:b,methods:d})}),b.selectAll&&b.options&&b.multi&&/*#__PURE__*/_react.default.createElement(SelectAll,{role:"button",className:_constants.LIB_NAME+"-dropdown-select-all",color:b.color,onClick:function(){return d.areAllSelected()?d.clearAll():d.selectAll()}},d.areAllSelected()?b.clearAllLabel:b.selectAllLabel)))},DropDown=_styled.default.div(_templateObject||(_templateObject=_taggedTemplateLiteralLoose(["\n position: absolute;\n ",";\n\n ",";\n border: 1px solid #ccc;\n width: ","px;\n padding: 0;\n display: flex;\n flex-direction: column;\n background: #fff;\n border-radius: 2px;\n box-shadow: 0 0 10px 0 ",";\n max-height: ",";\n overflow: auto;\n z-index: 9;\n\n :focus {\n outline: none;\n }\n}\n"])),function(a){var b=a.selectBounds,c=a.dropdownGap,d=a.dropdownPosition;return"top"===d?"bottom: "+(b.height+2+c)+"px":"top: "+(b.height+2+c)+"px"},function(a){var b=a.selectBounds,c=a.dropdownGap,d=a.dropdownPosition,e=a.portal;return e?"\n position: fixed;\n "+("bottom"===d?"top: "+(b.bottom+c)+"px;":"bottom: "+((0,_util.isomorphicWindow)().innerHeight-b.top+c)+"px;")+"\n left: "+(b.left-1)+"px;":"left: -1px;"},function(a){var b=a.selectBounds;return b.width},function(){return(0,_util.hexToRGBA)("#000000",.2)},function(a){var b=a.dropdownHeight;return b}),AddNew=_styled.default.div(_templateObject2||(_templateObject2=_taggedTemplateLiteralLoose(["\n color: ",";\n padding: 5px 10px;\n\n :hover {\n background: ",";\n outline: none;\n cursor: pointer;\n }\n"])),function(a){var b=a.color;return b},function(a){var b=a.color;return b&&(0,_util.hexToRGBA)(b,.1)}),SelectAll=_styled.default.div(_templateObject3||(_templateObject3=_taggedTemplateLiteralLoose(["\n color: ",";\n padding: 5px 10px;\n position: sticky;\n bottom: 0;\n margin: 0;\n opacity: 1;\n background: #fff;\n box-shadow: 0 0 10px 0 ",";\n\n :hover {\n outline: none;\n cursor: pointer;\n }\n"])),function(a){var b=a.color;return b},function(){return(0,_util.hexToRGBA)("#000000",.2)}),_default=exports.default=Dropdown;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.__esModule=!0,exports.default=void 0;var _templateObject,_react=_interopRequireDefault(require("react")),_styled=_interopRequireDefault(require("@emotion/styled")),_constants=require("../constants");function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}function _taggedTemplateLiteralLoose(a,b){return b||(b=a.slice(0)),a.raw=b,a}var DropdownHandle=function(a){var b=a.props,c=a.state,d=a.methods;return/*#__PURE__*/_react.default.createElement(DropdownHandleComponent,{tabIndex:"-1",onClick:function(a){return d.dropDown(c.dropdown?"close":"open",a)},dropdownOpen:c.dropdown,onKeyPress:function(a){return d.dropDown("toggle",a)},onKeyDown:function(a){return d.dropDown("toggle",a)},className:_constants.LIB_NAME+"-dropdown-handle",rotate:b.dropdownHandleRenderer?0:1,color:b.color},b.dropdownHandleRenderer?b.dropdownHandleRenderer({props:b,state:c,methods:d}):/*#__PURE__*/_react.default.createElement("svg",{fill:"currentColor",viewBox:"0 0 40 40"},/*#__PURE__*/_react.default.createElement("path",{d:"M31 26.4q0 .3-.2.5l-1.1 1.2q-.3.2-.6.2t-.5-.2l-8.7-8.8-8.8 8.8q-.2.2-.5.2t-.5-.2l-1.2-1.2q-.2-.2-.2-.5t.2-.5l10.4-10.4q.3-.2.6-.2t.5.2l10.4 10.4q.2.2.2.5z"})))},DropdownHandleComponent=_styled.default.div(_templateObject||(_templateObject=_taggedTemplateLiteralLoose(["\n text-align: center;\n ",";\n cursor: pointer;\n\n svg {\n width: 16px;\n height: 16px;\n }\n\n :hover {\n path {\n stroke: ",";\n }\n }\n\n :focus {\n outline: none;\n\n path {\n stroke: ",";\n }\n }\n"])),function(a){var b=a.dropdownOpen,c=a.rotate;return b?"\n pointer-events: all;\n "+(c?"transform: rotate(0deg);margin: 0px 0 -3px 5px;":"")+"\n ":"\n pointer-events: none;\n "+(c?"margin: 0 0 0 5px;transform: rotate(180deg);":"")+"\n "},function(a){var b=a.color;return b},function(a){var b=a.color;return b}),_default=exports.default=DropdownHandle;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.__esModule=!0,exports.default=void 0;var _templateObject,_react=_interopRequireWildcard(require("react")),_styled=_interopRequireDefault(require("@emotion/styled")),_util=require("../util"),PropTypes=_interopRequireWildcard(require("prop-types")),_constants=require("../constants");function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}function _interopRequireWildcard(a,b){if("function"==typeof WeakMap)var c=new WeakMap,d=new WeakMap;return(_interopRequireWildcard=function(a,b){if(!b&&a&&a.__esModule)return a;var e,g,h={__proto__:null,default:a};if(null===a||"object"!=typeof a&&"function"!=typeof a)return h;if(e=b?d:c){if(e.has(a))return e.get(a);e.set(a,h)}for(var f in a)"default"!=f&&{}.hasOwnProperty.call(a,f)&&((g=(e=Object.defineProperty)&&Object.getOwnPropertyDescriptor(a,f))&&(g.get||g.set)?e(h,f,g):h[f]=a[f]);return h})(a,b)}function _taggedTemplateLiteralLoose(a,b){return b||(b=a.slice(0)),a.raw=b,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 handlePlaceHolder=function(a,b){var c=a.addPlaceholder,d=a.searchable,e=a.placeholder,f=b.values&&0===b.values.length,g=b.values&&0<b.values.length;return g&&c&&d?c:f?e:g&&!d?"":""},Input=/*#__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.input=/*#__PURE__*/_react.default.createRef(),b.onBlur=function(a){return a.stopPropagation(),b.props.state.dropdown?b.input.current.focus():b.input.current.blur()},b.handleKeyPress=function(a){var c=b.props,d=c.props,e=c.state,f=c.methods;return d.create&&"Enter"===a.key&&!(0,_util.valueExistInSelected)(e.search,[].concat(e.values,d.options),b.props)&&e.search&&null===e.cursor&&f.createNew(e.search)},b}_inheritsLoose(b,a);var c=b.prototype;return c.componentDidUpdate=function(a){(this.props.state.dropdown||a.state.dropdown!==this.props.state.dropdown&&this.props.state.dropdown||this.props.props.autoFocus)&&this.input.current.focus(),a.state.dropdown===this.props.state.dropdown||this.props.state.dropdown||this.input.current.blur()},c.render=function(){var a=this.props,b=a.props,c=a.state,d=a.methods;return b.inputRenderer?b.inputRenderer({props:b,state:c,methods:d,inputRef:this.input}):/*#__PURE__*/_react.default.createElement(InputComponent,{ref:this.input,tabIndex:"-1",onFocus:function(a){return a.stopPropagation()},className:_constants.LIB_NAME+"-input",size:d.getInputSize(),value:c.search,readOnly:!b.searchable,onClick:function(){return d.dropDown("open")},onKeyPress:this.handleKeyPress,onChange:d.setSearch,onBlur:this.onBlur,placeholder:handlePlaceHolder(b,c),disabled:b.disabled})},b}(_react.Component),InputComponent=_styled.default.input(_templateObject||(_templateObject=_taggedTemplateLiteralLoose(["\n line-height: inherit;\n border: none;\n margin-left: 5px;\n background: transparent;\n padding: 0;\n width: calc("," + 5px);\n font-size: smaller;\n ","\n :focus {\n outline: none;\n }\n"])),function(a){var b=a.size;return b+"ch"},function(a){var b=a.readOnly;return b&&"cursor: pointer;"}),_default=exports.default=Input;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.__esModule=!0,exports.default=void 0;var _templateObject,_react=_interopRequireWildcard(require("react")),_styled=_interopRequireDefault(require("@emotion/styled")),_util=require("../util"),PropTypes=_interopRequireWildcard(require("prop-types")),_constants=require("../constants");function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}function _interopRequireWildcard(a,b){if("function"==typeof WeakMap)var c=new WeakMap,d=new WeakMap;return(_interopRequireWildcard=function(a,b){if(!b&&a&&a.__esModule)return a;var e,g,h={__proto__:null,default:a};if(null===a||"object"!=typeof a&&"function"!=typeof a)return h;if(e=b?d:c){if(e.has(a))return e.get(a);e.set(a,h)}for(var f in a)"default"!=f&&{}.hasOwnProperty.call(a,f)&&((g=(e=Object.defineProperty)&&Object.getOwnPropertyDescriptor(a,f))&&(g.get||g.set)?e(h,f,g):h[f]=a[f]);return h})(a,b)}function _taggedTemplateLiteralLoose(a,b){return b||(b=a.slice(0)),a.raw=b,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(){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(){this.props.state.cursor===this.props.itemIndex&&this.item.current&&this.item.current.scrollIntoView({behavior:"smooth",block:"nearest",inline:"start"})},c.render=function(){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=_styled.default.span(_templateObject||(_templateObject=_taggedTemplateLiteralLoose(["\n padding: 5px 10px;\n cursor: pointer;\n border-bottom: 1px solid #fff;\n\n &.","-item-active {\n border-bottom: 1px solid #fff;\n ","\n }\n\n :hover,\n :focus {\n background: ",";\n outline: none;\n }\n\n &.","-item-selected {\n ","\n }\n\n ","\n"])),_constants.LIB_NAME,function(a){var b=a.disabled,c=a.color;return!b&&c&&"background: "+(0,_util.hexToRGBA)(c,.1)+";"},function(a){var b=a.color;return b&&(0,_util.hexToRGBA)(b,.1)},_constants.LIB_NAME,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 ":""}),_default=exports.default=Item;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.__esModule=!0,exports.default=void 0;var _templateObject,_react=_interopRequireDefault(require("react")),_styled=_interopRequireDefault(require("@emotion/styled")),_constants=require("../constants");function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}function _taggedTemplateLiteralLoose(a,b){return b||(b=a.slice(0)),a.raw=b,a}var Loading=function(a){var b=a.props;return b.loadingRenderer?b.loadingRenderer({props:b}):/*#__PURE__*/_react.default.createElement(LoadingComponent,{className:_constants.LIB_NAME+"-loading",color:b.color})},LoadingComponent=_styled.default.div(_templateObject||(_templateObject=_taggedTemplateLiteralLoose(["\n @keyframes dual-ring-spin {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(180deg);\n }\n }\n\n padding: 0 5px;\n display: block;\n width: auto;\n height: auto;\n\n :after {\n content: ' ';\n display: block;\n width: 16px;\n height: 16px;\n border-radius: 50%;\n border-width: 1px;\n border-style: solid;\n border-color: "," transparent;\n animation: dual-ring-spin 0.7s ease-in-out infinite;\n margin: 0 0 0 -10px;\n }\n"])),function(a){var b=a.color;return b}),_default=exports.default=Loading;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.__esModule=!0,exports.default=void 0;var _templateObject,_react=_interopRequireDefault(require("react")),_styled=_interopRequireDefault(require("@emotion/styled")),_constants=require("../constants");function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}function _taggedTemplateLiteralLoose(a,b){return b||(b=a.slice(0)),a.raw=b,a}var NoData=function(a){var b=a.props,c=a.state,d=a.methods;return b.noDataRenderer?b.noDataRenderer({props:b,state:c,methods:d}):/*#__PURE__*/_react.default.createElement(NoDataComponent,{className:_constants.LIB_NAME+"-no-data",color:b.color},b.noDataLabel)},NoDataComponent=_styled.default.div(_templateObject||(_templateObject=_taggedTemplateLiteralLoose(["\n padding: 10px;\n text-align: center;\n color: ",";\n"])),function(a){var b=a.color;return b}),_default=exports.default=NoData;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.__esModule=!0,exports.default=void 0;var _templateObject,_react=_interopRequireDefault(require("react")),_styled=_interopRequireDefault(require("@emotion/styled")),_util=require("../util"),_constants=require("../constants");function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}function _taggedTemplateLiteralLoose(a,b){return b||(b=a.slice(0)),a.raw=b,a}var Option=function(a){var b=a.item,c=a.props,d=a.state,e=a.methods;return b&&c.optionRenderer?c.optionRenderer({item:b,props:c,state:d,methods:e}):/*#__PURE__*/_react.default.createElement(OptionComponent,{role:"listitem",disabled:c.disabled,direction:c.direction,className:_constants.LIB_NAME+"-option",color:c.color},/*#__PURE__*/_react.default.createElement("span",{className:_constants.LIB_NAME+"-option-label"},(0,_util.getByPath)(b,c.labelField)),/*#__PURE__*/_react.default.createElement("span",{className:_constants.LIB_NAME+"-option-remove",onClick:function(a){return e.removeItem(a,b,c.closeOnSelect)}},"\xD7"))},OptionComponent=_styled.default.span(_templateObject||(_templateObject=_taggedTemplateLiteralLoose(["\n padding: 0 5px;\n border-radius: 2px;\n line-height: 21px;\n margin: 3px 0 3px 5px;\n background: ",";\n color: #fff;\n display: flex;\n flex-direction: ",";\n \n\n .","-option-remove {\n cursor: pointer;\n width: 22px;\n height: 22px;\n display: inline-block;\n text-align: center;\n margin: 0 -5px 0 0px;\n border-radius: 0 3px 3px 0;\n\n :hover {\n color: tomato;\n }\n }\n\n :hover,\n :hover > span {\n opacity: 0.9;\n }\n"])),function(a){var b=a.color;return b},function(a){var b=a.direction;return"rtl"===b?"row-reverse":"row"},_constants.LIB_NAME),_default=exports.default=Option;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.__esModule=!0,exports.default=void 0;var _templateObject,_react=_interopRequireDefault(require("react")),_styled=_interopRequireDefault(require("@emotion/styled")),_constants=require("../constants");function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}function _taggedTemplateLiteralLoose(a,b){return b||(b=a.slice(0)),a.raw=b,a}var Separator=function(a){var b=a.props,c=a.state,d=a.methods;return b.separatorRenderer?b.separatorRenderer({props:b,state:c,methods:d}):/*#__PURE__*/_react.default.createElement(SeparatorComponent,{className:_constants.LIB_NAME+"-separator"})},SeparatorComponent=_styled.default.div(_templateObject||(_templateObject=_taggedTemplateLiteralLoose(["\n border-left: 1px solid #ccc;\n width: 1px;\n height: 25px;\n display: block;\n"]))),_default=exports.default=Separator;
|
package/lib/constants.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.__esModule=!0,exports.LIB_NAME=void 0;var LIB_NAME=exports.LIB_NAME="react-clean-select";
|
package/lib/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.__esModule=!0,exports.default=exports.Select=void 0;var _templateObject,_react=_interopRequireWildcard(require("react")),_reactDom=_interopRequireDefault(require("react-dom")),_styled=_interopRequireDefault(require("@emotion/styled")),_ClickOutside=_interopRequireDefault(require("./components/ClickOutside")),_Content=_interopRequireDefault(require("./components/Content")),_Dropdown=_interopRequireDefault(require("./components/Dropdown")),_Loading=_interopRequireDefault(require("./components/Loading")),_Clear=_interopRequireDefault(require("./components/Clear")),_Separator=_interopRequireDefault(require("./components/Separator")),_DropdownHandle=_interopRequireDefault(require("./components/DropdownHandle")),_util=require("./util"),_constants=require("./constants"),_SelectPropsModel=_interopRequireDefault(require("./models/SelectPropsModel"));function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}function _interopRequireWildcard(a,b){if("function"==typeof WeakMap)var c=new WeakMap,d=new WeakMap;return(_interopRequireWildcard=function(a,b){if(!b&&a&&a.__esModule)return a;var e,g,h={__proto__:null,default:a};if(null===a||"object"!=typeof a&&"function"!=typeof a)return h;if(e=b?d:c){if(e.has(a))return e.get(a);e.set(a,h)}for(var f in a)"default"!=f&&{}.hasOwnProperty.call(a,f)&&((g=(e=Object.defineProperty)&&Object.getOwnPropertyDescriptor(a,f))&&(g.get||g.set)?e(h,f,g):h[f]=a[f]);return h})(a,b)}function _taggedTemplateLiteralLoose(a,b){return b||(b=a.slice(0)),a.raw=b,a}function _extends(){return _extends=Object.assign?Object.assign.bind():function(a){for(var b,c=1;c<arguments.length;c++)for(var d in b=arguments[c],b)({}).hasOwnProperty.call(b,d)&&(a[d]=b[d]);return a},_extends.apply(null,arguments)}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 Select=exports.Select=/*#__PURE__*/function(a){function b(b){var c;return c=a.call(this,b)||this,c.onDropdownClose=function(){c.setState({cursor:null}),c.props.onDropdownClose()},c.onScroll=function(){c.props.closeOnScroll&&c.dropDown("close"),c.updateSelectBounds()},c.updateSelectBounds=function(){return c.select.current&&c.setState({selectBounds:c.select.current.getBoundingClientRect()})},c.getSelectBounds=function(){return c.state.selectBounds},c.dropDown=function(a,b,d){void 0===a&&(a="toggle"),void 0===d&&(d=!1);var e=b&&b.target||b&&b.srcElement;return void 0!==c.props.onDropdownCloseRequest&&c.state.dropdown&&!1===d&&"close"===a?c.props.onDropdownCloseRequest({props:c.props,methods:c.methods,state:c.state,close:function(){return c.dropDown("close",null,!0)}}):c.props.portal&&!c.props.closeOnScroll&&!c.props.closeOnSelect&&b&&e&&e.offsetParent&&e.offsetParent.classList.contains("react-clean-select-dropdown")?void 0:c.props.keepOpen?c.setState({dropdown:!0}):"close"===a&&c.state.dropdown?(c.select.current.blur(),c.setState({dropdown:!1,search:c.props.clearOnBlur?"":c.state.search,searchResults:c.props.options})):"open"!==a||c.state.dropdown?"toggle"===a&&(c.select.current.focus(),c.setState({dropdown:!c.state.dropdown})):c.setState({dropdown:!0})},c.getSelectRef=function(){return c.select.current},c.addItem=function(a){if(c.props.multi){if((0,_util.valueExistInSelected)((0,_util.getByPath)(a,c.props.valueField),c.state.values,c.props))return c.removeItem(null,a,!1);c.setState({values:[].concat(c.state.values,[a])}),c.props.onSelect([].concat(c.state.values,[a]))}else c.setState({values:[a],dropdown:!1}),c.props.onSelect([a]);return c.props.clearOnSelect&&c.setState({search:""},function(){c.setState({searchResults:c.searchResults()})}),!0},c.removeItem=function(a,b,d){void 0===d&&(d=!1),a&&d&&(a.preventDefault(),a.stopPropagation(),c.dropDown("close"));var e=c.state.values.filter(function(a){return(0,_util.getByPath)(a,c.props.valueField)!==(0,_util.getByPath)(b,c.props.valueField)});c.setState({values:e}),c.props.onDeselect(e)},c.setSearch=function(a){c.setState({cursor:null}),c.setState({search:a.target.value},function(){c.setState({searchResults:c.searchResults()})})},c.getInputSize=function(){return c.state.search?c.state.search.length:0<c.state.values.length?c.props.addPlaceholder.length:c.props.placeholder.length},c.toggleSelectAll=function(){return c.setState({values:0===c.state.values.length?c.selectAll():c.clearAll()})},c.clearAll=function(){c.props.onClearAll(),c.setState({values:[]})},c.selectAll=function(a){void 0===a&&(a=[]),c.props.onSelectAll();var b=0<a.length?a:c.props.options.filter(function(a){return!a.disabled});c.setState({values:b})},c.isSelected=function(a){return!!c.state.values.find(function(b){return(0,_util.getByPath)(b,c.props.valueField)===(0,_util.getByPath)(a,c.props.valueField)})},c.areAllSelected=function(){return c.state.values.length===c.props.options.filter(function(a){return!a.disabled}).length},c.safeString=function(a){return a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")},c.sortBy=function(){var a=c.props,d=a.sortBy,e=a.options;return d?(e.sort(function(c,a){return(0,_util.getProp)(c,d)<(0,_util.getProp)(a,d)?-1:(0,_util.getProp)(c,d)>(0,_util.getProp)(a,d)?1:0}),e):e},c.searchFn=function(a){var b=a.state,d=a.methods,e=new RegExp(d.safeString(b.search),"i");return d.sortBy().filter(function(a){return e.test((0,_util.getByPath)(a,c.props.searchBy)||(0,_util.getByPath)(a,c.props.valueField))})},c.searchResults=function(){var a={state:c.state,props:c.props,methods:c.methods};return c.props.searchFn(a)||c.searchFn(a)},c.activeCursorItem=function(a){return c.setState({activeCursorItem:a})},c.handleKeyDown=function(a){var b={event:a,state:c.state,props:c.props,methods:c.methods,setState:c.setState.bind(c)};return c.props.handleKeyDownFn(b)||c.handleKeyDownFn(b)},c.handleKeyDownFn=function(a){var b=a.event,d=a.state,e=a.props,f=a.methods,g=a.setState,h=d.cursor,i=d.searchResults,j="Escape"===b.key,k="Enter"===b.key,l="ArrowUp"===b.key,m="ArrowDown"===b.key,n="Backspace"===b.key,o="Tab"===b.key&&!b.shiftKey,p=b.shiftKey&&"Tab"===b.key;if(m&&!d.dropdown)return b.preventDefault(),c.dropDown("open"),g({cursor:0});if((m||o&&d.dropdown)&&null===h)return g({cursor:0});if((l||m||p&&d.dropdown||o&&d.dropdown)&&b.preventDefault(),j&&c.dropDown("close"),k){var q=i[h];if(q&&!q.disabled){if(e.create&&(0,_util.valueExistInSelected)(d.search,d.values,e))return null;f.addItem(q)}}return(m||o&&d.dropdown)&&i.length===h?g({cursor:0}):void((m||o&&d.dropdown)&&g(function(a){return{cursor:a.cursor+1}}),(l||p&&d.dropdown)&&0<h&&g(function(a){return{cursor:a.cursor-1}}),(l||p&&d.dropdown)&&0===h&&g({cursor:i.length}),n&&e.backspaceDelete&&0===c.getInputSize()&&c.setState({values:c.state.values.slice(0,-1)}))},c.renderDropdown=function(){return c.props.portal?(/*#__PURE__*/_reactDom.default.createPortal(/*#__PURE__*/_react.default.createElement(_Dropdown.default,{props:c.props,state:c.state,methods:c.methods}),c.dropdownRoot)):/*#__PURE__*/_react.default.createElement(_Dropdown.default,{props:c.props,state:c.state,methods:c.methods})},c.createNew=function(a){var b,d=(b={},b[c.props.labelField]=a,b[c.props.valueField]=a,b);c.addItem(d),c.props.onCreateNew(d),c.setState({search:""})},c.state={dropdown:!1,values:b.values,search:"",selectBounds:{},cursor:null,searchResults:b.options},c.methods={activeCursorItem:c.activeCursorItem,addItem:c.addItem,areAllSelected:c.areAllSelected,clearAll:c.clearAll,createNew:c.createNew,dropDown:c.dropDown,getInputSize:c.getInputSize,getSelectBounds:c.getSelectBounds,getSelectRef:c.getSelectRef,handleKeyDown:c.handleKeyDown,isSelected:c.isSelected,removeItem:c.removeItem,safeString:c.safeString,searchResults:c.searchResults,selectAll:c.selectAll,setSearch:c.setSearch,sortBy:c.sortBy,toggleSelectAll:c.toggleSelectAll},c.select=/*#__PURE__*/_react.default.createRef(),c.dropdownRoot="undefined"!=typeof document&&document.createElement("div"),c}_inheritsLoose(b,a);var c=b.prototype;return c.componentDidMount=function(){this.props.portal&&this.props.portal.appendChild(this.dropdownRoot),(0,_util.isomorphicWindow)().addEventListener("resize",(0,_util.debounce)(this.updateSelectBounds)),(0,_util.isomorphicWindow)().addEventListener("scroll",(0,_util.debounce)(this.onScroll)),this.dropDown("close"),this.select&&this.updateSelectBounds(),this.props.defaultMenuIsOpen&&this.dropDown("open")},c.componentDidUpdate=function(a,b){var c=this;!this.props.compareValuesFunc(a.values,this.props.values)&&this.props.compareValuesFunc(a.values,b.values)&&(this.setState({values:this.props.values},function(){c.props.onChange(c.state.values)}),this.updateSelectBounds()),a.options!==this.props.options&&this.setState({searchResults:this.searchResults()}),b.values!==this.state.values&&(this.props.onChange(this.state.values),this.updateSelectBounds()),b.search!==this.state.search&&this.updateSelectBounds(),b.values!==this.state.values&&this.props.closeOnSelect&&this.dropDown("close"),a.multi!==this.props.multi&&this.updateSelectBounds(),b.dropdown&&b.dropdown!==this.state.dropdown&&this.onDropdownClose(),b.dropdown||b.dropdown===this.state.dropdown||this.props.onDropdownOpen()},c.componentWillUnmount=function(){this.props.portal&&this.props.portal.removeChild(this.dropdownRoot),(0,_util.isomorphicWindow)().removeEventListener("resize",(0,_util.debounce)(this.updateSelectBounds,this.props.debounceDelay)),(0,_util.isomorphicWindow)().removeEventListener("scroll",(0,_util.debounce)(this.onScroll,this.props.debounceDelay))},c.render=function(){var a=this;return/*#__PURE__*/_react.default.createElement(_ClickOutside.default,{onClickOutside:function(b){return a.dropDown("close",b)}},/*#__PURE__*/_react.default.createElement(ReactDropdownSelect,_extends({onKeyDown:this.handleKeyDown,"aria-label":"Dropdown select","aria-expanded":this.state.dropdown,onClick:function(b){return a.dropDown("open",b)},tabIndex:this.props.disabled?"-1":"0",direction:this.props.direction,style:this.props.style,ref:this.select,disabled:this.props.disabled,className:_constants.LIB_NAME+" "+this.props.className,color:this.props.color},this.props.additionalProps),/*#__PURE__*/_react.default.createElement(_Content.default,{props:this.props,state:this.state,methods:this.methods}),(this.props.name||this.props.required)&&/*#__PURE__*/_react.default.createElement("input",{tabIndex:-1,style:{opacity:0,width:0,position:"absolute"},name:this.props.name,required:this.props.required,pattern:this.props.pattern,defaultValue:this.state.values.map(function(b){return b[a.props.labelField]}).toString()||[],disabled:this.props.disabled}),this.props.loading&&/*#__PURE__*/_react.default.createElement(_Loading.default,{props:this.props}),this.props.clearable&&/*#__PURE__*/_react.default.createElement(_Clear.default,{props:this.props,state:this.state,methods:this.methods}),this.props.separator&&/*#__PURE__*/_react.default.createElement(_Separator.default,{props:this.props,state:this.state,methods:this.methods}),this.props.dropdownHandle&&/*#__PURE__*/_react.default.createElement(_DropdownHandle.default,{onClick:function(){return a.select.current.focus()},props:this.props,state:this.state,methods:this.methods}),this.state.dropdown&&!this.props.disabled&&this.renderDropdown()))},b}(_react.Component);Select.defaultProps={addPlaceholder:"",additionalProps:null,autoFocus:!1,backspaceDelete:!0,clearAllLabel:"Clear all",clearOnBlur:!0,clearOnSelect:!0,clearable:!1,closeOnScroll:!1,closeOnSelect:!1,closeOnClickInput:!1,color:"#0074D9",compareValuesFunc:_util.isEqual,create:!1,createNewLabel:"add {search}",debounceDelay:0,direction:"ltr",disabled:!1,disabledLabel:"disabled",dropdownGap:5,dropdownHandle:!0,dropdownHeight:"300px",dropdownPosition:"bottom",handleKeyDownFn:function(){},keepOpen:!1,keepSelectedInList:!0,labelField:"label",loading:!1,multi:!1,name:null,noDataLabel:"No data",onChange:function(){},onSelect:function(){},onDeselect:function(){},onClearAll:function(){},onCreateNew:function(){},onDropdownClose:function(){},onDropdownCloseRequest:void 0,onDropdownOpen:function(){},onSelectAll:function(){},options:[],pattern:void 0,placeholder:"Select...",portal:null,required:!1,searchBy:"label",searchFn:function(){},searchable:!0,selectAll:!1,selectAllLabel:"Select all",separator:!1,sortBy:null,valueField:"value",values:[],defaultMenuIsOpen:!1};var ReactDropdownSelect=_styled.default.div(_templateObject||(_templateObject=_taggedTemplateLiteralLoose(["\n box-sizing: border-box;\n position: relative;\n display: flex;\n border: 1px solid #ccc;\n width: 100%;\n border-radius: 2px;\n padding: 2px 5px;\n flex-direction: row;\n direction: ",";\n align-items: center;\n cursor: pointer;\n min-height: 36px;\n\n ","\n :hover,\n :focus-within {\n border-color: ",";\n }\n\n :focus,\n :focus-within {\n outline: 0;\n box-shadow: 0 0 0 3px ",";\n }\n\n * {\n box-sizing: border-box;\n }\n"])),function(a){var b=a.direction;return b},function(a){var b=a.disabled;return b?"cursor: not-allowed;pointer-events: none;opacity: 0.3;":"pointer-events: all;"},function(a){var b=a.color;return b},function(a){var b=a.color;return(0,_util.hexToRGBA)(b,.2)}),_default=exports.default=Select;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";var _propTypes=_interopRequireDefault(require("prop-types"));exports.__esModule=!0,exports.default=void 0;function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}var SelectMethodsModel=Object.freeze({activeCursorItem:_propTypes.default.func,/**
|
|
2
|
+
* Add a new item
|
|
3
|
+
*/addItem:_propTypes.default.func.isRequired,/**
|
|
4
|
+
* Check if all items are selected
|
|
5
|
+
*/areAllSelected:_propTypes.default.func.isRequired,/**
|
|
6
|
+
* Clear all selected items
|
|
7
|
+
*/clearAll:_propTypes.default.func.isRequired,/**
|
|
8
|
+
* Create a new item
|
|
9
|
+
*/createNew:_propTypes.default.func.isRequired,/**
|
|
10
|
+
* Close/Toggle/Open
|
|
11
|
+
*/dropDown:_propTypes.default.func.isRequired,/**
|
|
12
|
+
* Get the input size
|
|
13
|
+
*/getInputSize:_propTypes.default.func.isRequired,/**
|
|
14
|
+
* Get the bounds of the select component
|
|
15
|
+
*/getSelectBounds:_propTypes.default.func.isRequired,/**
|
|
16
|
+
* Get the reference to the select component
|
|
17
|
+
*/getSelectRef:_propTypes.default.func.isRequired,/**
|
|
18
|
+
* Handle key down event
|
|
19
|
+
*/handleKeyDown:_propTypes.default.func.isRequired,/**
|
|
20
|
+
* Check if an item is selected
|
|
21
|
+
*/isSelected:_propTypes.default.func.isRequired,/**
|
|
22
|
+
* Remove an item
|
|
23
|
+
*/removeItem:_propTypes.default.func.isRequired,/**
|
|
24
|
+
* Make a string safe
|
|
25
|
+
*/safeString:_propTypes.default.func.isRequired,/**
|
|
26
|
+
* Get search results
|
|
27
|
+
*/searchResults:_propTypes.default.func.isRequired,/**
|
|
28
|
+
* Select all items
|
|
29
|
+
*/selectAll:_propTypes.default.func.isRequired,/**
|
|
30
|
+
* Set the search string
|
|
31
|
+
*/setSearch:_propTypes.default.func.isRequired,/**
|
|
32
|
+
* Sort items
|
|
33
|
+
*/sortBy:_propTypes.default.func.isRequired,/**
|
|
34
|
+
* Toggle select all
|
|
35
|
+
*/toggleSelectAll:_propTypes.default.func.isRequired}),_default=exports.default=SelectMethodsModel;
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
"use strict";var _propTypes=_interopRequireDefault(require("prop-types"));exports.__esModule=!0,exports.default=void 0;function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}var SelectPropsModel=Object.freeze({/**
|
|
2
|
+
* Secondary placeholder on search field if any value selected
|
|
3
|
+
*/addPlaceholder:_propTypes.default.string,/**
|
|
4
|
+
* Additional props to pass to Select
|
|
5
|
+
*/additionalProps:_propTypes.default.object,/**
|
|
6
|
+
* If true, and searchable, dropdown will autofocus
|
|
7
|
+
*/autoFocus:_propTypes.default.bool,/**
|
|
8
|
+
* If true, backspace key will delete last value
|
|
9
|
+
*/backspaceDelete:_propTypes.default.bool,/**
|
|
10
|
+
* CSS class attribute to pass to select
|
|
11
|
+
*/className:_propTypes.default.string,/**
|
|
12
|
+
* Label for "Clear all"
|
|
13
|
+
*/clearAllLabel:_propTypes.default.string,/**
|
|
14
|
+
* If true, and searchable, search value will be cleared on blur
|
|
15
|
+
*/clearOnBlur:_propTypes.default.bool,/**
|
|
16
|
+
* If true, and searchable, search value will be cleared upon value select/de-select
|
|
17
|
+
*/clearOnSelect:_propTypes.default.bool,/**
|
|
18
|
+
* Overrides internal clear button
|
|
19
|
+
*/clearRenderer:_propTypes.default.func,/**
|
|
20
|
+
* Clear all indicator
|
|
21
|
+
*/clearable:_propTypes.default.bool,/**
|
|
22
|
+
* If true, scrolling the page will close the dropdown
|
|
23
|
+
*/closeOnScroll:_propTypes.default.bool,/**
|
|
24
|
+
* If true, selecting option will close the dropdown
|
|
25
|
+
*/closeOnSelect:_propTypes.default.bool,/**
|
|
26
|
+
* If true, clicking input will close the dropdown if you are not searching.
|
|
27
|
+
*/closeOnClickInput:_propTypes.default.bool,/**
|
|
28
|
+
* Base color (any CSS compatible) to use in component, also can be overwritten via CSS
|
|
29
|
+
*/color:_propTypes.default.string,/**
|
|
30
|
+
* Compare values override function
|
|
31
|
+
*/compareValuesFunc:_propTypes.default.func,/**
|
|
32
|
+
* Overrides internal content component (the contents of the select component)
|
|
33
|
+
* | <a href="https://jlw.github.io/react-clean-select/prop/content-renderer">example</a>
|
|
34
|
+
*/contentRenderer:_propTypes.default.func,/**
|
|
35
|
+
* If true, select will create value from search string and fire onCreateNew callback prop
|
|
36
|
+
*/create:_propTypes.default.bool,/**
|
|
37
|
+
* If create set to true, this will be the label of the "add new" component. {search} will be replaced by search value
|
|
38
|
+
*/createNewLabel:_propTypes.default.string,/**
|
|
39
|
+
* Debounce Delay for updates upon component interactions
|
|
40
|
+
*/debounceDelay:_propTypes.default.number,/**
|
|
41
|
+
* Direction of a dropdown "ltr", "rtl" or "auto"
|
|
42
|
+
*/direction:_propTypes.default.string,/**
|
|
43
|
+
* Disable select and all interactions
|
|
44
|
+
*/disabled:_propTypes.default.bool,/**
|
|
45
|
+
* Label shown on disabled field (after) the text
|
|
46
|
+
*/disabledLabel:_propTypes.default.string,/**
|
|
47
|
+
* Gap between select element and dropdown
|
|
48
|
+
*/dropdownGap:_propTypes.default.number,/**
|
|
49
|
+
* Show or hide dropdown handle to open/close dropdown
|
|
50
|
+
*/dropdownHandle:_propTypes.default.bool,/**
|
|
51
|
+
* Overrides internal dropdown handle
|
|
52
|
+
*/dropdownHandleRenderer:_propTypes.default.func,/**
|
|
53
|
+
* Minimum height of a dropdown
|
|
54
|
+
*/dropdownHeight:_propTypes.default.string,/**
|
|
55
|
+
* Available options are "auto", "top" and "bottom" defaults to "bottom". Auto will adjust itself according Select's position on the page
|
|
56
|
+
* | <a href="https://jlw.github.io/react-clean-select/prop/dropdown-position">example</a>
|
|
57
|
+
*/dropdownPosition:_propTypes.default.oneOf(["top","bottom","auto"]),/**
|
|
58
|
+
* Overrides internal dropdown handle
|
|
59
|
+
*/dropdownRenderer:_propTypes.default.func,/**
|
|
60
|
+
* Overrides internal keyDown function
|
|
61
|
+
*/handleKeyDownFn:_propTypes.default.func,/**
|
|
62
|
+
* Overrides internal input text
|
|
63
|
+
*/inputRenderer:_propTypes.default.func,/**
|
|
64
|
+
* Overrides internal item in a dropdown
|
|
65
|
+
*/itemRenderer:_propTypes.default.func,/**
|
|
66
|
+
* If true, dropdown will always stay open (good for debugging)
|
|
67
|
+
*/keepOpen:_propTypes.default.bool,/**
|
|
68
|
+
* If false, selected item will not appear in a list
|
|
69
|
+
*/keepSelectedInList:_propTypes.default.bool,/**
|
|
70
|
+
* Field in data to use for label
|
|
71
|
+
*/labelField:_propTypes.default.string,/**
|
|
72
|
+
* Loading indicator
|
|
73
|
+
*/loading:_propTypes.default.bool,/**
|
|
74
|
+
* Overrides internal loading
|
|
75
|
+
*/loadingRenderer:_propTypes.default.func,/**
|
|
76
|
+
* If true - will act as multi-select, if false - only one option will be selected at the time
|
|
77
|
+
*/multi:_propTypes.default.bool,/**
|
|
78
|
+
* If set, input type hidden would be added in the component with the value of the `name` prop as `name` and select's `values` as `value`
|
|
79
|
+
* Useful for HTML forms
|
|
80
|
+
*/name:_propTypes.default.string,/**
|
|
81
|
+
* Label for "No data"
|
|
82
|
+
*/noDataLabel:_propTypes.default.string,/**
|
|
83
|
+
* Overrides internal "no data" (shown where search has no results)
|
|
84
|
+
*/noDataRenderer:_propTypes.default.func,/**
|
|
85
|
+
* onChange callback handler
|
|
86
|
+
*/onChange:_propTypes.default.func.isRequired,/**
|
|
87
|
+
* Fires upon clearing all values (via custom renderers)
|
|
88
|
+
*/onClearAll:_propTypes.default.func,/**
|
|
89
|
+
* Fires upon creation of new item if create prop set to true
|
|
90
|
+
*/onCreateNew:_propTypes.default.func,/**
|
|
91
|
+
* Fires upon dropdown close
|
|
92
|
+
*/onDropdownClose:_propTypes.default.func,/**
|
|
93
|
+
* Fires upon dropdown closing state, stops the closing and provides own method close()
|
|
94
|
+
* @return undefined
|
|
95
|
+
*/onDropdownCloseRequest:_propTypes.default.func,/**
|
|
96
|
+
* Fires upon dropdown open
|
|
97
|
+
*/onDropdownOpen:_propTypes.default.func,/**
|
|
98
|
+
* Fires upon selecting all values (via custom renderers)
|
|
99
|
+
*/onSelectAll:_propTypes.default.func,/**
|
|
100
|
+
* Overrides internal option (the pillow with an "x") on the select content
|
|
101
|
+
*/optionRenderer:_propTypes.default.func,/**
|
|
102
|
+
* Available options, (option with key disabled: true will be disabled)
|
|
103
|
+
*/options:_propTypes.default.array.isRequired,/**
|
|
104
|
+
* If set, input type hidden would be added in the component with pattern prop as regex
|
|
105
|
+
*/pattern:_propTypes.default.string,/**
|
|
106
|
+
* Placeholder shown where there are no selected values
|
|
107
|
+
*/placeholder:_propTypes.default.string,/**
|
|
108
|
+
* If valid DOM element specified - dropdown will break out to render inside the specified element
|
|
109
|
+
*/portal:_propTypes.default.element,/**
|
|
110
|
+
* If set, input type hidden would be added in the component with required prop as true/false
|
|
111
|
+
*/required:_propTypes.default.bool,/**
|
|
112
|
+
* Search by object property in values
|
|
113
|
+
*/searchBy:_propTypes.default.string,/**
|
|
114
|
+
* Overrides internal search function
|
|
115
|
+
*/searchFn:_propTypes.default.func,/**
|
|
116
|
+
* If true, select will have search input text
|
|
117
|
+
*/searchable:_propTypes.default.bool,/**
|
|
118
|
+
* Allow to select all (if select is multi-select)
|
|
119
|
+
*/selectAll:_propTypes.default.bool,/**
|
|
120
|
+
* Label for "Select all"
|
|
121
|
+
*/selectAllLabel:_propTypes.default.string,/**
|
|
122
|
+
* Separator line between close all and dropdown handle
|
|
123
|
+
*/separator:_propTypes.default.bool,/**
|
|
124
|
+
* Overrides internal separator
|
|
125
|
+
*/separatorRenderer:_propTypes.default.func,/**
|
|
126
|
+
* Sort by object property in values
|
|
127
|
+
*/sortBy:_propTypes.default.string,/**
|
|
128
|
+
* Style object to pass to select
|
|
129
|
+
*/style:_propTypes.default.object,/**
|
|
130
|
+
* Field in data to use for value
|
|
131
|
+
*/valueField:_propTypes.default.string,/**
|
|
132
|
+
* Selected values
|
|
133
|
+
*/values:_propTypes.default.array,/**
|
|
134
|
+
* If true, dropdown will be open by default
|
|
135
|
+
*/defaultMenuIsOpen:_propTypes.default.bool}),_default=exports.default=SelectPropsModel;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";var _propTypes=_interopRequireDefault(require("prop-types"));exports.__esModule=!0,exports.default=void 0;function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}var SelectStateModel=Object.freeze({/**
|
|
2
|
+
* Flag indicating whether the dropdown is open or closed
|
|
3
|
+
*/dropdown:_propTypes.default.bool.isRequired,/**
|
|
4
|
+
* Array of selected values
|
|
5
|
+
*/values:_propTypes.default.arrayOf(_propTypes.default.shape({})),/**
|
|
6
|
+
* Search string
|
|
7
|
+
*/search:_propTypes.default.string.isRequired,/**
|
|
8
|
+
* Array of bounds for the select component
|
|
9
|
+
*/selectBounds:_propTypes.default.shape({}),/**
|
|
10
|
+
* Cursor position
|
|
11
|
+
*/cursor:_propTypes.default.number,/**
|
|
12
|
+
* Array of search results
|
|
13
|
+
*/searchResults:_propTypes.default.arrayOf(_propTypes.default.shape({}))}),_default=exports.default=SelectStateModel;
|
package/lib/util.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.__esModule=!0,exports.valueExistInSelected=exports.isomorphicWindow=exports.isEqual=exports.hexToRGBA=exports.getProp=exports.getByPath=exports.debounce=void 0;var valueExistInSelected=exports.valueExistInSelected=function(a,b,c){return!!b.find(function(b){return getByPath(b,c.valueField)===a||getByPath(b,c.labelField)===a})},hexToRGBA=exports.hexToRGBA=function(a,b){4===a.length&&(a=""+a[1]+a[1]+a[2]+a[2]+a[3]+a[3]+"}");var c=parseInt(a.slice(1,3),16),d=parseInt(a.slice(3,5),16),e=parseInt(a.slice(5,7),16);return"rgba("+c+", "+d+", "+e+(b&&", "+b)+")"},debounce=exports.debounce=function(a,b){void 0===b&&(b=0);var c;return function(){for(var d=arguments.length,e=Array(d),f=0;f<d;f++)e[f]=arguments[f];c&&clearTimeout(c),c=setTimeout(function(){a.apply(void 0,e),c=null},b)}},isEqual=exports.isEqual=function(c,a){return JSON.stringify(c)===JSON.stringify(a)},getByPath=exports.getByPath=function(a,b){return b?b.split(".").reduce(function(a,b){return a[b]},a):void 0},_getProp=exports.getProp=function(a,b,c){if(!b)return a;var d=Array.isArray(b)?b:b.split(".").filter(function(a){return a.length});return d.length?_getProp(a[d.shift()],d,c):void 0===a?c:a},isomorphicWindow=exports.isomorphicWindow=function(){return"undefined"==typeof window&&(global.window={}),window};
|
package/package.json
ADDED
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "react-clean-select",
|
|
3
|
+
"version": "0.0.1",
|
|
4
|
+
"description": "Customizable single- and multi- select component for react with basic, easily-overrideable CSS",
|
|
5
|
+
"main": "dist/react-clean-select.js",
|
|
6
|
+
"module": "lib/index.js",
|
|
7
|
+
"types": "types.d.ts",
|
|
8
|
+
"sideEffects": false,
|
|
9
|
+
"files": [
|
|
10
|
+
"assets",
|
|
11
|
+
"dist",
|
|
12
|
+
"lib",
|
|
13
|
+
"types.d.ts"
|
|
14
|
+
],
|
|
15
|
+
"scripts": {
|
|
16
|
+
"test": "jest",
|
|
17
|
+
"test:watch": "jest --watch",
|
|
18
|
+
"coveralls": "jest --coverage && cat ./coverage/lcov.info | coveralls",
|
|
19
|
+
"build": "webpack && npm run transpile",
|
|
20
|
+
"transpile": "babel src -d lib",
|
|
21
|
+
"prepublishOnly": "npm run build",
|
|
22
|
+
"preversion": "sh change-log-builder.sh",
|
|
23
|
+
"storybook": "storybook dev -p 6006",
|
|
24
|
+
"build-storybook": "storybook build"
|
|
25
|
+
},
|
|
26
|
+
"repository": {
|
|
27
|
+
"type": "git",
|
|
28
|
+
"url": "https://github.com/jlw/react-clean-select"
|
|
29
|
+
},
|
|
30
|
+
"bundlesize": [
|
|
31
|
+
{
|
|
32
|
+
"path": "./dist/react-clean-select.js",
|
|
33
|
+
"maxSize": "20 kB"
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"path": "./lib/index.js",
|
|
37
|
+
"maxSize": "20 kB"
|
|
38
|
+
}
|
|
39
|
+
],
|
|
40
|
+
"keywords": [
|
|
41
|
+
"react",
|
|
42
|
+
"react component",
|
|
43
|
+
"select",
|
|
44
|
+
"multiselect",
|
|
45
|
+
"dropdown"
|
|
46
|
+
],
|
|
47
|
+
"author": "Jeremy Weathers <jeremy@codekindly.com>",
|
|
48
|
+
"license": "MIT",
|
|
49
|
+
"peerDependencies": {
|
|
50
|
+
"prop-types": ">=15.7.2",
|
|
51
|
+
"react": ">=16.x",
|
|
52
|
+
"react-dom": ">=16.x"
|
|
53
|
+
},
|
|
54
|
+
"devDependencies": {
|
|
55
|
+
"@babel/cli": "^7.7.7",
|
|
56
|
+
"@babel/core": "^7.7.7",
|
|
57
|
+
"@babel/plugin-proposal-class-properties": "^7.7.4",
|
|
58
|
+
"@babel/plugin-proposal-object-rest-spread": "^7.7.7",
|
|
59
|
+
"@babel/plugin-syntax-dynamic-import": "^7.7.4",
|
|
60
|
+
"@babel/preset-env": "^7.7.7",
|
|
61
|
+
"@babel/preset-react": "^7.7.4",
|
|
62
|
+
"@emotion/babel-plugin": "11.11.0",
|
|
63
|
+
"@emotion/jest": "11.11.0",
|
|
64
|
+
"@faker-js/faker": "^10.1.0",
|
|
65
|
+
"@storybook/addon-docs": "7.1.1",
|
|
66
|
+
"@storybook/addon-essentials": "7.1.1",
|
|
67
|
+
"@storybook/addon-interactions": "7.1.1",
|
|
68
|
+
"@storybook/addon-links": "7.1.1",
|
|
69
|
+
"@storybook/blocks": "7.1.1",
|
|
70
|
+
"@storybook/react": "7.1.1",
|
|
71
|
+
"@storybook/react-webpack5": "7.1.1",
|
|
72
|
+
"@storybook/testing-library": "^0.2.0",
|
|
73
|
+
"babel-core": "^7.0.0-bridge.0",
|
|
74
|
+
"babel-jest": "^25.3.0",
|
|
75
|
+
"babel-loader": "^8.0.6",
|
|
76
|
+
"babel-plugin-transform-dynamic-import": "^2.1.0",
|
|
77
|
+
"babel-plugin-transform-react-remove-prop-types": "^0.4.24",
|
|
78
|
+
"babel-preset-minify": "^0.5.1",
|
|
79
|
+
"bundlesize": "1.0.0-beta.2",
|
|
80
|
+
"coveralls": "^3.0.9",
|
|
81
|
+
"css-loader": "^6.7.3",
|
|
82
|
+
"gh-pages": "^2.2.0",
|
|
83
|
+
"html-webpack-plugin": "^5.5.0",
|
|
84
|
+
"husky": "^3.1.0",
|
|
85
|
+
"jest": "29.6.2",
|
|
86
|
+
"jest-environment-jsdom": "29.6.2",
|
|
87
|
+
"prettier": "1.18.2",
|
|
88
|
+
"prop-types": "^15.7.2",
|
|
89
|
+
"react": "16.14.0",
|
|
90
|
+
"react-dom": "^16.12.0",
|
|
91
|
+
"react-test-renderer": "^16.12.0",
|
|
92
|
+
"replace": "^1.2.0",
|
|
93
|
+
"storybook": "7.1.1",
|
|
94
|
+
"style-loader": "^3.3.1",
|
|
95
|
+
"webpack": "5.88.1",
|
|
96
|
+
"webpack-cli": "^5.0.1",
|
|
97
|
+
"webpack-dev-server": "4.15.1"
|
|
98
|
+
},
|
|
99
|
+
"dependencies": {
|
|
100
|
+
"@emotion/react": "11.11.0",
|
|
101
|
+
"@emotion/styled": "11.11.0"
|
|
102
|
+
},
|
|
103
|
+
"jest": {
|
|
104
|
+
"snapshotSerializers": [
|
|
105
|
+
"@emotion/jest/serializer"
|
|
106
|
+
],
|
|
107
|
+
"transform": {
|
|
108
|
+
"^.+\\.(js)$": "babel-jest"
|
|
109
|
+
},
|
|
110
|
+
"testMatch": [
|
|
111
|
+
"**/?(*.)+(spec|test).js?(x)"
|
|
112
|
+
],
|
|
113
|
+
"testEnvironmentOptions": {
|
|
114
|
+
"url": "http://localhost/"
|
|
115
|
+
},
|
|
116
|
+
"collectCoverage": false,
|
|
117
|
+
"bail": true,
|
|
118
|
+
"roots": [
|
|
119
|
+
"<rootDir>/__tests__"
|
|
120
|
+
],
|
|
121
|
+
"collectCoverageFrom": [
|
|
122
|
+
"src/**/*.{js,jsx}",
|
|
123
|
+
"!src/**/ClickOutside.js",
|
|
124
|
+
"!node_modules/**",
|
|
125
|
+
"!docs/**",
|
|
126
|
+
"!dist/**",
|
|
127
|
+
"!coverage/**"
|
|
128
|
+
]
|
|
129
|
+
},
|
|
130
|
+
"browserslist": [
|
|
131
|
+
"last 2 versions",
|
|
132
|
+
"not dead",
|
|
133
|
+
"ie 11"
|
|
134
|
+
],
|
|
135
|
+
"husky": {
|
|
136
|
+
"hooks": {
|
|
137
|
+
"pre-commit": "npm test"
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
}
|
package/types.d.ts
ADDED
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
declare module 'react-clean-select' {
|
|
2
|
+
import {
|
|
3
|
+
ChangeEvent,
|
|
4
|
+
CSSProperties,
|
|
5
|
+
HTMLAttributes,
|
|
6
|
+
KeyboardEvent,
|
|
7
|
+
MouseEvent,
|
|
8
|
+
PropsWithRef,
|
|
9
|
+
RefObject
|
|
10
|
+
} from 'react';
|
|
11
|
+
|
|
12
|
+
export interface SetStateFnArgs<T> {
|
|
13
|
+
dropdown?: boolean;
|
|
14
|
+
values?: T[];
|
|
15
|
+
search?: string;
|
|
16
|
+
selectBounds?: DOMRect | {};
|
|
17
|
+
cursor?: number | null;
|
|
18
|
+
activeCursorItem?: any;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export interface SelectState<T> {
|
|
22
|
+
dropdown: boolean;
|
|
23
|
+
values: T[];
|
|
24
|
+
search: string;
|
|
25
|
+
selectBounds: object;
|
|
26
|
+
cursor: number;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export interface SelectMethods<T> {
|
|
30
|
+
removeItem: (event: MouseEvent<HTMLElement> | null, item: T, close: boolean) => void;
|
|
31
|
+
dropDown: (action: string, event?: MouseEvent<HTMLElement> | null) => void;
|
|
32
|
+
addItem: (item: T) => void;
|
|
33
|
+
setSearch: (event: ChangeEvent<HTMLInputElement>) => void;
|
|
34
|
+
getInputSize: () => number;
|
|
35
|
+
toggleSelectAll: () => void;
|
|
36
|
+
clearAll: () => void;
|
|
37
|
+
selectAll: (items?: T[]) => void;
|
|
38
|
+
searchResults: () => T[];
|
|
39
|
+
getSelectRef: () => HTMLDivElement;
|
|
40
|
+
isSelected: (item: T) => boolean;
|
|
41
|
+
getSelectBounds: () => {} | DOMRect;
|
|
42
|
+
areAllSelected: () => boolean;
|
|
43
|
+
handleKeyDown: (event: KeyboardEvent) => void;
|
|
44
|
+
activeCursorItem: (activeCursorItem: any) => void;
|
|
45
|
+
createNew: (searchText: string) => void;
|
|
46
|
+
sortBy: () => T[];
|
|
47
|
+
safeString: (input: string) => string;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export interface SelectRenderer<T> {
|
|
51
|
+
props: SelectProps<T>;
|
|
52
|
+
state: SelectState<T>;
|
|
53
|
+
methods: SelectMethods<T>;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export interface SelectOnDropdownCloseRequest<T> {
|
|
57
|
+
props: SelectProps<T>;
|
|
58
|
+
state: SelectState<T>;
|
|
59
|
+
methods: SelectMethods<T>;
|
|
60
|
+
close: () => void;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
export interface SelectKeyDown<T> {
|
|
64
|
+
event: KeyboardEvent;
|
|
65
|
+
props: SelectProps<T>;
|
|
66
|
+
state: SelectState<T>;
|
|
67
|
+
methods: SelectMethods<T>;
|
|
68
|
+
setState: (
|
|
69
|
+
setter: ((args: SetStateFnArgs<T>) => SetStateFnArgs<T>) | SetStateFnArgs<T>
|
|
70
|
+
) => void;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
export interface SelectItemRenderer<T> {
|
|
74
|
+
item: T;
|
|
75
|
+
itemIndex?: number;
|
|
76
|
+
props: SelectProps<T>;
|
|
77
|
+
state: SelectState<T>;
|
|
78
|
+
methods: SelectMethods<T>;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
export interface SelectProps<T> {
|
|
82
|
+
backspaceDelete?: boolean;
|
|
83
|
+
className?: string;
|
|
84
|
+
addPlaceholder?: string;
|
|
85
|
+
placeholder?: string;
|
|
86
|
+
loading?: boolean;
|
|
87
|
+
style?: CSSProperties;
|
|
88
|
+
values: T[];
|
|
89
|
+
options: T[];
|
|
90
|
+
multi?: boolean;
|
|
91
|
+
disabled?: boolean;
|
|
92
|
+
searchBy?: string;
|
|
93
|
+
sortBy?: string;
|
|
94
|
+
clearable?: boolean;
|
|
95
|
+
searchable?: boolean;
|
|
96
|
+
dropdownHandle?: boolean;
|
|
97
|
+
separator?: boolean;
|
|
98
|
+
keepOpen?: boolean;
|
|
99
|
+
noDataLabel?: string;
|
|
100
|
+
createNewLabel?: string;
|
|
101
|
+
disabledLabel?: string;
|
|
102
|
+
dropdownGap?: number;
|
|
103
|
+
closeOnScroll?: boolean;
|
|
104
|
+
debounceDelay?: number;
|
|
105
|
+
labelField?: string;
|
|
106
|
+
valueField?: string;
|
|
107
|
+
color?: string;
|
|
108
|
+
keepSelectedInList?: boolean;
|
|
109
|
+
closeOnSelect?: boolean;
|
|
110
|
+
closeOnClickInput?: boolean;
|
|
111
|
+
clearOnBlur?: boolean;
|
|
112
|
+
clearOnSelect?: boolean;
|
|
113
|
+
dropdownPosition?: 'top' | 'bottom' | 'auto';
|
|
114
|
+
dropdownHeight?: string;
|
|
115
|
+
autoFocus?: boolean;
|
|
116
|
+
portal?: HTMLElement;
|
|
117
|
+
create?: boolean;
|
|
118
|
+
direction?: 'ltr' | 'rtl';
|
|
119
|
+
name?: string;
|
|
120
|
+
required?: boolean;
|
|
121
|
+
pattern?: string;
|
|
122
|
+
defaultMenuIsOpen?: boolean;
|
|
123
|
+
onChange: (value: T[]) => void;
|
|
124
|
+
onSelect?: (value: T[]) => void;
|
|
125
|
+
onDeselect?: (value: T[]) => void;
|
|
126
|
+
onDropdownOpen?: () => void;
|
|
127
|
+
onDropdownClose?: () => void;
|
|
128
|
+
onClearAll?: () => void;
|
|
129
|
+
clearAllLabel?: string;
|
|
130
|
+
onSelectAll?: () => void;
|
|
131
|
+
onCreateNew?: (item: T) => void;
|
|
132
|
+
onDropdownCloseRequest?: ({
|
|
133
|
+
props,
|
|
134
|
+
state,
|
|
135
|
+
methods,
|
|
136
|
+
close
|
|
137
|
+
}: SelectOnDropdownCloseRequest<T>) => T[];
|
|
138
|
+
searchFn?: ({ props, state, methods }: SelectRenderer<T>) => T[];
|
|
139
|
+
handleKeyDownFn?: ({ event, props, state, methods, setState }: SelectKeyDown<T>) => void;
|
|
140
|
+
clearRenderer?: ({ props, state, methods }: SelectRenderer<T>) => JSX.Element;
|
|
141
|
+
contentRenderer?: ({ props, state, methods }: SelectRenderer<T>) => JSX.Element;
|
|
142
|
+
dropdownRenderer?: ({ props, state, methods }: SelectRenderer<T>) => JSX.Element;
|
|
143
|
+
dropdownHandleRenderer?: ({ props, state, methods }: SelectRenderer<T>) => JSX.Element;
|
|
144
|
+
inputRenderer?: ({
|
|
145
|
+
props,
|
|
146
|
+
state,
|
|
147
|
+
methods,
|
|
148
|
+
inputRef
|
|
149
|
+
}: SelectRenderer<T> & {
|
|
150
|
+
inputRef: RefObject<HTMLInputElement>;
|
|
151
|
+
}) => JSX.Element;
|
|
152
|
+
itemRenderer?: ({
|
|
153
|
+
item,
|
|
154
|
+
itemIndex,
|
|
155
|
+
props,
|
|
156
|
+
state,
|
|
157
|
+
methods
|
|
158
|
+
}: SelectItemRenderer<T>) => JSX.Element;
|
|
159
|
+
loadingRenderer?: ({ props }: SelectItemRenderer<T>) => JSX.Element;
|
|
160
|
+
noDataRenderer?: ({ props, state, methods }: SelectRenderer<T>) => JSX.Element;
|
|
161
|
+
optionRenderer?: ({ item, props, state, methods }: SelectItemRenderer<T>) => JSX.Element;
|
|
162
|
+
separatorRenderer?: ({ props, state, methods }: SelectRenderer<T>) => JSX.Element;
|
|
163
|
+
additionalProps?: HTMLAttributes<HTMLDivElement>;
|
|
164
|
+
wrapperClassName?: string;
|
|
165
|
+
selectAll?: boolean;
|
|
166
|
+
selectAllLabel?: string;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
export interface DropDownProps {
|
|
170
|
+
selectBounds: DOMRect;
|
|
171
|
+
dropdownGap: number;
|
|
172
|
+
portal: HTMLElement;
|
|
173
|
+
dropdownHeight: string;
|
|
174
|
+
dropdownPosition: 'auto' | 'top' | 'bottom';
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
const Select: <T extends object | string = {}>(
|
|
178
|
+
props: PropsWithRef<SelectProps<T>>
|
|
179
|
+
) => JSX.Element;
|
|
180
|
+
export default Select;
|
|
181
|
+
}
|