@activecollab/components 1.0.138 → 1.0.141
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/dist/cjs/components/Autocomplete/Autocomplete.js +60 -27
- package/dist/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
- package/dist/cjs/components/Autocomplete/Styles.js +9 -11
- package/dist/cjs/components/Autocomplete/Styles.js.map +1 -1
- package/dist/cjs/components/Icons/collection/ArrowDownLong.js +31 -0
- package/dist/cjs/components/Icons/collection/ArrowDownLong.js.map +1 -0
- package/dist/cjs/components/Icons/collection/ArrowUpLong.js +31 -0
- package/dist/cjs/components/Icons/collection/ArrowUpLong.js.map +1 -0
- package/dist/cjs/components/Icons/collection/index.js +16 -0
- package/dist/cjs/components/Icons/collection/index.js.map +1 -1
- package/dist/cjs/components/Select/Option/Option.js +7 -2
- package/dist/cjs/components/Select/Option/Option.js.map +1 -1
- package/dist/cjs/components/Select/Option/Styles.js +1 -1
- package/dist/cjs/components/Select/Option/Styles.js.map +1 -1
- package/dist/cjs/components/Select/OptionGroup/OptionGroup.js +34 -9
- package/dist/cjs/components/Select/OptionGroup/OptionGroup.js.map +1 -1
- package/dist/cjs/components/Select/OptionGroup/Styles.js +2 -2
- package/dist/cjs/components/Select/OptionGroup/Styles.js.map +1 -1
- package/dist/cjs/components/Select/Select.js +12 -36
- package/dist/cjs/components/Select/Select.js.map +1 -1
- package/dist/cjs/components/SelectTrigger/SelectTrigger.js +3 -2
- package/dist/cjs/components/SelectTrigger/SelectTrigger.js.map +1 -1
- package/dist/cjs/components/Tooltip/Styles.js +3 -1
- package/dist/cjs/components/Tooltip/Styles.js.map +1 -1
- package/dist/cjs/components/Tooltip/Tooltip.js +5 -2
- package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/esm/components/Autocomplete/Autocomplete.d.ts.map +1 -1
- package/dist/esm/components/Autocomplete/Autocomplete.js +60 -27
- package/dist/esm/components/Autocomplete/Autocomplete.js.map +1 -1
- package/dist/esm/components/Autocomplete/Styles.d.ts +6 -4
- package/dist/esm/components/Autocomplete/Styles.d.ts.map +1 -1
- package/dist/esm/components/Autocomplete/Styles.js +7 -6
- package/dist/esm/components/Autocomplete/Styles.js.map +1 -1
- package/dist/esm/components/Icons/collection/ArrowDownLong.d.ts +4 -0
- package/dist/esm/components/Icons/collection/ArrowDownLong.d.ts.map +1 -0
- package/dist/esm/components/Icons/collection/ArrowDownLong.js +18 -0
- package/dist/esm/components/Icons/collection/ArrowDownLong.js.map +1 -0
- package/dist/esm/components/Icons/collection/ArrowUpLong.d.ts +4 -0
- package/dist/esm/components/Icons/collection/ArrowUpLong.d.ts.map +1 -0
- package/dist/esm/components/Icons/collection/ArrowUpLong.js +18 -0
- package/dist/esm/components/Icons/collection/ArrowUpLong.js.map +1 -0
- package/dist/esm/components/Icons/collection/index.d.ts +2 -0
- package/dist/esm/components/Icons/collection/index.d.ts.map +1 -1
- package/dist/esm/components/Icons/collection/index.js +2 -0
- package/dist/esm/components/Icons/collection/index.js.map +1 -1
- package/dist/esm/components/Select/Option/Option.d.ts +3 -2
- package/dist/esm/components/Select/Option/Option.d.ts.map +1 -1
- package/dist/esm/components/Select/Option/Option.js +7 -2
- package/dist/esm/components/Select/Option/Option.js.map +1 -1
- package/dist/esm/components/Select/Option/Styles.d.ts +1 -1
- package/dist/esm/components/Select/Option/Styles.js +1 -1
- package/dist/esm/components/Select/Option/Styles.js.map +1 -1
- package/dist/esm/components/Select/OptionGroup/OptionGroup.d.ts +2 -4
- package/dist/esm/components/Select/OptionGroup/OptionGroup.d.ts.map +1 -1
- package/dist/esm/components/Select/OptionGroup/OptionGroup.js +21 -9
- package/dist/esm/components/Select/OptionGroup/OptionGroup.js.map +1 -1
- package/dist/esm/components/Select/OptionGroup/Styles.d.ts +1 -1
- package/dist/esm/components/Select/OptionGroup/Styles.d.ts.map +1 -1
- package/dist/esm/components/Select/OptionGroup/Styles.js +2 -2
- package/dist/esm/components/Select/OptionGroup/Styles.js.map +1 -1
- package/dist/esm/components/Select/Select.d.ts +2 -5
- package/dist/esm/components/Select/Select.d.ts.map +1 -1
- package/dist/esm/components/Select/Select.js +12 -36
- package/dist/esm/components/Select/Select.js.map +1 -1
- package/dist/esm/components/SelectTrigger/SelectTrigger.d.ts +1 -0
- package/dist/esm/components/SelectTrigger/SelectTrigger.d.ts.map +1 -1
- package/dist/esm/components/SelectTrigger/SelectTrigger.js +3 -2
- package/dist/esm/components/SelectTrigger/SelectTrigger.js.map +1 -1
- package/dist/esm/components/Tooltip/Styles.d.ts +1 -0
- package/dist/esm/components/Tooltip/Styles.d.ts.map +1 -1
- package/dist/esm/components/Tooltip/Styles.js +3 -1
- package/dist/esm/components/Tooltip/Styles.js.map +1 -1
- package/dist/esm/components/Tooltip/Tooltip.d.ts +1 -0
- package/dist/esm/components/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/esm/components/Tooltip/Tooltip.js +5 -2
- package/dist/esm/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/index.js +152 -87
- package/dist/index.js.map +1 -1
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +1 -1
- package/package.json +1 -1
|
@@ -83,7 +83,11 @@ var Autocomplete = function Autocomplete(_ref) {
|
|
|
83
83
|
var itemRef = (0, _react.useRef)(null);
|
|
84
84
|
var listRef = (0, _react.useRef)(null);
|
|
85
85
|
var selectedOptions = (0, _react.useMemo)(function () {
|
|
86
|
-
|
|
86
|
+
if (Array.isArray(selected)) {
|
|
87
|
+
return selected;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
return [selected];
|
|
87
91
|
}, [selected]);
|
|
88
92
|
var handleSort = (0, _react.useCallback)(function (opts) {
|
|
89
93
|
if (keepSameOptionsOrder) {
|
|
@@ -240,6 +244,44 @@ var Autocomplete = function Autocomplete(_ref) {
|
|
|
240
244
|
setFilter(e.target.value);
|
|
241
245
|
}
|
|
242
246
|
}, []);
|
|
247
|
+
var handleHoverCallback = (0, _react.useCallback)(function (e) {
|
|
248
|
+
setHover({
|
|
249
|
+
item: e,
|
|
250
|
+
by: "mouse"
|
|
251
|
+
});
|
|
252
|
+
}, []);
|
|
253
|
+
var toggleSelected = (0, _react.useCallback)(function (id) {
|
|
254
|
+
var result;
|
|
255
|
+
|
|
256
|
+
if (id !== null) {
|
|
257
|
+
if (type === "multiple") {
|
|
258
|
+
if (selectedOptions.includes(id)) {
|
|
259
|
+
result = selectedOptions.filter(function (_id) {
|
|
260
|
+
return _id !== id;
|
|
261
|
+
});
|
|
262
|
+
} else {
|
|
263
|
+
result = [].concat(_toConsumableArray(selectedOptions), [id]);
|
|
264
|
+
}
|
|
265
|
+
} else {
|
|
266
|
+
if (selectedOptions.includes(id)) {
|
|
267
|
+
result = null;
|
|
268
|
+
} else {
|
|
269
|
+
result = id;
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
setFilter("");
|
|
274
|
+
} else {
|
|
275
|
+
if (typeof handleDefaultOptionChange === "function") {
|
|
276
|
+
handleDefaultOptionChange();
|
|
277
|
+
return;
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
if (typeof handleChange === "function") {
|
|
282
|
+
handleChange(result);
|
|
283
|
+
}
|
|
284
|
+
}, [handleChange, handleDefaultOptionChange, selectedOptions, type]);
|
|
243
285
|
var handleMouseEnter = (0, _react.useCallback)(function (e) {
|
|
244
286
|
if (e === undefined || e === null) {
|
|
245
287
|
return setHover({
|
|
@@ -253,13 +295,11 @@ var Autocomplete = function Autocomplete(_ref) {
|
|
|
253
295
|
by: "mouse"
|
|
254
296
|
});
|
|
255
297
|
}, []);
|
|
256
|
-
var
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
}, []);
|
|
262
|
-
var handleRenderOption = (0, _react.useCallback)(function (item) {
|
|
298
|
+
var handleClick = (0, _react.useCallback)(function (e) {
|
|
299
|
+
e.preventDefault();
|
|
300
|
+
toggleSelected(hover.item);
|
|
301
|
+
}, [toggleSelected, hover]);
|
|
302
|
+
var handleRenderOption = (0, _react.useCallback)(function (item, index) {
|
|
263
303
|
if (isGroup(item)) {
|
|
264
304
|
return /*#__PURE__*/_react.default.createElement(_OptionGroup.OptionGroup, {
|
|
265
305
|
checked: selectedOptions,
|
|
@@ -279,8 +319,9 @@ var Autocomplete = function Autocomplete(_ref) {
|
|
|
279
319
|
return /*#__PURE__*/_react.default.createElement(_Option.Option, {
|
|
280
320
|
name: item.name,
|
|
281
321
|
ref: itemRef,
|
|
282
|
-
key:
|
|
322
|
+
key: index,
|
|
283
323
|
onMouseEnter: handleMouseEnter,
|
|
324
|
+
onClick: handleClick,
|
|
284
325
|
id: item.id,
|
|
285
326
|
hover: item.id === hover.item,
|
|
286
327
|
className: optionClassName,
|
|
@@ -295,7 +336,7 @@ var Autocomplete = function Autocomplete(_ref) {
|
|
|
295
336
|
}
|
|
296
337
|
})
|
|
297
338
|
});
|
|
298
|
-
}, [handleMouseEnter, hover.item, optionClassName, renderOption, filter, selectedOptions, handleHoverCallback, type, handleChange]);
|
|
339
|
+
}, [handleClick, handleMouseEnter, hover.item, optionClassName, renderOption, filter, selectedOptions, handleHoverCallback, type, handleChange]);
|
|
299
340
|
var handleOnMouseLeave = (0, _react.useCallback)(function () {
|
|
300
341
|
setHover({
|
|
301
342
|
item: undefined,
|
|
@@ -339,8 +380,8 @@ var Autocomplete = function Autocomplete(_ref) {
|
|
|
339
380
|
return;
|
|
340
381
|
}
|
|
341
382
|
|
|
342
|
-
if (
|
|
343
|
-
|
|
383
|
+
if (hover.item) {
|
|
384
|
+
toggleSelected(hover.item);
|
|
344
385
|
setFilter("");
|
|
345
386
|
}
|
|
346
387
|
|
|
@@ -351,18 +392,7 @@ var Autocomplete = function Autocomplete(_ref) {
|
|
|
351
392
|
item: (0, _HandleKeyboard.handleKeyboardMovement)(e, hover.item, flatOptions, showAddNew, showDefaultOption),
|
|
352
393
|
by: "keyboard"
|
|
353
394
|
});
|
|
354
|
-
}, [filter, flatOptions,
|
|
355
|
-
var handleClick = (0, _react.useCallback)(function () {
|
|
356
|
-
if (hover.item === null && handleDefaultOptionChange) {
|
|
357
|
-
handleDefaultOptionChange();
|
|
358
|
-
}
|
|
359
|
-
|
|
360
|
-
if (handleChange) {
|
|
361
|
-
handleChange(hover === null || hover === void 0 ? void 0 : hover.item);
|
|
362
|
-
}
|
|
363
|
-
|
|
364
|
-
setFilter("");
|
|
365
|
-
}, [handleChange, handleDefaultOptionChange, hover]);
|
|
395
|
+
}, [filter, flatOptions, toggleSelected, handleDefaultOptionChange, handleEmpty, hover, showAddNew, showDefaultOption]);
|
|
366
396
|
(0, _react.useEffect)(function () {
|
|
367
397
|
if (inputEl) {
|
|
368
398
|
inputEl.onkeydown = handleOnKeyDown;
|
|
@@ -389,7 +419,6 @@ var Autocomplete = function Autocomplete(_ref) {
|
|
|
389
419
|
var onScroll = _ref2.onScroll;
|
|
390
420
|
return /*#__PURE__*/_react.default.createElement(_Styles.StyledAutocompleteBody, {
|
|
391
421
|
key: "body",
|
|
392
|
-
onChange: handleClick,
|
|
393
422
|
onMouseLeave: handleOnMouseLeave
|
|
394
423
|
}, /*#__PURE__*/_react.default.createElement(_reactCustomScrollbars.Scrollbars, {
|
|
395
424
|
ref: listRef,
|
|
@@ -402,6 +431,10 @@ var Autocomplete = function Autocomplete(_ref) {
|
|
|
402
431
|
ref: itemRef,
|
|
403
432
|
hover: hover.item === null,
|
|
404
433
|
onMouseEnter: handleMouseEnter,
|
|
434
|
+
onClick: function onClick(e) {
|
|
435
|
+
e.preventDefault();
|
|
436
|
+
toggleSelected(null);
|
|
437
|
+
},
|
|
405
438
|
renderOption: renderOption({
|
|
406
439
|
name: defaultValue,
|
|
407
440
|
id: null
|
|
@@ -412,8 +445,8 @@ var Autocomplete = function Autocomplete(_ref) {
|
|
|
412
445
|
return null;
|
|
413
446
|
}
|
|
414
447
|
})
|
|
415
|
-
}), list.map(function (item) {
|
|
416
|
-
return handleRenderOption(item);
|
|
448
|
+
}), list.map(function (item, index) {
|
|
449
|
+
return handleRenderOption(item, index);
|
|
417
450
|
}), showNoResult && renderNoResult, showAddNew && renderAddNew));
|
|
418
451
|
});
|
|
419
452
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Autocomplete/Autocomplete.tsx"],"names":["Autocomplete","type","options","inputEl","selected","emptyValue","noResultText","renderOption","option","name","defaultValue","sortDirection","handleChange","optionClassName","handleEmptyAction","disabledInternalSort","AutocompleteClassName","handleDefaultOptionChange","preselectDefaultValue","keepSameOptionsOrder","autoHeightMax","itemRef","listRef","selectedOptions","Array","handleSort","opts","sort","a","b","includes","id","sortList","localeCompare","sortedList","item","undefined","by","hover","setHover","filter","setFilter","handleEmpty","e","button","focus","onAddNewMouseEnter","isGroup","showAddNew","trim","every","v","toLowerCase","renderAddNew","filterOptions","trimmedFilter","isGrouped","hovered","reduce","acc","groupedOption","filteredOptions","length","list","showDefaultOption","flatOptions","handleInputChange","target","key","value","handleMouseEnter","handleHoverCallback","handleRenderOption","checked","onChange","handleOnMouseLeave","handleScroll","itemOffset","getClientHeight","getScrollTop","scrollTop","current","offsetTop","handleOnKeyDown","preventDefault","handleClick","onkeydown","onkeyup","isDefaultOptionSelected","showNoResult","renderNoResult","onScroll","map","displayName"],"mappings":";;;;;;;;;AAAA;;AAUA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwDO,IAAMA,YAAoC,GAAG,SAAvCA,YAAuC,OAmB9C;AAAA,MAlBJC,IAkBI,QAlBJA,IAkBI;AAAA,0BAjBJC,OAiBI;AAAA,MAjBJA,OAiBI,6BAjBM,EAiBN;AAAA,MAhBJC,OAgBI,QAhBJA,OAgBI;AAAA,2BAfJC,QAeI;AAAA,MAfJA,QAeI,8BAfO,EAeP;AAAA,MAdJC,UAcI,QAdJA,UAcI;AAAA,MAbJC,YAaI,QAbJA,YAaI;AAAA,+BAZJC,YAYI;AAAA,MAZJA,YAYI,kCAZW,UAACC,MAAD;AAAA,WAAYA,MAAZ,aAAYA,MAAZ,uBAAYA,MAAM,CAAEC,IAApB;AAAA,GAYX;AAAA,MAXJC,YAWI,QAXJA,YAWI;AAAA,gCAVJC,aAUI;AAAA,MAVJA,aAUI,mCAVY,KAUZ;AAAA,MATJC,YASI,QATJA,YASI;AAAA,MARJC,eAQI,QARJA,eAQI;AAAA,MAPJC,iBAOI,QAPJA,iBAOI;AAAA,MANJC,oBAMI,QANJA,oBAMI;AAAA,MALJC,qBAKI,QALJA,qBAKI;AAAA,MAJJC,yBAII,QAJJA,yBAII;AAAA,MAHJC,qBAGI,QAHJA,qBAGI;AAAA,mCAFJC,oBAEI;AAAA,MAFJA,oBAEI,sCAFmB,KAEnB;AAAA,gCADJC,aACI;AAAA,MADJA,aACI,mCADY,GACZ;AACJ,MAAMC,OAAO,GAAG,mBAAyB,IAAzB,CAAhB;AACA,MAAMC,OAAO,GAAG,mBAAmB,IAAnB,CAAhB;AAEA,MAAMC,eAAe,GAAG,oBACtB;AAAA,WAAOnB,QAAQ,YAAYoB,KAApB,GAA4BpB,QAA5B,GAAuC,CAACA,QAAD,CAA9C;AAAA,GADsB,EAEtB,CAACA,QAAD,CAFsB,CAAxB;AAKA,MAAMqB,UAAU,GAAG,wBAAY,UAACC,IAAD,EAAU;AACvC,QAAIP,oBAAJ,EAA0B;AACxB,aAAOO,IAAP;AACD;;AACD,WAAOA,IAAI,CAACC,IAAL,CAAU,UAACC,CAAD,EAAsBC,CAAtB,EAA8C;AAC7D,UAAIN,eAAe,CAACO,QAAhB,CAAyBD,CAAC,CAACE,EAA3B,KAAkC,CAACR,eAAe,CAACO,QAAhB,CAAyBF,CAAC,CAACG,EAA3B,CAAvC,EAAuE;AACrE,eAAO,CAAP;AACD;;AACD,UAAIR,eAAe,CAACO,QAAhB,CAAyBF,CAAC,CAACG,EAA3B,KAAkC,CAACR,eAAe,CAACO,QAAhB,CAAyBD,CAAC,CAACE,EAA3B,CAAvC,EAAuE;AACrE,eAAO,CAAC,CAAR;AACD;;AACD,aAAO,CAAP;AACD,KARM,CAAP,CAJuC,CAavC;AACD,GAdkB,EAchB,EAdgB,CAAnB;AAgBA,MAAMC,QAAQ,GAAG,wBACf,UAAC9B,OAAD,EAAa;AACX,QAAIa,oBAAJ,EAA0B;AACxB,aAAOU,UAAU,oBAAKvB,OAAL,EAAjB;AACD;;AACD,WAAOuB,UAAU,CACf,mBAAIvB,OAAJ,EAAayB,IAAb,CAAkB,UAACC,CAAD,EAAsBC,CAAtB;AAAA,aAChBlB,aAAa,KAAK,KAAlB,GACIiB,CAAC,CAACnB,IAAF,CAAOwB,aAAP,CAAqBJ,CAAC,CAACpB,IAAvB,CADJ,GAEIoB,CAAC,CAACpB,IAAF,CAAOwB,aAAP,CAAqBL,CAAC,CAACnB,IAAvB,CAHY;AAAA,KAAlB,CADe,CAAjB;AAOD,GAZc,EAaf,CAACE,aAAD,EAAgBI,oBAAhB,EAAsCU,UAAtC,CAbe,CAAjB;AAgBA,MAAMS,UAAU,GAAG,oBAAQ;AAAA,WAAMF,QAAQ,CAAC9B,OAAD,CAAd;AAAA,GAAR,EAAiC,CAACA,OAAD,EAAU8B,QAAV,CAAjC,CAAnB;;AAEA,kBAA0B,qBAAiB;AACzCG,IAAAA,IAAI,EAAEC,SADmC;AAEzCC,IAAAA,EAAE,EAAED;AAFqC,GAAjB,CAA1B;AAAA;AAAA,MAAOE,KAAP;AAAA,MAAcC,QAAd;;AAIA,mBAA4B,qBAAS,EAAT,CAA5B;AAAA;AAAA,MAAOC,MAAP;AAAA,MAAeC,SAAf;;AAEA,MAAMC,WAAW,GAAG,wBAClB,UAACC,CAAD,EAAO;AACL,QAAIA,CAAC,IAAIA,CAAC,CAACC,MAAF,KAAa,CAAtB,EAAyB;AACvB;AACD;;AACD,QAAI9B,iBAAJ,EAAuB;AACrBX,MAAAA,OAAO,SAAP,IAAAA,OAAO,WAAP,YAAAA,OAAO,CAAE0C,KAAT;AACAJ,MAAAA,SAAS,CAAC,EAAD,CAAT;AACA3B,MAAAA,iBAAiB,CAAC0B,MAAD,CAAjB;AACD;AACF,GAViB,EAWlB,CAACA,MAAD,EAAS1B,iBAAT,EAA4BX,OAA5B,CAXkB,CAApB;AAcA,MAAM2C,kBAAkB,GAAG,wBACzB;AAAA,WAAMP,QAAQ,CAAC;AAAEJ,MAAAA,IAAI,EAAE,QAAR;AAAkBE,MAAAA,EAAE,EAAE;AAAtB,KAAD,CAAd;AAAA,GADyB,EAEzB,EAFyB,CAA3B;;AAKA,WAASU,OAAT,CACEZ,IADF,EAE6B;AAC3B,WAAQA,IAAD,CAA4BjC,OAA5B,KAAwCkC,SAA/C;AACD;;AAED,MAAMY,UAAU,GAAG,oBAAQ,YAAM;AAC/B,WAAO,CAAC,EACN3C,UAAU,IACVmC,MAAM,CAACS,IAAP,EADA,IAEA/C,OAAO,CAACgD,KAAR,CAAc,UAAC1C,MAAD,EAAY;AACxB,UAAIuC,OAAO,CAACvC,MAAD,CAAX,EAAqB;AACnB,eAAOA,MAAM,CAACN,OAAP,CAAegD,KAAf,CACL,UAACC,CAAD;AAAA,iBAAOA,CAAC,CAAC1C,IAAF,CAAO2C,WAAP,OAAyBZ,MAAM,CAACS,IAAP,GAAcG,WAAd,EAAhC;AAAA,SADK,CAAP;AAGD;;AACD,aAAO5C,MAAM,CAACC,IAAP,CAAY2C,WAAZ,OAA8BZ,MAAM,CAACS,IAAP,GAAcG,WAAd,EAArC;AACD,KAPD,CAHM,CAAR;AAYD,GAbkB,EAahB,CAAC/C,UAAD,EAAamC,MAAb,EAAqBtC,OAArB,CAbgB,CAAnB;AAeA,MAAMmD,YAAY,GAAG,oBAAQ,YAAM;AACjC,wBACE,6BAAC,iCAAD;AACE,MAAA,GAAG,EAAEf,KAAK,CAACH,IAAN,KAAe,QAAf,GAA0Bd,OAA1B,GAAoC,IAD3C;AAEE,MAAA,GAAG,EAAC,YAFN;AAGE,MAAA,KAAK,EAAEiB,KAAK,CAACH,IAAN,KAAe,QAHxB;AAIE,MAAA,WAAW,EAAEO,WAJf;AAKE,MAAA,YAAY,EAAEI;AALhB,OAOGzC,UAPH,CADF;AAWD,GAZoB,EAYlB,CAACA,UAAD,EAAaqC,WAAb,EAA0BJ,KAA1B,EAAiCQ,kBAAjC,CAZkB,CAArB;AAcA,MAAMQ,aAAa,GAAG,wBACpB,UAACpD,OAAD,EAAUsC,MAAV,EAAqB;AACnB,QAAMe,aAAa,GAAGf,MAAM,CAACS,IAAP,EAAtB;AACA,QAAMO,SAAS,GAAGtD,OAAO,CAAC,CAAD,CAAP,IAAc6C,OAAO,CAAC7C,OAAO,CAAC,CAAD,CAAR,CAAvC;;AACA,QAAIsD,SAAJ,EAAe;AACb,UAAIC,OAAO,GAAG,KAAd;AACA,aAAOvD,OAAO,CAACwD,MAAR,CAAe,UAACC,GAAD,EAAMC,aAAN,EAAwB;AAC5C,YAAMC,eAAe,GAAGD,aAAa,CAAC1D,OAAd,CAAsBsC,MAAtB,CAA6B,UAACW,CAAD;AAAA,iBACnDA,CAAC,CAAC1C,IAAF,CAAO2C,WAAP,GAAqBtB,QAArB,CAA8ByB,aAAa,CAACH,WAAd,EAA9B,CADmD;AAAA,SAA7B,CAAxB;;AAGA,YAAIS,eAAe,CAACC,MAAhB,GAAyB,CAA7B,EAAgC;AAC9B,cAAI,CAACL,OAAD,IAAYjB,MAAhB,EAAwB;AACtBD,YAAAA,QAAQ,CAAC;AAAEJ,cAAAA,IAAI,EAAE0B,eAAe,CAAC,CAAD,CAAf,CAAmB9B,EAA3B;AAA+BM,cAAAA,EAAE,EAAE;AAAnC,aAAD,CAAR;AACD;;AACDoB,UAAAA,OAAO,GAAG,IAAV;AACA,8CAAWE,GAAX,oCAAqBC,aAArB;AAAoC1D,YAAAA,OAAO,EAAE2D;AAA7C;AACD;;AACD,kCAAWF,GAAX;AACD,OAZM,EAYJ,EAZI,CAAP;AAaD,KAfD,MAeO;AACL,UAAME,eAAe,GAAG3D,OAAO,CAACsC,MAAR,CAAe,UAACW,CAAD;AAAA,eACrCA,CAAC,CAAC1C,IAAF,CAAO2C,WAAP,GAAqBtB,QAArB,CAA8ByB,aAAa,CAACH,WAAd,EAA9B,CADqC;AAAA,OAAf,CAAxB;;AAGA,UAAIZ,MAAM,IAAIqB,eAAe,CAACC,MAAhB,GAAyB,CAAvC,EAA0C;AACxCvB,QAAAA,QAAQ,CAAC;AAAEJ,UAAAA,IAAI,EAAE0B,eAAe,CAAC,CAAD,CAAf,CAAmB9B,EAA3B;AAA+BM,UAAAA,EAAE,EAAE;AAAnC,SAAD,CAAR;AACD;;AACD,UAAIwB,eAAe,CAACC,MAAhB,KAA2B,CAA3B,IAAgCzD,UAApC,EAAgD;AAC9CkC,QAAAA,QAAQ,CAAC;AAAEJ,UAAAA,IAAI,EAAE,QAAR;AAAkBE,UAAAA,EAAE,EAAE;AAAtB,SAAD,CAAR;AACD;;AACD,aAAOwB,eAAP;AACD;AACF,GA/BmB,EAgCpB,CAACxD,UAAD,CAhCoB,CAAtB;AAmCA,MAAM0D,IAAI,GAAG,oBACX;AAAA,WAAMT,aAAa,CAACpB,UAAD,EAAaM,MAAb,CAAnB;AAAA,GADW,EAEX,CAACA,MAAD,EAASc,aAAT,EAAwBpB,UAAxB,CAFW,CAAb;AAKA,MAAM8B,iBAAiB,GAAG,oBACxB;AAAA,WAAM,CAAC,CAACtD,YAAF,IAAkB,CAAC8B,MAAzB;AAAA,GADwB,EAExB,CAAC9B,YAAD,EAAe8B,MAAf,CAFwB,CAA1B;AAKA,MAAMyB,WAAW,GAAG,oBAAQ,YAAM;AAChC,QAAM/D,OAAO,GAAG6D,IAAI,CAACL,MAAL,CACd,UACEC,GADF,EAEEnD,MAFF,EAGK;AACH,UAAI,CAACuC,OAAO,CAACvC,MAAD,CAAZ,EAAsB;AACpB,4CAAWmD,GAAX,IAAgBnD,MAAhB;AACD;;AACD,0CAAWmD,GAAX,sBAAmBnD,MAAM,CAACN,OAA1B;AACD,KATa,EAUd,EAVc,CAAhB;AAYA,WAAOoD,aAAa,CAACpD,OAAD,EAAUsC,MAAV,CAApB;AACD,GAdmB,EAcjB,CAACA,MAAD,EAASc,aAAT,EAAwBS,IAAxB,CAdiB,CAApB;AAgBA,MAAMG,iBAAiB,GAAG,wBAAY,UAACvB,CAAD,EAAO;AAC3C,QACEA,CAAC,CAACwB,MAAF,IACA,EAAExB,CAAC,CAACyB,GAAF,KAAU,WAAZ,CADA,IAEA,EAAEzB,CAAC,CAACyB,GAAF,KAAU,SAAZ,CAFA,IAGA,EAAEzB,CAAC,CAACyB,GAAF,KAAU,OAAZ,CAJF,EAKE;AACA3B,MAAAA,SAAS,CAACE,CAAC,CAACwB,MAAF,CAASE,KAAV,CAAT;AACD;AACF,GATyB,EASvB,EATuB,CAA1B;AAWA,MAAMC,gBAAgB,GAAG,wBAAY,UAAC3B,CAAD,EAAO;AAC1C,QAAIA,CAAC,KAAKP,SAAN,IAAmBO,CAAC,KAAK,IAA7B,EAAmC;AACjC,aAAOJ,QAAQ,CAAC;AAAEJ,QAAAA,IAAI,EAAE,IAAR;AAAcE,QAAAA,EAAE,EAAE;AAAlB,OAAD,CAAf;AACD;;AACDE,IAAAA,QAAQ,CAAC;AAAEJ,MAAAA,IAAI,EAAEQ,CAAR;AAAWN,MAAAA,EAAE,EAAE;AAAf,KAAD,CAAR;AACD,GALwB,EAKtB,EALsB,CAAzB;AAOA,MAAMkC,mBAAmB,GAAG,wBAC1B,UAAC5B,CAAD,EAA0C;AACxCJ,IAAAA,QAAQ,CAAC;AAAEJ,MAAAA,IAAI,EAAEQ,CAAR;AAAWN,MAAAA,EAAE,EAAE;AAAf,KAAD,CAAR;AACD,GAHyB,EAI1B,EAJ0B,CAA5B;AAOA,MAAMmC,kBAAkB,GAAG,wBACzB,UAACrC,IAAD,EAAgD;AAC9C,QAAIY,OAAO,CAACZ,IAAD,CAAX,EAAmB;AACjB,0BACE,6BAAC,wBAAD;AACE,QAAA,OAAO,EAAEZ,eADX;AAEE,QAAA,IAAI,EAAEY,IAAI,CAAC1B,IAFb;AAGE,QAAA,GAAG,EAAE0B,IAAI,CAACJ,EAHZ;AAIE,QAAA,QAAQ,EAAEwC,mBAJZ;AAKE,QAAA,EAAE,EAAEpC,IAAI,CAACJ,EALX;AAME,QAAA,KAAK,EAAEO,KAAK,CAACH,IANf;AAOE,QAAA,OAAO,EAAEA,IAAI,CAACjC,OAPhB;AAQE,QAAA,aAAa,EAAEsE,kBARjB;AASE,QAAA,IAAI,EAAEvE,IATR;AAUE,QAAA,QAAQ,EAAEW,YAVZ;AAWE,QAAA,MAAM,EAAE4B;AAXV,QADF;AAeD;;AACD,wBACE,6BAAC,cAAD;AACE,MAAA,IAAI,EAAEL,IAAI,CAAC1B,IADb;AAEE,MAAA,GAAG,EAAEY,OAFP;AAGE,MAAA,GAAG,EAAEc,IAAI,CAACJ,EAHZ;AAIE,MAAA,YAAY,EAAEuC,gBAJhB;AAKE,MAAA,EAAE,EAAEnC,IAAI,CAACJ,EALX;AAME,MAAA,KAAK,EAAEI,IAAI,CAACJ,EAAL,KAAYO,KAAK,CAACH,IAN3B;AAOE,MAAA,SAAS,EAAEtB,eAPb;AAQE,MAAA,YAAY,EAAEN,YAAY,iCACnB4B,IADmB;AACb1B,QAAAA,IAAI,EAAE,+BAAc0B,IAAI,CAAC1B,IAAnB,EAAyB+B,MAAzB;AADO,UAExB;AACET,QAAAA,EAAE,mBAAYI,IAAI,CAACJ,EAAjB,CADJ;AAEE0C,QAAAA,OAAO,EAAElD,eAAe,IAAIA,eAAe,CAACO,QAAhB,CAAyBK,IAAI,CAACJ,EAA9B,CAF9B;AAGEO,QAAAA,KAAK,EAAEA,KAAK,CAACH,IAAN,KAAeA,IAAI,CAACJ,EAH7B;AAIE2C,QAAAA,QAAQ,EAAE;AAAA,iBAAM,IAAN;AAAA;AAJZ,OAFwB;AAR5B,MADF;AAoBD,GAvCwB,EAwCzB,CACEJ,gBADF,EAEEhC,KAAK,CAACH,IAFR,EAGEtB,eAHF,EAIEN,YAJF,EAKEiC,MALF,EAMEjB,eANF,EAOEgD,mBAPF,EAQEtE,IARF,EASEW,YATF,CAxCyB,CAA3B;AAqDA,MAAM+D,kBAAkB,GAAG,wBAAY,YAAM;AAC3CpC,IAAAA,QAAQ,CAAC;AAAEJ,MAAAA,IAAI,EAAEC,SAAR;AAAmBC,MAAAA,EAAE,EAAE;AAAvB,KAAD,CAAR;AACD,GAF0B,EAExB,EAFwB,CAA3B;AAIA,MAAMuC,YAAY,GAAG,wBAAY,UAACb,IAAD,EAAmBc,UAAnB,EAA0C;AACzE,QAAId,IAAI,CAACe,eAAL,KAAyBf,IAAI,CAACgB,YAAL,EAAzB,GAA+CF,UAAU,GAAG,EAAhE,EAAoE;AAClE,aAAOd,IAAI,CAACiB,SAAL,CAAeH,UAAU,GAAGd,IAAI,CAACe,eAAL,EAAb,GAAsC,EAArD,CAAP;AACD;;AACD,QAAIf,IAAI,CAACgB,YAAL,KAAsBF,UAA1B,EAAsC;AACpC,aAAOd,IAAI,CAACiB,SAAL,CAAeH,UAAf,CAAP;AACD;AACF,GAPoB,EAOlB,EAPkB,CAArB;AASA,wBAAU,YAAM;AACd,QAAIvC,KAAK,CAACD,EAAN,KAAa,UAAb,IAA2BC,KAAK,CAACH,IAAN,KAAeC,SAA9C,EAAyD;AACvD,UAAMD,IAA6B,GAAGd,OAAO,CAAC4D,OAA9C;AACA,UAAMlB,KAAI,GAAGzC,OAAO,CAAC2D,OAArB;;AACA,UAAI5D,OAAO,IAAIc,IAAX,IAAmB4B,KAAvB,EAA6B;AAC3Ba,QAAAA,YAAY,CAACb,KAAD,EAAO5B,IAAI,CAAC+C,SAAZ,CAAZ;AACD;AACF;AACF,GARD,EAQG,CAACN,YAAD,EAAetC,KAAf,CARH;AAUA,MAAM6C,eAAe,GAAG,wBACtB,UAACxC,CAAD,EAAO;AACL,QAAIA,CAAC,CAACyB,GAAF,KAAU,OAAd,EAAuB;AACrBzB,MAAAA,CAAC,CAACyC,cAAF;;AACA,UAAI9C,KAAK,CAACH,IAAN,KAAeC,SAAf,IAA4BI,MAAM,KAAK,EAA3C,EAA+C;AAC7C;AACD;;AACD,UAAIF,KAAK,CAACH,IAAN,KAAe,QAAnB,EAA6B;AAC3BO,QAAAA,WAAW,CAAC,IAAD,CAAX;AACA;AACD;;AACD,UAAIJ,KAAK,CAACH,IAAN,KAAe,IAAf,IAAuBlB,yBAA3B,EAAsD;AACpDA,QAAAA,yBAAyB;AACzB;AACD;;AACD,UAAIL,YAAJ,EAAkB;AAChBA,QAAAA,YAAY,CAAC0B,KAAK,CAACH,IAAP,CAAZ;AACAM,QAAAA,SAAS,CAAC,EAAD,CAAT;AACD;;AACD;AACD;;AACDF,IAAAA,QAAQ,CAAC;AACPJ,MAAAA,IAAI,EAAE,4CACJQ,CADI,EAEJL,KAAK,CAACH,IAFF,EAGJ8B,WAHI,EAIJjB,UAJI,EAKJgB,iBALI,CADC;AAQP3B,MAAAA,EAAE,EAAE;AARG,KAAD,CAAR;AAUD,GA/BqB,EAgCtB,CACEG,MADF,EAEEyB,WAFF,EAGErD,YAHF,EAIEK,yBAJF,EAKEyB,WALF,EAMEJ,KANF,EAOEU,UAPF,EAQEgB,iBARF,CAhCsB,CAAxB;AA4CA,MAAMqB,WAAW,GAAG,wBAAY,YAAM;AACpC,QAAI/C,KAAK,CAACH,IAAN,KAAe,IAAf,IAAuBlB,yBAA3B,EAAsD;AACpDA,MAAAA,yBAAyB;AAC1B;;AACD,QAAIL,YAAJ,EAAkB;AAChBA,MAAAA,YAAY,CAAC0B,KAAD,aAACA,KAAD,uBAACA,KAAK,CAAEH,IAAR,CAAZ;AACD;;AACDM,IAAAA,SAAS,CAAC,EAAD,CAAT;AACD,GARmB,EAQjB,CAAC7B,YAAD,EAAeK,yBAAf,EAA0CqB,KAA1C,CARiB,CAApB;AAUA,wBAAU,YAAM;AACd,QAAInC,OAAJ,EAAa;AACXA,MAAAA,OAAO,CAACmF,SAAR,GAAoBH,eAApB;AACAhF,MAAAA,OAAO,CAACoF,OAAR,GAAkBrB,iBAAlB;AACD;AACF,GALD,EAKG,CAACA,iBAAD,EAAoBiB,eAApB,EAAqChF,OAArC,CALH;AAOA,MAAMqF,uBAAuB,GAAG,wBAAY,YAAM;AAChD,QAAItE,qBAAJ,EAA2B;AACzB,aAAOK,eAAe,CAACuC,MAAhB,GAAyB,CAAzB,IAA8BvC,eAAe,CAAC,CAAD,CAAf,KAAuB,EAA5D;AACD,KAFD,MAEO;AACL,aACEA,eAAe,CAAC,CAAD,CAAf,KAAuB,IAAvB,IACAA,eAAe,CAACuC,MAAhB,KAA2BG,WAAW,CAACH,MAFzC;AAID;AACF,GAT+B,EAS7B,CAACG,WAAW,CAACH,MAAb,EAAqB5C,qBAArB,EAA4CK,eAA5C,CAT6B,CAAhC;AAWA,MAAMkE,YAAY,GAAG,oBACnB;AAAA,WAAMnF,YAAY,IAAI,CAAC0C,UAAjB,IAA+Be,IAAI,CAACD,MAAL,GAAc,CAAnD;AAAA,GADmB,EAEnB,CAACC,IAAI,CAACD,MAAN,EAAcxD,YAAd,EAA4B0C,UAA5B,CAFmB,CAArB;AAKA,MAAM0C,cAAc,GAAG,oBACrB;AAAA,wBACE,6BAAC,kCAAD,QAA6BpF,YAA7B,CADF;AAAA,GADqB,EAIrB,CAACA,YAAD,CAJqB,CAAvB;AAOA,sBACE,6BAAC,sCAAD;AACE,IAAA,SAAS,EAAEU,qBADb;AAEE,IAAA,SAAS,EACP,CAACN,YAAD,IAAiB,CAACL,UAAlB,IAAgC,CAACC,YAAjC,IAAiDyD,IAAI,CAACD,MAAL,GAAc;AAHnE,KAMG;AAAA,QAAG6B,QAAH,SAAGA,QAAH;AAAA,wBACC,6BAAC,8BAAD;AACE,MAAA,GAAG,EAAC,MADN;AAEE,MAAA,QAAQ,EAAEN,WAFZ;AAGE,MAAA,YAAY,EAAEV;AAHhB,oBAKE,6BAAC,iCAAD;AACE,MAAA,GAAG,EAAErD,OADP;AAEE,MAAA,GAAG,EAAC,WAFN;AAGE,MAAA,UAAU,MAHZ;AAIE,MAAA,aAAa,EAAEF,aAJjB;AAKE,MAAA,QAAQ,EAAEuE;AALZ,OAOGjF,YAAY,IAAI,CAAC8B,MAAjB,iBACC,6BAAC,cAAD;AACE,MAAA,IAAI,EAAE9B,YADR;AAEE,MAAA,GAAG,EAAEW,OAFP;AAGE,MAAA,KAAK,EAAEiB,KAAK,CAACH,IAAN,KAAe,IAHxB;AAIE,MAAA,YAAY,EAAEmC,gBAJhB;AAKE,MAAA,YAAY,EAAE/D,YAAY,CACxB;AAAEE,QAAAA,IAAI,EAAEC,YAAR;AAAsBqB,QAAAA,EAAE,EAAE;AAA1B,OADwB,EAExB;AACE0C,QAAAA,OAAO,EAAEe,uBAAuB,EADlC;AAEElD,QAAAA,KAAK,EAAEA,KAAK,CAACH,IAAN,KAAe,IAFxB;AAGEuC,QAAAA,QAAQ,EAAE;AAAA,iBAAM,IAAN;AAAA;AAHZ,OAFwB;AAL5B,MARJ,EAuBGX,IAAI,CAAC6B,GAAL,CAAS,UAACzD,IAAD;AAAA,aAA4BqC,kBAAkB,CAACrC,IAAD,CAA9C;AAAA,KAAT,CAvBH,EAwBGsD,YAAY,IAAIC,cAxBnB,EAyBG1C,UAAU,IAAIK,YAzBjB,CALF,CADD;AAAA,GANH,CADF;AA4CD,CA5ZM;;;AA8ZPrD,YAAY,CAAC6F,WAAb,GAA2B,cAA3B","sourcesContent":["import React, {\n FC,\n useCallback,\n useState,\n useMemo,\n useEffect,\n useRef,\n ReactNode,\n ReactElement,\n} from \"react\";\nimport { Scrollbars } from \"react-custom-scrollbars\";\nimport highlightText from \"../../hooks/useHighlightText\";\nimport { handleKeyboardMovement } from \"./HandleKeyboard\";\nimport { IOptionItemProps, Option } from \"../Select/Option\";\nimport { IOptionGroupProps, OptionGroup } from \"../Select/OptionGroup\";\nimport {\n StyledAutocompleteBody,\n StyledAutocompleteNewItem,\n StyledAutocompleteNoResult,\n StyledAutocompleteScrollShadow,\n} from \"./Styles\";\n\nexport interface IAutocompleteProps {\n /** Select type: single or multiple */\n type?: \"single\" | \"multiple\";\n /** List of options or group options */\n options?: (IOptionGroupProps | IOptionItemProps)[];\n /** Selected values */\n selected?: (string | number)[] | string | number;\n /** Input Element. */\n inputEl?: HTMLInputElement | null;\n /** Text for empty value */\n emptyValue?: string;\n /** Text for No result */\n noResultText?: string;\n /** Render option */\n renderOption?: (\n option: Record<string, ReactNode>,\n data: Record<string, unknown>\n ) => string | ReactElement;\n /** Default value that renders on top of list */\n defaultValue?: string;\n /** Sort direction for labels */\n sortDirection?: \"asc\" | \"desc\";\n /** handleChange callback */\n handleChange?: (\n e: (string | number)[] | string | number | null | undefined\n ) => void;\n /** ClassName for single option */\n optionClassName?: string;\n /** handleEmptyAction */\n handleEmptyAction?: (e: string | number) => void;\n /** Disable sorting options */\n disabledInternalSort?: boolean;\n /** ClassName for Autocomplete component */\n AutocompleteClassName?: string;\n /** handleDefaultOptionChange callback */\n handleDefaultOptionChange?: () => void;\n /** Should default value be selected */\n preselectDefaultValue?: boolean;\n /** Should order stay the same after choosing an option */\n keepSameOptionsOrder?: boolean;\n /** Set max height property for scrollbars */\n autoHeightMax?: number;\n}\n\ninterface IHover {\n item: number | string | undefined | null;\n by: \"mouse\" | \"keyboard\" | undefined;\n}\n\nexport const Autocomplete: FC<IAutocompleteProps> = ({\n type,\n options = [],\n inputEl,\n selected = [],\n emptyValue,\n noResultText,\n renderOption = (option) => option?.name,\n defaultValue,\n sortDirection = \"asc\",\n handleChange,\n optionClassName,\n handleEmptyAction,\n disabledInternalSort,\n AutocompleteClassName,\n handleDefaultOptionChange,\n preselectDefaultValue,\n keepSameOptionsOrder = false,\n autoHeightMax = 340,\n}) => {\n const itemRef = useRef<HTMLLabelElement>(null);\n const listRef = useRef<Scrollbars>(null);\n\n const selectedOptions = useMemo(\n () => (selected instanceof Array ? selected : [selected]),\n [selected]\n );\n\n const handleSort = useCallback((opts) => {\n if (keepSameOptionsOrder) {\n return opts;\n }\n return opts.sort((a: IOptionItemProps, b: IOptionItemProps) => {\n if (selectedOptions.includes(b.id) && !selectedOptions.includes(a.id)) {\n return 1;\n }\n if (selectedOptions.includes(a.id) && !selectedOptions.includes(b.id)) {\n return -1;\n }\n return 0;\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const sortList = useCallback(\n (options) => {\n if (disabledInternalSort) {\n return handleSort([...options]);\n }\n return handleSort(\n [...options].sort((a: IOptionItemProps, b: IOptionItemProps) =>\n sortDirection === \"asc\"\n ? a.name.localeCompare(b.name)\n : b.name.localeCompare(a.name)\n )\n );\n },\n [sortDirection, disabledInternalSort, handleSort]\n );\n\n const sortedList = useMemo(() => sortList(options), [options, sortList]);\n\n const [hover, setHover] = useState<IHover>({\n item: undefined,\n by: undefined,\n });\n const [filter, setFilter] = useState(\"\");\n\n const handleEmpty = useCallback(\n (e) => {\n if (e && e.button !== 0) {\n return;\n }\n if (handleEmptyAction) {\n inputEl?.focus();\n setFilter(\"\");\n handleEmptyAction(filter);\n }\n },\n [filter, handleEmptyAction, inputEl]\n );\n\n const onAddNewMouseEnter = useCallback(\n () => setHover({ item: \"addNew\", by: \"mouse\" }),\n []\n );\n\n function isGroup(\n item: IOptionGroupProps | IOptionItemProps\n ): item is IOptionGroupProps {\n return (item as IOptionGroupProps).options !== undefined;\n }\n\n const showAddNew = useMemo(() => {\n return !!(\n emptyValue &&\n filter.trim() &&\n options.every((option) => {\n if (isGroup(option)) {\n return option.options.every(\n (v) => v.name.toLowerCase() !== filter.trim().toLowerCase()\n );\n }\n return option.name.toLowerCase() !== filter.trim().toLowerCase();\n })\n );\n }, [emptyValue, filter, options]);\n\n const renderAddNew = useMemo(() => {\n return (\n <StyledAutocompleteNewItem\n ref={hover.item === \"addNew\" ? itemRef : null}\n key=\"emptyValue\"\n hover={hover.item === \"addNew\"}\n onMouseDown={handleEmpty}\n onMouseEnter={onAddNewMouseEnter}\n >\n {emptyValue}\n </StyledAutocompleteNewItem>\n );\n }, [emptyValue, handleEmpty, hover, onAddNewMouseEnter]);\n\n const filterOptions = useCallback(\n (options, filter) => {\n const trimmedFilter = filter.trim();\n const isGrouped = options[0] && isGroup(options[0]);\n if (isGrouped) {\n let hovered = false;\n return options.reduce((acc, groupedOption) => {\n const filteredOptions = groupedOption.options.filter((v) =>\n v.name.toLowerCase().includes(trimmedFilter.toLowerCase())\n );\n if (filteredOptions.length > 0) {\n if (!hovered && filter) {\n setHover({ item: filteredOptions[0].id, by: \"keyboard\" });\n }\n hovered = true;\n return [...acc, { ...groupedOption, options: filteredOptions }];\n }\n return [...acc];\n }, []);\n } else {\n const filteredOptions = options.filter((v) =>\n v.name.toLowerCase().includes(trimmedFilter.toLowerCase())\n );\n if (filter && filteredOptions.length > 0) {\n setHover({ item: filteredOptions[0].id, by: \"keyboard\" });\n }\n if (filteredOptions.length === 0 && emptyValue) {\n setHover({ item: \"addNew\", by: \"keyboard\" });\n }\n return filteredOptions;\n }\n },\n [emptyValue]\n );\n\n const list = useMemo(\n () => filterOptions(sortedList, filter),\n [filter, filterOptions, sortedList]\n );\n\n const showDefaultOption = useMemo(\n () => !!defaultValue && !filter,\n [defaultValue, filter]\n );\n\n const flatOptions = useMemo(() => {\n const options = list.reduce(\n (\n acc: (IOptionItemProps | IOptionGroupProps | [])[],\n option: IOptionItemProps | IOptionGroupProps\n ) => {\n if (!isGroup(option)) {\n return [...acc, option];\n }\n return [...acc, ...option.options];\n },\n []\n );\n return filterOptions(options, filter);\n }, [filter, filterOptions, list]);\n\n const handleInputChange = useCallback((e) => {\n if (\n e.target &&\n !(e.key === \"ArrowDown\") &&\n !(e.key === \"ArrowUp\") &&\n !(e.key === \"Enter\")\n ) {\n setFilter(e.target.value);\n }\n }, []);\n\n const handleMouseEnter = useCallback((e) => {\n if (e === undefined || e === null) {\n return setHover({ item: null, by: \"mouse\" });\n }\n setHover({ item: e, by: \"mouse\" });\n }, []);\n\n const handleHoverCallback = useCallback(\n (e: number | string | undefined): void => {\n setHover({ item: e, by: \"mouse\" });\n },\n []\n );\n\n const handleRenderOption = useCallback(\n (item: IOptionItemProps | IOptionGroupProps) => {\n if (isGroup(item)) {\n return (\n <OptionGroup\n checked={selectedOptions}\n name={item.name}\n key={item.id}\n setHover={handleHoverCallback}\n id={item.id}\n hover={hover.item}\n options={item.options}\n renderOptions={handleRenderOption}\n type={type}\n onChange={handleChange}\n filter={filter}\n />\n );\n }\n return (\n <Option\n name={item.name}\n ref={itemRef}\n key={item.id}\n onMouseEnter={handleMouseEnter}\n id={item.id}\n hover={item.id === hover.item}\n className={optionClassName}\n renderOption={renderOption(\n { ...item, name: highlightText(item.name, filter) },\n {\n id: `option_${item.id}`,\n checked: selectedOptions && selectedOptions.includes(item.id),\n hover: hover.item === item.id,\n onChange: () => null,\n }\n )}\n />\n );\n },\n [\n handleMouseEnter,\n hover.item,\n optionClassName,\n renderOption,\n filter,\n selectedOptions,\n handleHoverCallback,\n type,\n handleChange,\n ]\n );\n\n const handleOnMouseLeave = useCallback(() => {\n setHover({ item: undefined, by: \"mouse\" });\n }, []);\n\n const handleScroll = useCallback((list: Scrollbars, itemOffset: number) => {\n if (list.getClientHeight() + list.getScrollTop() < itemOffset + 40) {\n return list.scrollTop(itemOffset - list.getClientHeight() + 30);\n }\n if (list.getScrollTop() > itemOffset) {\n return list.scrollTop(itemOffset);\n }\n }, []);\n\n useEffect(() => {\n if (hover.by === \"keyboard\" && hover.item !== undefined) {\n const item: HTMLLabelElement | null = itemRef.current;\n const list = listRef.current;\n if (itemRef && item && list) {\n handleScroll(list, item.offsetTop);\n }\n }\n }, [handleScroll, hover]);\n\n const handleOnKeyDown = useCallback(\n (e) => {\n if (e.key === \"Enter\") {\n e.preventDefault();\n if (hover.item === undefined && filter === \"\") {\n return;\n }\n if (hover.item === \"addNew\") {\n handleEmpty(null);\n return;\n }\n if (hover.item === null && handleDefaultOptionChange) {\n handleDefaultOptionChange();\n return;\n }\n if (handleChange) {\n handleChange(hover.item);\n setFilter(\"\");\n }\n return;\n }\n setHover({\n item: handleKeyboardMovement(\n e,\n hover.item,\n flatOptions,\n showAddNew,\n showDefaultOption\n ),\n by: \"keyboard\",\n });\n },\n [\n filter,\n flatOptions,\n handleChange,\n handleDefaultOptionChange,\n handleEmpty,\n hover,\n showAddNew,\n showDefaultOption,\n ]\n );\n\n const handleClick = useCallback(() => {\n if (hover.item === null && handleDefaultOptionChange) {\n handleDefaultOptionChange();\n }\n if (handleChange) {\n handleChange(hover?.item);\n }\n setFilter(\"\");\n }, [handleChange, handleDefaultOptionChange, hover]);\n\n useEffect(() => {\n if (inputEl) {\n inputEl.onkeydown = handleOnKeyDown;\n inputEl.onkeyup = handleInputChange;\n }\n }, [handleInputChange, handleOnKeyDown, inputEl]);\n\n const isDefaultOptionSelected = useCallback(() => {\n if (preselectDefaultValue) {\n return selectedOptions.length < 1 || selectedOptions[0] === \"\";\n } else {\n return (\n selectedOptions[0] === null ||\n selectedOptions.length === flatOptions.length\n );\n }\n }, [flatOptions.length, preselectDefaultValue, selectedOptions]);\n\n const showNoResult = useMemo(\n () => noResultText && !showAddNew && list.length < 1,\n [list.length, noResultText, showAddNew]\n );\n\n const renderNoResult = useMemo(\n () => (\n <StyledAutocompleteNoResult>{noResultText}</StyledAutocompleteNoResult>\n ),\n [noResultText]\n );\n\n return (\n <StyledAutocompleteScrollShadow\n className={AutocompleteClassName}\n $isHidden={\n !defaultValue && !emptyValue && !noResultText && list.length < 1\n }\n >\n {({ onScroll }): JSX.Element => (\n <StyledAutocompleteBody\n key=\"body\"\n onChange={handleClick}\n onMouseLeave={handleOnMouseLeave}\n >\n <Scrollbars\n ref={listRef}\n key=\"scrollBar\"\n autoHeight\n autoHeightMax={autoHeightMax}\n onScroll={onScroll}\n >\n {defaultValue && !filter && (\n <Option\n name={defaultValue}\n ref={itemRef}\n hover={hover.item === null}\n onMouseEnter={handleMouseEnter}\n renderOption={renderOption(\n { name: defaultValue, id: null },\n {\n checked: isDefaultOptionSelected(),\n hover: hover.item === null,\n onChange: () => null,\n }\n )}\n />\n )}\n {list.map((item: IOptionItemProps) => handleRenderOption(item))}\n {showNoResult && renderNoResult}\n {showAddNew && renderAddNew}\n </Scrollbars>\n </StyledAutocompleteBody>\n )}\n </StyledAutocompleteScrollShadow>\n );\n};\n\nAutocomplete.displayName = \"Autocomplete\";\n"],"file":"Autocomplete.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Autocomplete/Autocomplete.tsx"],"names":["Autocomplete","type","options","inputEl","selected","emptyValue","noResultText","renderOption","option","name","defaultValue","sortDirection","handleChange","optionClassName","handleEmptyAction","disabledInternalSort","AutocompleteClassName","handleDefaultOptionChange","preselectDefaultValue","keepSameOptionsOrder","autoHeightMax","itemRef","listRef","selectedOptions","Array","isArray","handleSort","opts","sort","a","b","includes","id","sortList","localeCompare","sortedList","item","undefined","by","hover","setHover","filter","setFilter","handleEmpty","e","button","focus","onAddNewMouseEnter","isGroup","showAddNew","trim","every","v","toLowerCase","renderAddNew","filterOptions","trimmedFilter","isGrouped","hovered","reduce","acc","groupedOption","filteredOptions","length","list","showDefaultOption","flatOptions","handleInputChange","target","key","value","handleHoverCallback","toggleSelected","result","_id","handleMouseEnter","handleClick","preventDefault","handleRenderOption","index","checked","onChange","handleOnMouseLeave","handleScroll","itemOffset","getClientHeight","getScrollTop","scrollTop","current","offsetTop","handleOnKeyDown","onkeydown","onkeyup","isDefaultOptionSelected","showNoResult","renderNoResult","onScroll","map","displayName"],"mappings":"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","sourcesContent":["import React, {\n FC,\n useCallback,\n useState,\n useMemo,\n useEffect,\n useRef,\n ReactNode,\n ReactElement,\n} from \"react\";\nimport { Scrollbars } from \"react-custom-scrollbars\";\nimport highlightText from \"../../hooks/useHighlightText\";\nimport { handleKeyboardMovement } from \"./HandleKeyboard\";\nimport { IOptionItemProps, Option } from \"../Select/Option\";\nimport { IOptionGroupProps, OptionGroup } from \"../Select/OptionGroup\";\nimport {\n StyledAutocompleteBody,\n StyledAutocompleteNewItem,\n StyledAutocompleteNoResult,\n StyledAutocompleteScrollShadow,\n} from \"./Styles\";\n\nexport interface IAutocompleteProps {\n /** Select type: single or multiple */\n type?: \"single\" | \"multiple\";\n /** List of options or group options */\n options?: (IOptionGroupProps | IOptionItemProps)[];\n /** Selected values */\n selected?: (string | number)[] | string | number;\n /** Input Element. */\n inputEl?: HTMLInputElement | null;\n /** Text for empty value */\n emptyValue?: string;\n /** Text for No result */\n noResultText?: string;\n /** Render option */\n renderOption?: (\n option: Record<string, ReactNode>,\n data: Record<string, unknown>\n ) => string | ReactElement;\n /** Default value that renders on top of list */\n defaultValue?: string;\n /** Sort direction for labels */\n sortDirection?: \"asc\" | \"desc\";\n /** handleChange callback */\n handleChange?: (\n e: (string | number)[] | string | number | null | undefined\n ) => void;\n /** ClassName for single option */\n optionClassName?: string;\n /** handleEmptyAction */\n handleEmptyAction?: (e: string | number) => void;\n /** Disable sorting options */\n disabledInternalSort?: boolean;\n /** ClassName for Autocomplete component */\n AutocompleteClassName?: string;\n /** handleDefaultOptionChange callback */\n handleDefaultOptionChange?: () => void;\n /** Should default value be selected */\n preselectDefaultValue?: boolean;\n /** Should order stay the same after choosing an option */\n keepSameOptionsOrder?: boolean;\n /** Set max height property for scrollbars */\n autoHeightMax?: number;\n}\n\ninterface IHover {\n item: number | string | undefined | null;\n by: \"mouse\" | \"keyboard\" | undefined;\n}\n\nexport const Autocomplete: FC<IAutocompleteProps> = ({\n type,\n options = [],\n inputEl,\n selected = [],\n emptyValue,\n noResultText,\n renderOption = (option) => option?.name,\n defaultValue,\n sortDirection = \"asc\",\n handleChange,\n optionClassName,\n handleEmptyAction,\n disabledInternalSort,\n AutocompleteClassName,\n handleDefaultOptionChange,\n preselectDefaultValue,\n keepSameOptionsOrder = false,\n autoHeightMax = 340,\n}) => {\n const itemRef = useRef<HTMLLIElement>(null);\n const listRef = useRef<Scrollbars>(null);\n\n const selectedOptions = useMemo(() => {\n if (Array.isArray(selected)) {\n return selected;\n }\n return [selected];\n }, [selected]);\n\n const handleSort = useCallback((opts) => {\n if (keepSameOptionsOrder) {\n return opts;\n }\n return opts.sort((a: IOptionItemProps, b: IOptionItemProps) => {\n if (selectedOptions.includes(b.id) && !selectedOptions.includes(a.id)) {\n return 1;\n }\n if (selectedOptions.includes(a.id) && !selectedOptions.includes(b.id)) {\n return -1;\n }\n return 0;\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const sortList = useCallback(\n (options) => {\n if (disabledInternalSort) {\n return handleSort([...options]);\n }\n return handleSort(\n [...options].sort((a: IOptionItemProps, b: IOptionItemProps) =>\n sortDirection === \"asc\"\n ? a.name.localeCompare(b.name)\n : b.name.localeCompare(a.name)\n )\n );\n },\n [sortDirection, disabledInternalSort, handleSort]\n );\n\n const sortedList = useMemo(() => sortList(options), [options, sortList]);\n\n const [hover, setHover] = useState<IHover>({\n item: undefined,\n by: undefined,\n });\n const [filter, setFilter] = useState(\"\");\n\n const handleEmpty = useCallback(\n (e) => {\n if (e && e.button !== 0) {\n return;\n }\n if (handleEmptyAction) {\n inputEl?.focus();\n setFilter(\"\");\n handleEmptyAction(filter);\n }\n },\n [filter, handleEmptyAction, inputEl]\n );\n\n const onAddNewMouseEnter = useCallback(\n () => setHover({ item: \"addNew\", by: \"mouse\" }),\n []\n );\n\n function isGroup(\n item: IOptionGroupProps | IOptionItemProps\n ): item is IOptionGroupProps {\n return (item as IOptionGroupProps).options !== undefined;\n }\n\n const showAddNew = useMemo(() => {\n return !!(\n emptyValue &&\n filter.trim() &&\n options.every((option) => {\n if (isGroup(option)) {\n return option.options.every(\n (v) => v.name.toLowerCase() !== filter.trim().toLowerCase()\n );\n }\n return option.name.toLowerCase() !== filter.trim().toLowerCase();\n })\n );\n }, [emptyValue, filter, options]);\n\n const renderAddNew = useMemo(() => {\n return (\n <StyledAutocompleteNewItem\n ref={hover.item === \"addNew\" ? itemRef : null}\n key=\"emptyValue\"\n hover={hover.item === \"addNew\"}\n onMouseDown={handleEmpty}\n onMouseEnter={onAddNewMouseEnter}\n >\n {emptyValue}\n </StyledAutocompleteNewItem>\n );\n }, [emptyValue, handleEmpty, hover, onAddNewMouseEnter]);\n\n const filterOptions = useCallback(\n (options, filter) => {\n const trimmedFilter = filter.trim();\n const isGrouped = options[0] && isGroup(options[0]);\n if (isGrouped) {\n let hovered = false;\n return options.reduce((acc, groupedOption) => {\n const filteredOptions = groupedOption.options.filter((v) =>\n v.name.toLowerCase().includes(trimmedFilter.toLowerCase())\n );\n if (filteredOptions.length > 0) {\n if (!hovered && filter) {\n setHover({ item: filteredOptions[0].id, by: \"keyboard\" });\n }\n hovered = true;\n return [...acc, { ...groupedOption, options: filteredOptions }];\n }\n return [...acc];\n }, []);\n } else {\n const filteredOptions = options.filter((v) =>\n v.name.toLowerCase().includes(trimmedFilter.toLowerCase())\n );\n if (filter && filteredOptions.length > 0) {\n setHover({ item: filteredOptions[0].id, by: \"keyboard\" });\n }\n if (filteredOptions.length === 0 && emptyValue) {\n setHover({ item: \"addNew\", by: \"keyboard\" });\n }\n return filteredOptions;\n }\n },\n [emptyValue]\n );\n\n const list = useMemo(\n () => filterOptions(sortedList, filter),\n [filter, filterOptions, sortedList]\n );\n\n const showDefaultOption = useMemo(\n () => !!defaultValue && !filter,\n [defaultValue, filter]\n );\n\n const flatOptions = useMemo(() => {\n const options = list.reduce(\n (\n acc: (IOptionItemProps | IOptionGroupProps | [])[],\n option: IOptionItemProps | IOptionGroupProps\n ) => {\n if (!isGroup(option)) {\n return [...acc, option];\n }\n return [...acc, ...option.options];\n },\n []\n );\n return filterOptions(options, filter);\n }, [filter, filterOptions, list]);\n\n const handleInputChange = useCallback((e) => {\n if (\n e.target &&\n !(e.key === \"ArrowDown\") &&\n !(e.key === \"ArrowUp\") &&\n !(e.key === \"Enter\")\n ) {\n setFilter(e.target.value);\n }\n }, []);\n\n const handleHoverCallback = useCallback(\n (e: number | string | undefined): void => {\n setHover({ item: e, by: \"mouse\" });\n },\n []\n );\n\n const toggleSelected = useCallback(\n (id) => {\n let result;\n\n if (id !== null) {\n if (type === \"multiple\") {\n if (selectedOptions.includes(id)) {\n result = selectedOptions.filter((_id) => _id !== id);\n } else {\n result = [...selectedOptions, id];\n }\n } else {\n if (selectedOptions.includes(id)) {\n result = null;\n } else {\n result = id;\n }\n }\n setFilter(\"\");\n } else {\n if (typeof handleDefaultOptionChange === \"function\") {\n handleDefaultOptionChange();\n return;\n }\n }\n\n if (typeof handleChange === \"function\") {\n handleChange(result);\n }\n },\n [handleChange, handleDefaultOptionChange, selectedOptions, type]\n );\n\n const handleMouseEnter = useCallback((e) => {\n if (e === undefined || e === null) {\n return setHover({ item: null, by: \"mouse\" });\n }\n setHover({ item: e, by: \"mouse\" });\n }, []);\n\n const handleClick = useCallback(\n (e) => {\n e.preventDefault();\n toggleSelected(hover.item);\n },\n [toggleSelected, hover]\n );\n\n const handleRenderOption = useCallback(\n (item: IOptionItemProps | IOptionGroupProps, index) => {\n if (isGroup(item)) {\n return (\n <OptionGroup\n checked={selectedOptions}\n name={item.name}\n key={item.id}\n setHover={handleHoverCallback}\n id={item.id}\n hover={hover.item}\n options={item.options}\n renderOptions={handleRenderOption}\n type={type}\n onChange={handleChange}\n filter={filter}\n />\n );\n }\n return (\n <Option\n name={item.name}\n ref={itemRef}\n key={index}\n onMouseEnter={handleMouseEnter}\n onClick={handleClick}\n id={item.id}\n hover={item.id === hover.item}\n className={optionClassName}\n renderOption={renderOption(\n { ...item, name: highlightText(item.name, filter) },\n {\n id: `option_${item.id}`,\n checked: selectedOptions && selectedOptions.includes(item.id),\n hover: hover.item === item.id,\n onChange: () => null,\n }\n )}\n />\n );\n },\n [\n handleClick,\n handleMouseEnter,\n hover.item,\n optionClassName,\n renderOption,\n filter,\n selectedOptions,\n handleHoverCallback,\n type,\n handleChange,\n ]\n );\n\n const handleOnMouseLeave = useCallback(() => {\n setHover({ item: undefined, by: \"mouse\" });\n }, []);\n\n const handleScroll = useCallback((list: Scrollbars, itemOffset: number) => {\n if (list.getClientHeight() + list.getScrollTop() < itemOffset + 40) {\n return list.scrollTop(itemOffset - list.getClientHeight() + 30);\n }\n if (list.getScrollTop() > itemOffset) {\n return list.scrollTop(itemOffset);\n }\n }, []);\n\n useEffect(() => {\n if (hover.by === \"keyboard\" && hover.item !== undefined) {\n const item: HTMLLIElement | null = itemRef.current;\n const list = listRef.current;\n if (itemRef && item && list) {\n handleScroll(list, item.offsetTop);\n }\n }\n }, [handleScroll, hover]);\n\n const handleOnKeyDown = useCallback(\n (e) => {\n if (e.key === \"Enter\") {\n e.preventDefault();\n\n if (hover.item === undefined && filter === \"\") {\n return;\n }\n if (hover.item === \"addNew\") {\n handleEmpty(null);\n return;\n }\n if (hover.item === null && handleDefaultOptionChange) {\n handleDefaultOptionChange();\n return;\n }\n\n if (hover.item) {\n toggleSelected(hover.item);\n setFilter(\"\");\n }\n return;\n }\n setHover({\n item: handleKeyboardMovement(\n e,\n hover.item,\n flatOptions,\n showAddNew,\n showDefaultOption\n ),\n by: \"keyboard\",\n });\n },\n [\n filter,\n flatOptions,\n toggleSelected,\n handleDefaultOptionChange,\n handleEmpty,\n hover,\n showAddNew,\n showDefaultOption,\n ]\n );\n\n useEffect(() => {\n if (inputEl) {\n inputEl.onkeydown = handleOnKeyDown;\n inputEl.onkeyup = handleInputChange;\n }\n }, [handleInputChange, handleOnKeyDown, inputEl]);\n\n const isDefaultOptionSelected = useCallback(() => {\n if (preselectDefaultValue) {\n return selectedOptions.length < 1 || selectedOptions[0] === \"\";\n } else {\n return (\n selectedOptions[0] === null ||\n selectedOptions.length === flatOptions.length\n );\n }\n }, [flatOptions.length, preselectDefaultValue, selectedOptions]);\n\n const showNoResult = useMemo(\n () => noResultText && !showAddNew && list.length < 1,\n [list.length, noResultText, showAddNew]\n );\n\n const renderNoResult = useMemo(\n () => (\n <StyledAutocompleteNoResult>{noResultText}</StyledAutocompleteNoResult>\n ),\n [noResultText]\n );\n\n return (\n <StyledAutocompleteScrollShadow\n className={AutocompleteClassName}\n $isHidden={\n !defaultValue && !emptyValue && !noResultText && list.length < 1\n }\n >\n {({ onScroll }): JSX.Element => (\n <StyledAutocompleteBody key=\"body\" onMouseLeave={handleOnMouseLeave}>\n <Scrollbars\n ref={listRef}\n key=\"scrollBar\"\n autoHeight\n autoHeightMax={autoHeightMax}\n onScroll={onScroll}\n >\n {defaultValue && !filter && (\n <Option\n name={defaultValue}\n ref={itemRef}\n hover={hover.item === null}\n onMouseEnter={handleMouseEnter}\n onClick={(e) => {\n e.preventDefault();\n toggleSelected(null);\n }}\n renderOption={renderOption(\n { name: defaultValue, id: null },\n {\n checked: isDefaultOptionSelected(),\n hover: hover.item === null,\n onChange: () => null,\n }\n )}\n />\n )}\n {list.map((item: IOptionItemProps, index) =>\n handleRenderOption(item, index)\n )}\n {showNoResult && renderNoResult}\n {showAddNew && renderAddNew}\n </Scrollbars>\n </StyledAutocompleteBody>\n )}\n </StyledAutocompleteScrollShadow>\n );\n};\n\nAutocomplete.displayName = \"Autocomplete\";\n"],"file":"Autocomplete.js"}
|
|
@@ -9,10 +9,12 @@ exports.StyledAutocompleteScrollShadow = exports.StyledAutocompleteNoResult = ex
|
|
|
9
9
|
|
|
10
10
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
11
11
|
|
|
12
|
-
var _FontStyle = require("../FontStyle");
|
|
13
|
-
|
|
14
12
|
var _ScrollShadow = require("../ScrollShadow");
|
|
15
13
|
|
|
14
|
+
var _List = require("../List");
|
|
15
|
+
|
|
16
|
+
var _Styles = require("../Select/Option/Styles");
|
|
17
|
+
|
|
16
18
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
17
19
|
|
|
18
20
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -27,16 +29,14 @@ var StyledAutocompleteScrollShadow = (0, _styledComponents.default)(_ScrollShado
|
|
|
27
29
|
});
|
|
28
30
|
exports.StyledAutocompleteScrollShadow = StyledAutocompleteScrollShadow;
|
|
29
31
|
StyledAutocompleteScrollShadow.displayName = "StyledAutocompleteScrollShadow";
|
|
30
|
-
|
|
31
|
-
var StyledAutocompleteBody = _styledComponents.default.div.withConfig({
|
|
32
|
+
var StyledAutocompleteBody = (0, _styledComponents.default)(_List.List).withConfig({
|
|
32
33
|
displayName: "Styles__StyledAutocompleteBody",
|
|
33
34
|
componentId: "sc-1bc1vz9-1"
|
|
34
35
|
})(["max-height:340px;overflow:auto;margin-bottom:6px;"]);
|
|
35
|
-
|
|
36
36
|
exports.StyledAutocompleteBody = StyledAutocompleteBody;
|
|
37
37
|
StyledAutocompleteBody.displayName = "StyledAutocompleteBody";
|
|
38
38
|
|
|
39
|
-
var StyledAutocompleteNoResult = _styledComponents.default.
|
|
39
|
+
var StyledAutocompleteNoResult = _styledComponents.default.li.withConfig({
|
|
40
40
|
displayName: "Styles__StyledAutocompleteNoResult",
|
|
41
41
|
componentId: "sc-1bc1vz9-2"
|
|
42
42
|
})(["", ";padding:6px 16px;margin:4px 0;&:hover{background-color:var(--color-theme-200);}color:var(--color-theme-600);"], {
|
|
@@ -46,17 +46,15 @@ var StyledAutocompleteNoResult = _styledComponents.default.div.withConfig({
|
|
|
46
46
|
|
|
47
47
|
exports.StyledAutocompleteNoResult = StyledAutocompleteNoResult;
|
|
48
48
|
StyledAutocompleteNoResult.displayName = "StyledAutocompleteNoResult";
|
|
49
|
-
|
|
50
|
-
var StyledAutocompleteNewItem = _styledComponents.default.label.withConfig({
|
|
49
|
+
var StyledAutocompleteNewItem = (0, _styledComponents.default)(_Styles.StyledOption).withConfig({
|
|
51
50
|
displayName: "Styles__StyledAutocompleteNewItem",
|
|
52
51
|
componentId: "sc-1bc1vz9-3"
|
|
53
|
-
})(["", ";
|
|
52
|
+
})(["", ";justify-content:start;&:before{content:\"+ \";margin-right:4px;}", ""], {
|
|
54
53
|
"cursor": "pointer",
|
|
55
54
|
"userSelect": "none"
|
|
56
|
-
},
|
|
55
|
+
}, function (props) {
|
|
57
56
|
return props.hover && (0, _styledComponents.css)(["background-color:var(--color-theme-200);content:\"+ \";"]);
|
|
58
57
|
});
|
|
59
|
-
|
|
60
58
|
exports.StyledAutocompleteNewItem = StyledAutocompleteNewItem;
|
|
61
59
|
StyledAutocompleteNewItem.displayName = "StyledAutocompleteNewItem";
|
|
62
60
|
//# sourceMappingURL=Styles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Autocomplete/Styles.ts"],"names":["StyledAutocompleteScrollShadow","ScrollShadow","props","$isHidden","css","displayName","StyledAutocompleteBody","
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Autocomplete/Styles.ts"],"names":["StyledAutocompleteScrollShadow","ScrollShadow","props","$isHidden","css","displayName","StyledAutocompleteBody","List","StyledAutocompleteNoResult","styled","li","StyledAutocompleteNewItem","StyledOption","hover"],"mappings":";;;;;;;;;AAAA;;AAEA;;AACA;;AACA;;;;;;AAEO,IAAMA,8BAA8B,GAAG,+BAAOC,0BAAP,CAAH;AAAA;AAAA;AAAA,4BAKvC,UAACC,KAAD;AAAA,SACAA,KAAK,CAACC,SAAN,QACAC,qBADA,aAEM;AAAA;AAAA,GAFN,CADA;AAAA,CALuC,CAApC;;AAYPJ,8BAA8B,CAACK,WAA/B,GAA6C,gCAA7C;AAEO,IAAMC,sBAAsB,GAAG,+BAAOC,UAAP,CAAH;AAAA;AAAA;AAAA,yDAA5B;;AAMPD,sBAAsB,CAACD,WAAvB,GAAqC,wBAArC;;AAEO,IAAMG,0BAA0B,GAAGC,0BAAOC,EAAV;AAAA;AAAA;AAAA,0HACjC;AAAA;AAAA;AAAA,CADiC,CAAhC;;;AAaPF,0BAA0B,CAACH,WAA3B,GAAyC,4BAAzC;AAEO,IAAMM,yBAAyB,GAAG,+BAAOC,oBAAP,CAAH;AAAA;AAAA;AAAA,kFAChC;AAAA;AAAA;AAAA,CADgC,EASlC,UAACV,KAAD;AAAA,SACAA,KAAK,CAACW,KAAN,QACAT,qBADA,8DADA;AAAA,CATkC,CAA/B;;AAiBPO,yBAAyB,CAACN,WAA1B,GAAwC,2BAAxC","sourcesContent":["import styled, { css } from \"styled-components\";\nimport tw from \"twin.macro\";\nimport { ScrollShadow } from \"../ScrollShadow\";\nimport { List } from \"../List\";\nimport { StyledOption } from \"../Select/Option/Styles\";\n\nexport const StyledAutocompleteScrollShadow = styled(ScrollShadow)<{\n $isHidden: boolean;\n}>`\n margin-top: 4px;\n\n ${(props) =>\n props.$isHidden &&\n css`\n ${tw`tw-hidden`};\n `}\n`;\n\nStyledAutocompleteScrollShadow.displayName = \"StyledAutocompleteScrollShadow\";\n\nexport const StyledAutocompleteBody = styled(List)`\n max-height: 340px;\n overflow: auto;\n margin-bottom: 6px;\n`;\n\nStyledAutocompleteBody.displayName = \"StyledAutocompleteBody\";\n\nexport const StyledAutocompleteNoResult = styled.li`\n ${tw`tw-cursor-pointer tw-select-none`};\n\n padding: 6px 16px;\n margin: 4px 0;\n\n &:hover {\n background-color: var(--color-theme-200);\n }\n\n color: var(--color-theme-600);\n`;\n\nStyledAutocompleteNoResult.displayName = \"StyledAutocompleteNoResult\";\n\nexport const StyledAutocompleteNewItem = styled(StyledOption)<{ hover }>`\n ${tw`tw-cursor-pointer tw-select-none`};\n justify-content: start;\n\n &:before {\n content: \"+ \";\n margin-right: 4px;\n }\n\n ${(props) =>\n props.hover &&\n css`\n background-color: var(--color-theme-200);\n content: \"+ \";\n `}\n`;\n\nStyledAutocompleteNewItem.displayName = \"StyledAutocompleteNewItem\";\n"],"file":"Styles.js"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
12
|
+
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
13
|
+
|
|
14
|
+
var ArrowDownLongIcon = /*#__PURE__*/_react.default.forwardRef(function (props, svgRef) {
|
|
15
|
+
return /*#__PURE__*/_react.default.createElement("svg", _extends({
|
|
16
|
+
width: 24,
|
|
17
|
+
height: 24,
|
|
18
|
+
viewBox: "0 0 24 24",
|
|
19
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
20
|
+
fill: "var(--color-theme-600)",
|
|
21
|
+
ref: svgRef
|
|
22
|
+
}, props), /*#__PURE__*/_react.default.createElement("path", {
|
|
23
|
+
d: "M13 5v9h4l-5 5-5-5h4V5z",
|
|
24
|
+
fillRule: "evenodd"
|
|
25
|
+
}));
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
ArrowDownLongIcon.displayName = "ArrowDownLongIcon";
|
|
29
|
+
var _default = ArrowDownLongIcon;
|
|
30
|
+
exports.default = _default;
|
|
31
|
+
//# sourceMappingURL=ArrowDownLong.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Icons/collection/ArrowDownLong.tsx"],"names":["ArrowDownLongIcon","React","forwardRef","props","svgRef","displayName"],"mappings":";;;;;;;AAAA;;;;;;AACA,IAAMA,iBAAiB,gBAAGC,eAAMC,UAAN,CACxB,UAACC,KAAD,EAAuCC,MAAvC;AAAA,sBACE;AACE,IAAA,KAAK,EAAE,EADT;AAEE,IAAA,MAAM,EAAE,EAFV;AAGE,IAAA,OAAO,EAAC,WAHV;AAIE,IAAA,KAAK,EAAC,4BAJR;AAKE,IAAA,IAAI,EAAC,wBALP;AAME,IAAA,GAAG,EAAEA;AANP,KAOMD,KAPN,gBASE;AAAM,IAAA,CAAC,EAAC,yBAAR;AAAkC,IAAA,QAAQ,EAAC;AAA3C,IATF,CADF;AAAA,CADwB,CAA1B;;AAeAH,iBAAiB,CAACK,WAAlB,GAAgC,mBAAhC;eACeL,iB","sourcesContent":["import React from \"react\";\nconst ArrowDownLongIcon = React.forwardRef(\n (props: React.SVGProps<SVGSVGElement>, svgRef?: React.Ref<SVGSVGElement>) => (\n <svg\n width={24}\n height={24}\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"var(--color-theme-600)\"\n ref={svgRef}\n {...props}\n >\n <path d=\"M13 5v9h4l-5 5-5-5h4V5z\" fillRule=\"evenodd\" />\n </svg>\n )\n);\nArrowDownLongIcon.displayName = \"ArrowDownLongIcon\";\nexport default ArrowDownLongIcon;\n"],"file":"ArrowDownLong.js"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
12
|
+
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
13
|
+
|
|
14
|
+
var ArrowUpLongIcon = /*#__PURE__*/_react.default.forwardRef(function (props, svgRef) {
|
|
15
|
+
return /*#__PURE__*/_react.default.createElement("svg", _extends({
|
|
16
|
+
width: 24,
|
|
17
|
+
height: 24,
|
|
18
|
+
viewBox: "0 0 24 24",
|
|
19
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
20
|
+
fill: "var(--color-theme-600)",
|
|
21
|
+
ref: svgRef
|
|
22
|
+
}, props), /*#__PURE__*/_react.default.createElement("path", {
|
|
23
|
+
d: "M13 19v-9h4l-5-5-5 5h4v9z",
|
|
24
|
+
fillRule: "evenodd"
|
|
25
|
+
}));
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
ArrowUpLongIcon.displayName = "ArrowUpLongIcon";
|
|
29
|
+
var _default = ArrowUpLongIcon;
|
|
30
|
+
exports.default = _default;
|
|
31
|
+
//# sourceMappingURL=ArrowUpLong.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Icons/collection/ArrowUpLong.tsx"],"names":["ArrowUpLongIcon","React","forwardRef","props","svgRef","displayName"],"mappings":";;;;;;;AAAA;;;;;;AACA,IAAMA,eAAe,gBAAGC,eAAMC,UAAN,CACtB,UAACC,KAAD,EAAuCC,MAAvC;AAAA,sBACE;AACE,IAAA,KAAK,EAAE,EADT;AAEE,IAAA,MAAM,EAAE,EAFV;AAGE,IAAA,OAAO,EAAC,WAHV;AAIE,IAAA,KAAK,EAAC,4BAJR;AAKE,IAAA,IAAI,EAAC,wBALP;AAME,IAAA,GAAG,EAAEA;AANP,KAOMD,KAPN,gBASE;AAAM,IAAA,CAAC,EAAC,2BAAR;AAAoC,IAAA,QAAQ,EAAC;AAA7C,IATF,CADF;AAAA,CADsB,CAAxB;;AAeAH,eAAe,CAACK,WAAhB,GAA8B,iBAA9B;eACeL,e","sourcesContent":["import React from \"react\";\nconst ArrowUpLongIcon = React.forwardRef(\n (props: React.SVGProps<SVGSVGElement>, svgRef?: React.Ref<SVGSVGElement>) => (\n <svg\n width={24}\n height={24}\n viewBox=\"0 0 24 24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"var(--color-theme-600)\"\n ref={svgRef}\n {...props}\n >\n <path d=\"M13 19v-9h4l-5-5-5 5h4v9z\" fillRule=\"evenodd\" />\n </svg>\n )\n);\nArrowUpLongIcon.displayName = \"ArrowUpLongIcon\";\nexport default ArrowUpLongIcon;\n"],"file":"ArrowUpLong.js"}
|
|
@@ -27,6 +27,12 @@ Object.defineProperty(exports, "ArrowCollapseMultipleIcon", {
|
|
|
27
27
|
return _ArrowCollapseMultiple.default;
|
|
28
28
|
}
|
|
29
29
|
});
|
|
30
|
+
Object.defineProperty(exports, "ArrowDownLongIcon", {
|
|
31
|
+
enumerable: true,
|
|
32
|
+
get: function get() {
|
|
33
|
+
return _ArrowDownLong.default;
|
|
34
|
+
}
|
|
35
|
+
});
|
|
30
36
|
Object.defineProperty(exports, "ArrowExpandeMultipleIcon", {
|
|
31
37
|
enumerable: true,
|
|
32
38
|
get: function get() {
|
|
@@ -57,6 +63,12 @@ Object.defineProperty(exports, "ArrowRightIcon", {
|
|
|
57
63
|
return _ArrowRight.default;
|
|
58
64
|
}
|
|
59
65
|
});
|
|
66
|
+
Object.defineProperty(exports, "ArrowUpLongIcon", {
|
|
67
|
+
enumerable: true,
|
|
68
|
+
get: function get() {
|
|
69
|
+
return _ArrowUpLong.default;
|
|
70
|
+
}
|
|
71
|
+
});
|
|
60
72
|
Object.defineProperty(exports, "AssignIcon", {
|
|
61
73
|
enumerable: true,
|
|
62
74
|
get: function get() {
|
|
@@ -888,6 +900,8 @@ var _AddCross = _interopRequireDefault(require("./AddCross"));
|
|
|
888
900
|
|
|
889
901
|
var _ArrowCollapseMultiple = _interopRequireDefault(require("./ArrowCollapseMultiple"));
|
|
890
902
|
|
|
903
|
+
var _ArrowDownLong = _interopRequireDefault(require("./ArrowDownLong"));
|
|
904
|
+
|
|
891
905
|
var _ArrowExpandeMultiple = _interopRequireDefault(require("./ArrowExpandeMultiple"));
|
|
892
906
|
|
|
893
907
|
var _ArrowLeftBox = _interopRequireDefault(require("./ArrowLeftBox"));
|
|
@@ -898,6 +912,8 @@ var _ArrowRefresh = _interopRequireDefault(require("./ArrowRefresh"));
|
|
|
898
912
|
|
|
899
913
|
var _ArrowRight = _interopRequireDefault(require("./ArrowRight"));
|
|
900
914
|
|
|
915
|
+
var _ArrowUpLong = _interopRequireDefault(require("./ArrowUpLong"));
|
|
916
|
+
|
|
901
917
|
var _Assign = _interopRequireDefault(require("./Assign"));
|
|
902
918
|
|
|
903
919
|
var _Attachment = _interopRequireDefault(require("./Attachment"));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Icons/collection/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA","sourcesContent":["export { default as ActivityIcon } from \"./Activity\";\nexport { default as AddCrossTinyIcon } from \"./AddCrossTiny\";\nexport { default as AddCrossIcon } from \"./AddCross\";\nexport { default as ArrowCollapseMultipleIcon } from \"./ArrowCollapseMultiple\";\nexport { default as ArrowExpandeMultipleIcon } from \"./ArrowExpandeMultiple\";\nexport { default as ArrowLeftBoxIcon } from \"./ArrowLeftBox\";\nexport { default as ArrowLeftIcon } from \"./ArrowLeft\";\nexport { default as ArrowRefreshIcon } from \"./ArrowRefresh\";\nexport { default as ArrowRightIcon } from \"./ArrowRight\";\nexport { default as AssignIcon } from \"./Assign\";\nexport { default as AttachmentIcon } from \"./Attachment\";\nexport { default as BackIcon } from \"./Back\";\nexport { default as BellOffSmallIcon } from \"./BellOffSmall\";\nexport { default as BellOffIcon } from \"./BellOff\";\nexport { default as BillingIcon } from \"./Billing\";\nexport { default as BudgetAlertIcon } from \"./BudgetAlert\";\nexport { default as BudgetNoAlertIcon } from \"./BudgetNoAlert\";\nexport { default as CalendarAddXIcon } from \"./CalendarAddX\";\nexport { default as CalendarEmptyIcon } from \"./CalendarEmpty\";\nexport { default as CalendarIcon } from \"./Calendar\";\nexport { default as CancelCrossIcon } from \"./CancelCross\";\nexport { default as CaretLeftIcon } from \"./CaretLeft\";\nexport { default as CaretRightIcon } from \"./CaretRight\";\nexport { default as ChatIcon } from \"./Chat\";\nexport { default as CheckIcon } from \"./Check\";\nexport { default as CheckboxBlankTogglerIcon } from \"./CheckboxBlankToggler\";\nexport { default as CheckboxIcon } from \"./Checkbox\";\nexport { default as ChecklistSmallIcon } from \"./ChecklistSmall\";\nexport { default as ChecklistIcon } from \"./Checklist\";\nexport { default as CircleMultipleIcon } from \"./CircleMultiple\";\nexport { default as ClockAddIcon } from \"./ClockAdd\";\nexport { default as ClockSmallIcon } from \"./ClockSmall\";\nexport { default as ClockStopwatchSmallIcon } from \"./ClockStopwatchSmall\";\nexport { default as ClockStopwatchIcon } from \"./ClockStopwatch\";\nexport { default as ClockIcon } from \"./Clock\";\nexport { default as CloseSmallIcon } from \"./CloseSmall\";\nexport { default as CollapsIcon } from \"./CollapsIcon\";\nexport { default as CollapseAllIcon } from \"./CollapseAll\";\nexport { default as CollapseExpandSingleIcon } from \"./CollapseExpandSingle\";\nexport { default as ComputerIcon } from \"./Computer\";\nexport { default as CrownBlankIcon } from \"./CrownBlank\";\nexport { default as CrownSelectedIcon } from \"./CrownSelected\";\nexport { default as DependencySmallIcon } from \"./DependencySmall\";\nexport { default as DependencyIcon } from \"./Dependency\";\nexport { default as DiscussionAddIcon } from \"./DiscussionAdd\";\nexport { default as DollarCheckmarkSmallIcon } from \"./DollarCheckmarkSmall\";\nexport { default as DollarCheckmarkIcon } from \"./DollarCheckmark\";\nexport { default as DollarClockSmallIcon } from \"./DollarClockSmall\";\nexport { default as DollarClockIcon } from \"./DollarClock\";\nexport { default as DollarOffSmallIcon } from \"./DollarOffSmall\";\nexport { default as DollarOffIcon } from \"./DollarOff\";\nexport { default as DollarSmallIcon } from \"./DollarSmall\";\nexport { default as DollarIcon } from \"./Dollar\";\nexport { default as DownloadIcon } from \"./Download\";\nexport { default as DriveIcon } from \"./Drive\";\nexport { default as DropboxIcon } from \"./Dropbox\";\nexport { default as DuplicateIcon } from \"./Duplicate\";\nexport { default as EditMultipleIcon } from \"./EditMultiple\";\nexport { default as EditIcon } from \"./Edit\";\nexport { default as EmojiIcon } from \"./Emoji\";\nexport { default as EstimatesIcon } from \"./Estimates\";\nexport { default as ExpandAllIcon } from \"./ExpandAll\";\nexport { default as ExpenseAddIcon } from \"./ExpenseAdd\";\nexport { default as ExportIcon } from \"./Export\";\nexport { default as EyeOffSmallIcon } from \"./EyeOffSmall\";\nexport { default as EyeOffIcon } from \"./EyeOff\";\nexport { default as EyeSmallIcon } from \"./EyeSmall\";\nexport { default as EyeIcon } from \"./Eye\";\nexport { default as FilterIcon } from \"./Filter\";\nexport { default as FolderMoveIcon } from \"./FolderMove\";\nexport { default as FolderOutlineIcon } from \"./FolderOutline\";\nexport { default as HelpIcon } from \"./Help\";\nexport { default as InfoSmallIcon } from \"./InfoSmall\";\nexport { default as InfoIcon } from \"./Info\";\nexport { default as InsertLinkIcon } from \"./InsertLink\";\nexport { default as IntegrationsIcon } from \"./Integrations\";\nexport { default as InvoicesIcon } from \"./Invoices\";\nexport { default as LabelsIcon } from \"./Labels\";\nexport { default as LockSmallIcon } from \"./LockSmall\";\nexport { default as LockIcon } from \"./Lock\";\nexport { default as MarkerIcon } from \"./Marker\";\nexport { default as MessageAddIcon } from \"./MessageAdd\";\nexport { default as MessageEmptyIcon } from \"./MessageEmpty\";\nexport { default as MessageSmallIcon } from \"./MessageSmall\";\nexport { default as MessageIcon } from \"./Message\";\nexport { default as MinusIcon } from \"./Minus\";\nexport { default as MoveTriggerIcon } from \"./MoveTrigger\";\nexport { default as MyWorkIcon } from \"./MyWork\";\nexport { default as NoteAddIcon } from \"./NoteAdd\";\nexport { default as NoteIcon } from \"./Note\";\nexport { default as NotificationBellIcon } from \"./NotificationBell\";\nexport { default as OpenExpandedIcon } from \"./OpenExpanded\";\nexport { default as OrderFirstIcon } from \"./OrderFirst\";\nexport { default as PaidSmallIcon } from \"./PaidSmall\";\nexport { default as PauseCircleOutlineIcon } from \"./PauseCircleOutline\";\nexport { default as PauseIcon } from \"./PauseIcon\";\nexport { default as PauseSmallIcon } from \"./PauseSmall\";\nexport { default as PencilSmallIcon } from \"./PencilSmall\";\nexport { default as PencilIcon } from \"./Pencil\";\nexport { default as PendingPaymentSmallIcon } from \"./PendingPaymentSmall\";\nexport { default as PeopleIcon } from \"./People\";\nexport { default as PersonCircleOffIcon } from \"./PersonCircleOff\";\nexport { default as PersonCircleIcon } from \"./PersonCircle\";\nexport { default as PersonPlusIcon } from \"./PersonPlus\";\nexport { default as PersonIcon } from \"./Person\";\nexport { default as PlayCircleOutlineIcon } from \"./PlayCircleOutline\";\nexport { default as PlayIcon } from \"./PlayIcon\";\nexport { default as PlaySmallIcon } from \"./PlaySmall\";\nexport { default as ProjectAddIcon } from \"./ProjectAdd\";\nexport { default as ProjectTemplateAddIcon } from \"./ProjectTemplateAdd\";\nexport { default as ProjectTemplateConvertIcon } from \"./ProjectTemplateConvert\";\nexport { default as ProjectTemplateIcon } from \"./ProjectTemplate\";\nexport { default as ProjectsIcon } from \"./Projects\";\nexport { default as RadioBlankIcon } from \"./RadioBlank\";\nexport { default as RadioButtonIcon } from \"./RadioButton\";\nexport { default as RearangeIcon } from \"./Rearange\";\nexport { default as RearrangeSmallIcon } from \"./RearrangeSmall\";\nexport { default as RecurringCheckmarkSmallIcon } from \"./RecurringCheckmarkSmall\";\nexport { default as RecurringCheckmarkIcon } from \"./RecurringCheckmark\";\nexport { default as ReportTimeIcon } from \"./ReportTime\";\nexport { default as ReportsIcon } from \"./Reports\";\nexport { default as SearchIcon } from \"./Search\";\nexport { default as SendBlankIcon } from \"./SendBlank\";\nexport { default as SendFilledIcon } from \"./SendFilled\";\nexport { default as SettingsIcon } from \"./Settings\";\nexport { default as SortGeneralIcon } from \"./SortGeneral\";\nexport { default as SortIcon } from \"./SortIcon\";\nexport { default as StarOutlineIcon } from \"./StarOutline\";\nexport { default as StarIcon } from \"./Star\";\nexport { default as SystemSettingsIcon } from \"./SystemSettings\";\nexport { default as TaskAddIcon } from \"./TaskAdd\";\nexport { default as TaskListAddIcon } from \"./TaskListAdd\";\nexport { default as TextFormatGeneralAltIcon } from \"./TextFormatGeneralAlt\";\nexport { default as ThumbUpOutlineIcon } from \"./ThumbUpOutline\";\nexport { default as TrashIcon } from \"./Trash\";\nexport { default as TreeDotsIcon } from \"./TreeDots\";\nexport { default as UploadIcon } from \"./Upload\";\nexport { default as ViewGridIcon } from \"./ViewGrid\";\nexport { default as ViewListIcon } from \"./ViewList\";\nexport { default as ViewTimelineIcon } from \"./ViewTimeline\";\nexport { default as VolumeHighIcon } from \"./VolumeHigh\";\nexport { default as VolumeOffIcon } from \"./VolumeOff\";\nexport { default as WarningTriangleSmallIcon } from \"./WarningTriangleSmall\";\nexport { default as WarningTriangleIcon } from \"./WarningTriangle\";\nexport { default as WarningIcon } from \"./Warning\";\nexport { default as WorkloadIcon } from \"./Workload\";\n"],"file":"index.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Icons/collection/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA","sourcesContent":["export { default as ActivityIcon } from \"./Activity\";\nexport { default as AddCrossTinyIcon } from \"./AddCrossTiny\";\nexport { default as AddCrossIcon } from \"./AddCross\";\nexport { default as ArrowCollapseMultipleIcon } from \"./ArrowCollapseMultiple\";\nexport { default as ArrowDownLongIcon } from \"./ArrowDownLong\";\nexport { default as ArrowExpandeMultipleIcon } from \"./ArrowExpandeMultiple\";\nexport { default as ArrowLeftBoxIcon } from \"./ArrowLeftBox\";\nexport { default as ArrowLeftIcon } from \"./ArrowLeft\";\nexport { default as ArrowRefreshIcon } from \"./ArrowRefresh\";\nexport { default as ArrowRightIcon } from \"./ArrowRight\";\nexport { default as ArrowUpLongIcon } from \"./ArrowUpLong\";\nexport { default as AssignIcon } from \"./Assign\";\nexport { default as AttachmentIcon } from \"./Attachment\";\nexport { default as BackIcon } from \"./Back\";\nexport { default as BellOffSmallIcon } from \"./BellOffSmall\";\nexport { default as BellOffIcon } from \"./BellOff\";\nexport { default as BillingIcon } from \"./Billing\";\nexport { default as BudgetAlertIcon } from \"./BudgetAlert\";\nexport { default as BudgetNoAlertIcon } from \"./BudgetNoAlert\";\nexport { default as CalendarAddXIcon } from \"./CalendarAddX\";\nexport { default as CalendarEmptyIcon } from \"./CalendarEmpty\";\nexport { default as CalendarIcon } from \"./Calendar\";\nexport { default as CancelCrossIcon } from \"./CancelCross\";\nexport { default as CaretLeftIcon } from \"./CaretLeft\";\nexport { default as CaretRightIcon } from \"./CaretRight\";\nexport { default as ChatIcon } from \"./Chat\";\nexport { default as CheckIcon } from \"./Check\";\nexport { default as CheckboxBlankTogglerIcon } from \"./CheckboxBlankToggler\";\nexport { default as CheckboxIcon } from \"./Checkbox\";\nexport { default as ChecklistSmallIcon } from \"./ChecklistSmall\";\nexport { default as ChecklistIcon } from \"./Checklist\";\nexport { default as CircleMultipleIcon } from \"./CircleMultiple\";\nexport { default as ClockAddIcon } from \"./ClockAdd\";\nexport { default as ClockSmallIcon } from \"./ClockSmall\";\nexport { default as ClockStopwatchSmallIcon } from \"./ClockStopwatchSmall\";\nexport { default as ClockStopwatchIcon } from \"./ClockStopwatch\";\nexport { default as ClockIcon } from \"./Clock\";\nexport { default as CloseSmallIcon } from \"./CloseSmall\";\nexport { default as CollapsIcon } from \"./CollapsIcon\";\nexport { default as CollapseAllIcon } from \"./CollapseAll\";\nexport { default as CollapseExpandSingleIcon } from \"./CollapseExpandSingle\";\nexport { default as ComputerIcon } from \"./Computer\";\nexport { default as CrownBlankIcon } from \"./CrownBlank\";\nexport { default as CrownSelectedIcon } from \"./CrownSelected\";\nexport { default as DependencySmallIcon } from \"./DependencySmall\";\nexport { default as DependencyIcon } from \"./Dependency\";\nexport { default as DiscussionAddIcon } from \"./DiscussionAdd\";\nexport { default as DollarCheckmarkSmallIcon } from \"./DollarCheckmarkSmall\";\nexport { default as DollarCheckmarkIcon } from \"./DollarCheckmark\";\nexport { default as DollarClockSmallIcon } from \"./DollarClockSmall\";\nexport { default as DollarClockIcon } from \"./DollarClock\";\nexport { default as DollarOffSmallIcon } from \"./DollarOffSmall\";\nexport { default as DollarOffIcon } from \"./DollarOff\";\nexport { default as DollarSmallIcon } from \"./DollarSmall\";\nexport { default as DollarIcon } from \"./Dollar\";\nexport { default as DownloadIcon } from \"./Download\";\nexport { default as DriveIcon } from \"./Drive\";\nexport { default as DropboxIcon } from \"./Dropbox\";\nexport { default as DuplicateIcon } from \"./Duplicate\";\nexport { default as EditMultipleIcon } from \"./EditMultiple\";\nexport { default as EditIcon } from \"./Edit\";\nexport { default as EmojiIcon } from \"./Emoji\";\nexport { default as EstimatesIcon } from \"./Estimates\";\nexport { default as ExpandAllIcon } from \"./ExpandAll\";\nexport { default as ExpenseAddIcon } from \"./ExpenseAdd\";\nexport { default as ExportIcon } from \"./Export\";\nexport { default as EyeOffSmallIcon } from \"./EyeOffSmall\";\nexport { default as EyeOffIcon } from \"./EyeOff\";\nexport { default as EyeSmallIcon } from \"./EyeSmall\";\nexport { default as EyeIcon } from \"./Eye\";\nexport { default as FilterIcon } from \"./Filter\";\nexport { default as FolderMoveIcon } from \"./FolderMove\";\nexport { default as FolderOutlineIcon } from \"./FolderOutline\";\nexport { default as HelpIcon } from \"./Help\";\nexport { default as InfoSmallIcon } from \"./InfoSmall\";\nexport { default as InfoIcon } from \"./Info\";\nexport { default as InsertLinkIcon } from \"./InsertLink\";\nexport { default as IntegrationsIcon } from \"./Integrations\";\nexport { default as InvoicesIcon } from \"./Invoices\";\nexport { default as LabelsIcon } from \"./Labels\";\nexport { default as LockSmallIcon } from \"./LockSmall\";\nexport { default as LockIcon } from \"./Lock\";\nexport { default as MarkerIcon } from \"./Marker\";\nexport { default as MessageAddIcon } from \"./MessageAdd\";\nexport { default as MessageEmptyIcon } from \"./MessageEmpty\";\nexport { default as MessageSmallIcon } from \"./MessageSmall\";\nexport { default as MessageIcon } from \"./Message\";\nexport { default as MinusIcon } from \"./Minus\";\nexport { default as MoveTriggerIcon } from \"./MoveTrigger\";\nexport { default as MyWorkIcon } from \"./MyWork\";\nexport { default as NoteAddIcon } from \"./NoteAdd\";\nexport { default as NoteIcon } from \"./Note\";\nexport { default as NotificationBellIcon } from \"./NotificationBell\";\nexport { default as OpenExpandedIcon } from \"./OpenExpanded\";\nexport { default as OrderFirstIcon } from \"./OrderFirst\";\nexport { default as PaidSmallIcon } from \"./PaidSmall\";\nexport { default as PauseCircleOutlineIcon } from \"./PauseCircleOutline\";\nexport { default as PauseIcon } from \"./PauseIcon\";\nexport { default as PauseSmallIcon } from \"./PauseSmall\";\nexport { default as PencilSmallIcon } from \"./PencilSmall\";\nexport { default as PencilIcon } from \"./Pencil\";\nexport { default as PendingPaymentSmallIcon } from \"./PendingPaymentSmall\";\nexport { default as PeopleIcon } from \"./People\";\nexport { default as PersonCircleOffIcon } from \"./PersonCircleOff\";\nexport { default as PersonCircleIcon } from \"./PersonCircle\";\nexport { default as PersonPlusIcon } from \"./PersonPlus\";\nexport { default as PersonIcon } from \"./Person\";\nexport { default as PlayCircleOutlineIcon } from \"./PlayCircleOutline\";\nexport { default as PlayIcon } from \"./PlayIcon\";\nexport { default as PlaySmallIcon } from \"./PlaySmall\";\nexport { default as ProjectAddIcon } from \"./ProjectAdd\";\nexport { default as ProjectTemplateAddIcon } from \"./ProjectTemplateAdd\";\nexport { default as ProjectTemplateConvertIcon } from \"./ProjectTemplateConvert\";\nexport { default as ProjectTemplateIcon } from \"./ProjectTemplate\";\nexport { default as ProjectsIcon } from \"./Projects\";\nexport { default as RadioBlankIcon } from \"./RadioBlank\";\nexport { default as RadioButtonIcon } from \"./RadioButton\";\nexport { default as RearangeIcon } from \"./Rearange\";\nexport { default as RearrangeSmallIcon } from \"./RearrangeSmall\";\nexport { default as RecurringCheckmarkSmallIcon } from \"./RecurringCheckmarkSmall\";\nexport { default as RecurringCheckmarkIcon } from \"./RecurringCheckmark\";\nexport { default as ReportTimeIcon } from \"./ReportTime\";\nexport { default as ReportsIcon } from \"./Reports\";\nexport { default as SearchIcon } from \"./Search\";\nexport { default as SendBlankIcon } from \"./SendBlank\";\nexport { default as SendFilledIcon } from \"./SendFilled\";\nexport { default as SettingsIcon } from \"./Settings\";\nexport { default as SortGeneralIcon } from \"./SortGeneral\";\nexport { default as SortIcon } from \"./SortIcon\";\nexport { default as StarOutlineIcon } from \"./StarOutline\";\nexport { default as StarIcon } from \"./Star\";\nexport { default as SystemSettingsIcon } from \"./SystemSettings\";\nexport { default as TaskAddIcon } from \"./TaskAdd\";\nexport { default as TaskListAddIcon } from \"./TaskListAdd\";\nexport { default as TextFormatGeneralAltIcon } from \"./TextFormatGeneralAlt\";\nexport { default as ThumbUpOutlineIcon } from \"./ThumbUpOutline\";\nexport { default as TrashIcon } from \"./Trash\";\nexport { default as TreeDotsIcon } from \"./TreeDots\";\nexport { default as UploadIcon } from \"./Upload\";\nexport { default as ViewGridIcon } from \"./ViewGrid\";\nexport { default as ViewListIcon } from \"./ViewList\";\nexport { default as ViewTimelineIcon } from \"./ViewTimeline\";\nexport { default as VolumeHighIcon } from \"./VolumeHigh\";\nexport { default as VolumeOffIcon } from \"./VolumeOff\";\nexport { default as WarningTriangleSmallIcon } from \"./WarningTriangleSmall\";\nexport { default as WarningTriangleIcon } from \"./WarningTriangle\";\nexport { default as WarningIcon } from \"./Warning\";\nexport { default as WorkloadIcon } from \"./Workload\";\n"],"file":"index.js"}
|
|
@@ -25,7 +25,11 @@ var Option = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
|
25
25
|
hover = _ref.hover,
|
|
26
26
|
className = _ref.className,
|
|
27
27
|
renderOption = _ref.renderOption,
|
|
28
|
-
onMouseEnter = _ref.onMouseEnter
|
|
28
|
+
onMouseEnter = _ref.onMouseEnter,
|
|
29
|
+
_ref$onClick = _ref.onClick,
|
|
30
|
+
onClick = _ref$onClick === void 0 ? function () {
|
|
31
|
+
return null;
|
|
32
|
+
} : _ref$onClick;
|
|
29
33
|
var handleOnMouseEnter = (0, _react.useCallback)(function () {
|
|
30
34
|
if (onMouseEnter) {
|
|
31
35
|
onMouseEnter(id);
|
|
@@ -36,7 +40,8 @@ var Option = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
|
36
40
|
title: name,
|
|
37
41
|
onMouseEnter: handleOnMouseEnter,
|
|
38
42
|
className: (0, _classnames.default)("c-option", className),
|
|
39
|
-
hover: hover
|
|
43
|
+
hover: hover,
|
|
44
|
+
onClick: onClick
|
|
40
45
|
}, renderOption ? renderOption : name);
|
|
41
46
|
});
|
|
42
47
|
exports.Option = Option;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Select/Option/Option.tsx"],"names":["Option","ref","id","name","hover","className","renderOption","onMouseEnter","handleOnMouseEnter","displayName"],"mappings":";;;;;;;;;AAAA;;
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Select/Option/Option.tsx"],"names":["Option","ref","id","name","hover","className","renderOption","onMouseEnter","onClick","handleOnMouseEnter","displayName"],"mappings":";;;;;;;;;AAAA;;AAOA;;AACA;;;;;;;;AA0BO,IAAMA,MAAM,gBAAG,uBACpB,gBAUEC,GAVF,EAWK;AAAA,MATDC,EASC,QATDA,EASC;AAAA,MARDC,IAQC,QARDA,IAQC;AAAA,MAPDC,KAOC,QAPDA,KAOC;AAAA,MANDC,SAMC,QANDA,SAMC;AAAA,MALDC,YAKC,QALDA,YAKC;AAAA,MAJDC,YAIC,QAJDA,YAIC;AAAA,0BAHDC,OAGC;AAAA,MAHDA,OAGC,6BAHS;AAAA,WAAM,IAAN;AAAA,GAGT;AACH,MAAMC,kBAAkB,GAAG,wBAAY,YAAM;AAC3C,QAAIF,YAAJ,EAAkB;AAChBA,MAAAA,YAAY,CAACL,EAAD,CAAZ;AACD;AACF,GAJ0B,EAIxB,CAACK,YAAD,EAAeL,EAAf,CAJwB,CAA3B;AAMA,sBACE,6BAAC,oBAAD;AACE,IAAA,GAAG,EAAEE,KAAK,GAAGH,GAAH,GAAS,IADrB;AAEE,IAAA,KAAK,EAAEE,IAFT;AAGE,IAAA,YAAY,EAAEM,kBAHhB;AAIE,IAAA,SAAS,EAAE,yBAAW,UAAX,EAAuBJ,SAAvB,CAJb;AAKE,IAAA,KAAK,EAAED,KALT;AAME,IAAA,OAAO,EAAEI;AANX,KAQGF,YAAY,GAAGA,YAAH,GAAkBH,IARjC,CADF;AAYD,CA/BmB,CAAf;;AAkCPH,MAAM,CAACU,WAAP,GAAqB,QAArB","sourcesContent":["import React, {\n forwardRef,\n MouseEventHandler,\n ReactNode,\n Ref,\n useCallback,\n} from \"react\";\nimport classnames from \"classnames\";\nimport { StyledOption } from \"./Styles\";\n\nexport interface IOptionItemProps {\n /** Value of option */\n id: string | number;\n /** Label of option */\n name: string;\n}\n\ninterface IAdditionalOptionItemProps {\n /** Value of option */\n id?: string | number;\n /** Label of option */\n name: string;\n /** Hovered state */\n hover?: boolean;\n /** Class name of option */\n className?: string;\n /** Render option function */\n renderOption?: ReactNode;\n /** On mouse enter callback */\n onMouseEnter?: (e: string | number | undefined) => void;\n /** On mouse click */\n onClick?: MouseEventHandler<HTMLLIElement>;\n}\n\nexport const Option = forwardRef(\n (\n {\n id,\n name,\n hover,\n className,\n renderOption,\n onMouseEnter,\n onClick = () => null,\n }: IAdditionalOptionItemProps,\n ref: Ref<HTMLLIElement>\n ) => {\n const handleOnMouseEnter = useCallback(() => {\n if (onMouseEnter) {\n onMouseEnter(id);\n }\n }, [onMouseEnter, id]);\n\n return (\n <StyledOption\n ref={hover ? ref : null}\n title={name}\n onMouseEnter={handleOnMouseEnter}\n className={classnames(\"c-option\", className)}\n hover={hover}\n onClick={onClick}\n >\n {renderOption ? renderOption : name}\n </StyledOption>\n );\n }\n);\n\nOption.displayName = \"Option\";\n"],"file":"Option.js"}
|
|
@@ -17,7 +17,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
17
17
|
|
|
18
18
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
19
19
|
|
|
20
|
-
var StyledOption = _styledComponents.default.
|
|
20
|
+
var StyledOption = _styledComponents.default.li.withConfig({
|
|
21
21
|
displayName: "Styles__StyledOption",
|
|
22
22
|
componentId: "sc-1232l97-0"
|
|
23
23
|
})(["", " font-size:14px;display:flex;justify-content:space-between;height:28px;padding-left:16px;padding-right:16px;margin-top:4px;margin-bottom:4px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition-duration:0.1s;color:var(--color-theme-900);", " ", " ", ""], {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Select/Option/Styles.ts"],"names":["StyledOption","styled","
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Select/Option/Styles.ts"],"names":["StyledOption","styled","li","FontStyle","BoxSizingStyle","props","hover","css","displayName"],"mappings":";;;;;;;;;AAAA;;AAEA;;AACA;;;;;;AAEO,IAAMA,YAAY,GAAGC,0BAAOC,EAAV;AAAA;AAAA;AAAA,2SACnB;AAAA;AAAA;AAAA,CADmB,EAiBrBC,oBAjBqB,EAkBrBC,8BAlBqB,EAoBrB,UAACC,KAAD;AAAA,SACAA,KAAK,CAACC,KAAN,QACAC,qBADA,+CADA;AAAA,CApBqB,CAAlB;;;AA2BPP,YAAY,CAACQ,WAAb,GAA2B,cAA3B","sourcesContent":["import styled, { css } from \"styled-components\";\nimport tw from \"twin.macro\";\nimport { BoxSizingStyle } from \"../../BoxSizingStyle\";\nimport { FontStyle } from \"../../FontStyle\";\n\nexport const StyledOption = styled.li<{ hover?: boolean }>`\n ${tw`tw-select-none tw-font-normal`}\n font-size: 14px;\n display: flex;\n justify-content: space-between;\n height: 28px;\n padding-left: 16px;\n padding-right: 16px;\n margin-top: 4px;\n margin-bottom: 4px;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: space-between;\n transition-duration: 0.1s;\n color: var(--color-theme-900);\n\n ${FontStyle}\n ${BoxSizingStyle}\n\n ${(props) =>\n props.hover &&\n css`\n background-color: var(--color-theme-200);\n `}\n`;\n\nStyledOption.displayName = \"StyledOption\";\n"],"file":"Styles.js"}
|