react-core-ts 1.7.2 → 1.7.4
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.
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import React from
|
|
2
|
-
import { FieldErrors } from
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { FieldErrors } from 'react-hook-form';
|
|
3
3
|
type valueProps = {
|
|
4
4
|
id?: string | number;
|
|
5
5
|
name: string;
|
|
@@ -22,7 +22,7 @@ interface AutoSuggestionInputProps {
|
|
|
22
22
|
value?: valueProps;
|
|
23
23
|
onChange: (value?: valueProps) => void;
|
|
24
24
|
data?: any[];
|
|
25
|
-
type?:
|
|
25
|
+
type?: 'custom_select' | 'auto_complete' | 'custom_search_select';
|
|
26
26
|
placeholder?: string;
|
|
27
27
|
getData?: ((key?: string) => Promise<any>) | ((key?: string) => any);
|
|
28
28
|
errors?: FieldErrors;
|
|
@@ -60,8 +60,8 @@ var getPosition_1 = require("./utilities/getPosition");
|
|
|
60
60
|
var icons_1 = require("./utilities/icons");
|
|
61
61
|
var ModernAutoCompleteDropdown = function (_a) {
|
|
62
62
|
var _b;
|
|
63
|
-
var label = _a.label, onChange = _a.onChange, getData = _a.getData, data = _a.data, errors = _a.errors, _c = _a.required, required = _c === void 0 ? false : _c, autoFocus = _a.autoFocus, name = _a.name, _d = _a.shortCode, shortCode = _d === void 0 ?
|
|
64
|
-
var _q = (0, react_1.useState)((_b = value === null || value === void 0 ? void 0 : value.name) !== null && _b !== void 0 ? _b :
|
|
63
|
+
var label = _a.label, onChange = _a.onChange, getData = _a.getData, data = _a.data, errors = _a.errors, _c = _a.required, required = _c === void 0 ? false : _c, autoFocus = _a.autoFocus, name = _a.name, _d = _a.shortCode, shortCode = _d === void 0 ? '' : _d, fullWidth = _a.fullWidth, placeholder = _a.placeholder, id = _a.id, propsClassName = _a.className, _e = _a.type, type = _e === void 0 ? 'custom_select' : _e, readOnly = _a.readOnly, _f = _a.disabled, disabled = _f === void 0 ? false : _f, value = _a.value, _g = _a.autoFilter, autoFilter = _g === void 0 ? false : _g, _h = _a.autoDropdown, autoDropdown = _h === void 0 ? true : _h, _j = _a.insideOpen, insideOpen = _j === void 0 ? false : _j, _k = _a.isClose, isClose = _k === void 0 ? true : _k, _l = _a.noLocalFilter, noLocalFilter = _l === void 0 ? false : _l, _m = _a.isStaticList, isStaticList = _m === void 0 ? false : _m, _o = _a.isCustomPlaceholder, isCustomPlaceholder = _o === void 0 ? false : _o, checkParams = _a.checkParams, width = _a.width, hasParentError = _a.hasParentError, fromPrefix = _a.fromPrefix, labelTitle = _a.labelTitle, _p = _a.isModern, isModern = _p === void 0 ? true : _p;
|
|
64
|
+
var _q = (0, react_1.useState)((_b = value === null || value === void 0 ? void 0 : value.name) !== null && _b !== void 0 ? _b : ''), inputValue = _q[0], setInputValue = _q[1];
|
|
65
65
|
var _r = (0, react_1.useState)(false), isHovered = _r[0], setIsHovered = _r[1];
|
|
66
66
|
var _s = (0, react_1.useState)(false), isLoading = _s[0], setIsLoading = _s[1];
|
|
67
67
|
var _t = (0, react_1.useState)(false), dropOpen = _t[0], setDropOpen = _t[1];
|
|
@@ -89,8 +89,8 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
89
89
|
var checkIncludesIfExists = function (mainString, substring) {
|
|
90
90
|
return substring &&
|
|
91
91
|
mainString &&
|
|
92
|
-
typeof mainString ===
|
|
93
|
-
typeof subString ===
|
|
92
|
+
typeof mainString === 'string' &&
|
|
93
|
+
typeof subString === 'string'
|
|
94
94
|
? mainString
|
|
95
95
|
.toString()
|
|
96
96
|
.toLowerCase()
|
|
@@ -100,13 +100,13 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
100
100
|
var checkArrayContains = function (strArray, param) { var _a; return (_a = strArray === null || strArray === void 0 ? void 0 : strArray.includes(param)) !== null && _a !== void 0 ? _a : false; };
|
|
101
101
|
return (checkIncludesIfExists(mainString, subString) ||
|
|
102
102
|
(!!checkParams &&
|
|
103
|
-
((checkArrayContains(checkParams,
|
|
103
|
+
((checkArrayContains(checkParams, 'param1') &&
|
|
104
104
|
checkIncludesIfExists(param1, subString)) ||
|
|
105
|
-
(checkArrayContains(checkParams,
|
|
105
|
+
(checkArrayContains(checkParams, 'param2') &&
|
|
106
106
|
checkIncludesIfExists(param2, subString)) ||
|
|
107
|
-
(checkArrayContains(checkParams,
|
|
107
|
+
(checkArrayContains(checkParams, 'param3') &&
|
|
108
108
|
checkIncludesIfExists(param3, subString)) ||
|
|
109
|
-
(checkArrayContains(checkParams,
|
|
109
|
+
(checkArrayContains(checkParams, 'param4') &&
|
|
110
110
|
checkIncludesIfExists(param4, subString)))));
|
|
111
111
|
};
|
|
112
112
|
var handleChange = function (event) {
|
|
@@ -115,17 +115,17 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
115
115
|
setInputValue(value);
|
|
116
116
|
handleValChange(value);
|
|
117
117
|
if (!value) {
|
|
118
|
-
setInputValue(
|
|
119
|
-
onChange({ id: undefined, name:
|
|
118
|
+
setInputValue('');
|
|
119
|
+
onChange({ id: undefined, name: '', from: 2 });
|
|
120
120
|
}
|
|
121
121
|
};
|
|
122
122
|
var handleValChange = (0, react_1.useCallback)((0, debounce_1.debounce)(function (value) {
|
|
123
123
|
setDropOpen(true);
|
|
124
|
-
onChange({ id: undefined, name:
|
|
125
|
-
if (value.trim() ===
|
|
124
|
+
onChange({ id: undefined, name: '', from: 1 });
|
|
125
|
+
if (value.trim() === '' && type === 'auto_complete') {
|
|
126
126
|
setSuggestions([]);
|
|
127
127
|
if (autoFilter) {
|
|
128
|
-
handleDropData(
|
|
128
|
+
handleDropData('*');
|
|
129
129
|
}
|
|
130
130
|
else {
|
|
131
131
|
setDropOpen(false);
|
|
@@ -139,10 +139,10 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
139
139
|
}, 200);
|
|
140
140
|
}, isStaticList ? 0 : 1000), []);
|
|
141
141
|
var handleDropData = function (value) {
|
|
142
|
-
if (type ===
|
|
142
|
+
if (type === 'auto_complete') {
|
|
143
143
|
if (isStaticList) {
|
|
144
144
|
loadStaticData();
|
|
145
|
-
var filteredData_1 = value && value !==
|
|
145
|
+
var filteredData_1 = value && value !== '*'
|
|
146
146
|
? data === null || data === void 0 ? void 0 : data.filter(function (item) {
|
|
147
147
|
return checkIncludes(item.name, value, item.param1, item.param2, item.param3);
|
|
148
148
|
})
|
|
@@ -153,12 +153,12 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
153
153
|
handlePickSuggestions(value);
|
|
154
154
|
}
|
|
155
155
|
}
|
|
156
|
-
else if ((type ===
|
|
156
|
+
else if ((type === 'custom_select' || type === 'custom_search_select') &&
|
|
157
157
|
(!data || (data === null || data === void 0 ? void 0 : data.length) === 0)) {
|
|
158
158
|
handlePickSuggestions();
|
|
159
159
|
}
|
|
160
|
-
else if (type ===
|
|
161
|
-
var filteredData_2 = value && value !==
|
|
160
|
+
else if (type === 'custom_search_select' && data && (data === null || data === void 0 ? void 0 : data.length) > 0) {
|
|
161
|
+
var filteredData_2 = value && value !== '*'
|
|
162
162
|
? data.filter(function (item) {
|
|
163
163
|
return checkIncludes(item.name, value, item.param1, item.param2, item.param3);
|
|
164
164
|
})
|
|
@@ -197,10 +197,10 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
197
197
|
var _a;
|
|
198
198
|
if (!isDisabled) {
|
|
199
199
|
(_a = inputRef === null || inputRef === void 0 ? void 0 : inputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
|
|
200
|
-
if (autoFilter && inputValue ===
|
|
201
|
-
handleValChange(
|
|
200
|
+
if (autoFilter && inputValue === '') {
|
|
201
|
+
handleValChange('*');
|
|
202
202
|
}
|
|
203
|
-
else if ((type ===
|
|
203
|
+
else if ((type === 'custom_select' || type === 'custom_search_select') &&
|
|
204
204
|
data &&
|
|
205
205
|
(data === null || data === void 0 ? void 0 : data.length) > 0) {
|
|
206
206
|
handleDropData();
|
|
@@ -233,7 +233,7 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
233
233
|
case 1:
|
|
234
234
|
_a.trys.push([1, 3, , 4]);
|
|
235
235
|
setIsLoading(true);
|
|
236
|
-
return [4 /*yield*/, (getData === null || getData === void 0 ? void 0 : getData(
|
|
236
|
+
return [4 /*yield*/, (getData === null || getData === void 0 ? void 0 : getData('*'))];
|
|
237
237
|
case 2:
|
|
238
238
|
fetchedSuggestions = _a.sent();
|
|
239
239
|
fetchedSuggestions === null || fetchedSuggestions === void 0 ? void 0 : fetchedSuggestions.forEach(function (element) {
|
|
@@ -254,9 +254,9 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
254
254
|
});
|
|
255
255
|
}); };
|
|
256
256
|
(0, react_1.useEffect)(function () {
|
|
257
|
-
document.addEventListener(
|
|
257
|
+
document.addEventListener('click', handleClickOutside);
|
|
258
258
|
return function () {
|
|
259
|
-
document.removeEventListener(
|
|
259
|
+
document.removeEventListener('click', handleClickOutside);
|
|
260
260
|
};
|
|
261
261
|
}, []);
|
|
262
262
|
(0, react_1.useEffect)(function () {
|
|
@@ -266,10 +266,10 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
266
266
|
}, [autoFocus]);
|
|
267
267
|
var onInputFocus = function () {
|
|
268
268
|
if (!isDisabled) {
|
|
269
|
-
if (autoFilter && inputValue ===
|
|
270
|
-
handleValChange(
|
|
269
|
+
if (autoFilter && inputValue === '') {
|
|
270
|
+
handleValChange('*');
|
|
271
271
|
}
|
|
272
|
-
else if ((type ===
|
|
272
|
+
else if ((type === 'custom_select' || type === 'custom_search_select') &&
|
|
273
273
|
data &&
|
|
274
274
|
(data === null || data === void 0 ? void 0 : data.length) > 0) {
|
|
275
275
|
handleDropData();
|
|
@@ -282,7 +282,7 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
282
282
|
}, [disabled]);
|
|
283
283
|
var handleSuggestionClick = function (suggestion, index) {
|
|
284
284
|
onChange(__assign(__assign(__assign({}, suggestion), { id: suggestion === null || suggestion === void 0 ? void 0 : suggestion.id, name: suggestion.name }), ((suggestion === null || suggestion === void 0 ? void 0 : suggestion.label) ? { label: suggestion === null || suggestion === void 0 ? void 0 : suggestion.label } : {})));
|
|
285
|
-
if (type !==
|
|
285
|
+
if (type !== 'custom_select')
|
|
286
286
|
setInputValue(suggestion.name);
|
|
287
287
|
setDropOpen(false);
|
|
288
288
|
setSelectedIndex(index);
|
|
@@ -292,13 +292,13 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
292
292
|
handleDropData();
|
|
293
293
|
if (!isLoading) {
|
|
294
294
|
setDropOpen(!dropOpen);
|
|
295
|
-
if (type !==
|
|
296
|
-
setInputValue(
|
|
295
|
+
if (type !== 'custom_select')
|
|
296
|
+
setInputValue('');
|
|
297
297
|
}
|
|
298
298
|
};
|
|
299
299
|
var handleOpenDropdown = function (e) {
|
|
300
300
|
if (!suggestions || (suggestions === null || suggestions === void 0 ? void 0 : suggestions.length) === 0 || refetchData) {
|
|
301
|
-
if (autoDropdown && (inputValue ===
|
|
301
|
+
if (autoDropdown && (inputValue === '' || inputValue.trim() === '')) {
|
|
302
302
|
setSuggestions([]);
|
|
303
303
|
loadStaticData();
|
|
304
304
|
}
|
|
@@ -316,31 +316,31 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
316
316
|
(0, react_1.useEffect)(function () {
|
|
317
317
|
if (!insideOpen) {
|
|
318
318
|
setSelectedIndex(0);
|
|
319
|
-
window.addEventListener(
|
|
320
|
-
var mainElement = document.querySelector(
|
|
321
|
-
mainElement === null || mainElement === void 0 ? void 0 : mainElement.addEventListener(
|
|
322
|
-
var gridElements = document.querySelectorAll(
|
|
319
|
+
window.addEventListener('scroll', handleScroll);
|
|
320
|
+
var mainElement = document.querySelector('main');
|
|
321
|
+
mainElement === null || mainElement === void 0 ? void 0 : mainElement.addEventListener('scroll', handleScroll);
|
|
322
|
+
var gridElements = document.querySelectorAll('.k-grid-content, .overflow-auto, .overflow-y-auto, .overflow-x-auto');
|
|
323
323
|
gridElements.forEach(function (gridElement) {
|
|
324
|
-
gridElement.addEventListener(
|
|
324
|
+
gridElement.addEventListener('scroll', handleScroll);
|
|
325
325
|
});
|
|
326
|
-
window.addEventListener(
|
|
326
|
+
window.addEventListener('resize', getDropPosition);
|
|
327
327
|
getDropPosition();
|
|
328
328
|
return function () {
|
|
329
|
-
window.removeEventListener(
|
|
330
|
-
var mainElement = document.querySelector(
|
|
331
|
-
mainElement === null || mainElement === void 0 ? void 0 : mainElement.removeEventListener(
|
|
332
|
-
window.addEventListener(
|
|
333
|
-
var gridElements = document.querySelectorAll(
|
|
329
|
+
window.removeEventListener('scroll', handleScroll);
|
|
330
|
+
var mainElement = document.querySelector('main');
|
|
331
|
+
mainElement === null || mainElement === void 0 ? void 0 : mainElement.removeEventListener('scroll', handleScroll);
|
|
332
|
+
window.addEventListener('resize', getDropPosition);
|
|
333
|
+
var gridElements = document.querySelectorAll('.k-grid-content');
|
|
334
334
|
gridElements.forEach(function (gridElement) {
|
|
335
|
-
gridElement.removeEventListener(
|
|
335
|
+
gridElement.removeEventListener('scroll', handleScroll);
|
|
336
336
|
});
|
|
337
337
|
};
|
|
338
338
|
}
|
|
339
339
|
}, [dropOpen]);
|
|
340
340
|
var handleClear = function () {
|
|
341
341
|
setDropOpen(false);
|
|
342
|
-
setInputValue(
|
|
343
|
-
onChange({ id: undefined, name:
|
|
342
|
+
setInputValue('');
|
|
343
|
+
onChange({ id: undefined, name: '', from: 3 });
|
|
344
344
|
onLabelClick();
|
|
345
345
|
if (autoDropdown) {
|
|
346
346
|
setRefetchData(true);
|
|
@@ -348,14 +348,14 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
348
348
|
};
|
|
349
349
|
(0, react_1.useEffect)(function () {
|
|
350
350
|
var _a;
|
|
351
|
-
setInputValue((_a = value === null || value === void 0 ? void 0 : value.name) !== null && _a !== void 0 ? _a :
|
|
351
|
+
setInputValue((_a = value === null || value === void 0 ? void 0 : value.name) !== null && _a !== void 0 ? _a : '');
|
|
352
352
|
}, [value === null || value === void 0 ? void 0 : value.name]);
|
|
353
353
|
(0, react_1.useEffect)(function () {
|
|
354
354
|
setSuggestions(data);
|
|
355
355
|
}, [data]);
|
|
356
356
|
var getErrors = function (err) {
|
|
357
357
|
var _a, _b, _c, _d;
|
|
358
|
-
var errMsg =
|
|
358
|
+
var errMsg = '';
|
|
359
359
|
if (err.message) {
|
|
360
360
|
errMsg = err === null || err === void 0 ? void 0 : err.message;
|
|
361
361
|
}
|
|
@@ -370,43 +370,43 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
370
370
|
var generateClassName = function (type) {
|
|
371
371
|
var className = propsClassName;
|
|
372
372
|
switch (type) {
|
|
373
|
-
case
|
|
373
|
+
case 'input':
|
|
374
374
|
className += "block text-common text-input-text font-normal px-3.5 w-full text-sm text-gray-900 bg-transparent border appearance-none peer h-10 rounded-[4px] disabled:text-input-disabled bg-white disabled:bg-disabled ".concat(label && isModern
|
|
375
|
-
?
|
|
376
|
-
:
|
|
375
|
+
? 'placeholder-transparent'
|
|
376
|
+
: 'focus:placeholder-grey-secondary placeholder-input-label', " focus:placeholder-grey-secondary");
|
|
377
377
|
if (errors && errors[name]) {
|
|
378
378
|
className +=
|
|
379
|
-
|
|
379
|
+
' border-[#FDA29B] focus:border-error-[#FDA29B] focus:ring-[#FDA29B] focus:ring-3 focus:outline-[#FDA29B] input-outline';
|
|
380
380
|
}
|
|
381
381
|
else {
|
|
382
382
|
className +=
|
|
383
|
-
|
|
383
|
+
' text-grey-dark border-input-light focus:border-blue-navy focus:outline-none focus:ring-0';
|
|
384
384
|
}
|
|
385
385
|
break;
|
|
386
|
-
case
|
|
386
|
+
case 'label':
|
|
387
387
|
className += " flex modern-input-label-truncate peer-focus:modern-input-peer-focus-label-size \n ".concat(isDisabled
|
|
388
|
-
?
|
|
389
|
-
:
|
|
390
|
-
?
|
|
388
|
+
? 'cursor-pointer'
|
|
389
|
+
: 'cursor-text peer-focus:cursor-pointer', " ").concat(isDisabled && !checkIsEmptyField()
|
|
390
|
+
? 'disabled-input-label-bg'
|
|
391
391
|
: !isDisabled || !checkIsEmptyField()
|
|
392
|
-
?
|
|
393
|
-
:
|
|
394
|
-
?
|
|
395
|
-
:
|
|
396
|
-
?
|
|
397
|
-
:
|
|
392
|
+
? 'active-input-label-bg'
|
|
393
|
+
: '', " absolute duration-300 transform -translate-y-4 top-2 z-1 origin-[0] px-0 peer-placeholder-shown:-translate-y-1/2 peer-placeholder-shown:top-1/2 peer-focus:top-2 peer-focus:-translate-y-4 start-[14px] rtl:peer-focus:translate-x-1/4 rtl:peer-focus:left-auto ").concat(isDisabled
|
|
394
|
+
? 'cursor-pointer'
|
|
395
|
+
: 'cursor-text peer-focus:cursor-pointer', "\n ").concat(checkIsEmptyField()
|
|
396
|
+
? 'modern-input-label-size'
|
|
397
|
+
: 'modern-input-peer-focus-label-size');
|
|
398
398
|
if (errors && errors[name]) {
|
|
399
|
-
className +=
|
|
399
|
+
className += ' text-error-light ';
|
|
400
400
|
}
|
|
401
401
|
else {
|
|
402
|
-
className +=
|
|
402
|
+
className += ' text-grey-dark peer-focus:text-blue-navy';
|
|
403
403
|
}
|
|
404
404
|
break;
|
|
405
|
-
case
|
|
406
|
-
className =
|
|
405
|
+
case 'message':
|
|
406
|
+
className = ' text-error-icon ';
|
|
407
407
|
break;
|
|
408
|
-
case
|
|
409
|
-
className +=
|
|
408
|
+
case 'adorement':
|
|
409
|
+
className += ' absolute right-0 adorement gap-1 flex items-center ';
|
|
410
410
|
break;
|
|
411
411
|
default:
|
|
412
412
|
break;
|
|
@@ -430,23 +430,23 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
430
430
|
// const getPosition = () => {
|
|
431
431
|
// return 'bottom'
|
|
432
432
|
// }
|
|
433
|
-
var filteredData = inputValue !==
|
|
434
|
-
inputValue !==
|
|
435
|
-
type !==
|
|
433
|
+
var filteredData = inputValue !== '*' &&
|
|
434
|
+
inputValue !== '' &&
|
|
435
|
+
type !== 'custom_select' &&
|
|
436
436
|
!noLocalFilter
|
|
437
437
|
? suggestions === null || suggestions === void 0 ? void 0 : suggestions.filter(function (item) {
|
|
438
438
|
var _a, _b, _c, _d;
|
|
439
|
-
return checkIncludes(item.name, inputValue, (_a = item.param1) !== null && _a !== void 0 ? _a :
|
|
439
|
+
return checkIncludes(item.name, inputValue, (_a = item.param1) !== null && _a !== void 0 ? _a : '', (_b = item.param2) !== null && _b !== void 0 ? _b : '', (_c = item.param3) !== null && _c !== void 0 ? _c : '', (_d = item.param4) !== null && _d !== void 0 ? _d : '');
|
|
440
440
|
})
|
|
441
441
|
: suggestions;
|
|
442
442
|
var handleError = function (data) {
|
|
443
443
|
var _a;
|
|
444
|
-
if (getErrors(data[name]) ===
|
|
445
|
-
getErrors(data[name]) ===
|
|
444
|
+
if (getErrors(data[name]) === 'required' ||
|
|
445
|
+
getErrors(data[name]) === 'Required') {
|
|
446
446
|
return "".concat(label !== null && label !== void 0 ? label : labelTitle, " is ").concat(getErrors(data[name]));
|
|
447
447
|
}
|
|
448
448
|
else {
|
|
449
|
-
return (_a = getErrors(data[name])) !== null && _a !== void 0 ? _a :
|
|
449
|
+
return (_a = getErrors(data[name])) !== null && _a !== void 0 ? _a : '';
|
|
450
450
|
}
|
|
451
451
|
};
|
|
452
452
|
var getDropPosition = function () {
|
|
@@ -494,7 +494,7 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
494
494
|
var atBottom = selectedIndex === filteredData.length - 1;
|
|
495
495
|
var atTop = selectedIndex === 0;
|
|
496
496
|
switch (e.key) {
|
|
497
|
-
case
|
|
497
|
+
case 'ArrowDown':
|
|
498
498
|
e.preventDefault();
|
|
499
499
|
if (itemRefs.current && scrollContainerRef.current) {
|
|
500
500
|
if (!atBottom) {
|
|
@@ -507,7 +507,7 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
507
507
|
}
|
|
508
508
|
setSelectedIndex(function (prev) { return (prev + 1) % (filteredData === null || filteredData === void 0 ? void 0 : filteredData.length); });
|
|
509
509
|
break;
|
|
510
|
-
case
|
|
510
|
+
case 'ArrowUp':
|
|
511
511
|
e.preventDefault();
|
|
512
512
|
if (itemRefs.current && scrollContainerRef.current) {
|
|
513
513
|
if (!atTop) {
|
|
@@ -520,11 +520,11 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
520
520
|
}
|
|
521
521
|
setSelectedIndex(function (prev) { return (prev - 1 + (filteredData === null || filteredData === void 0 ? void 0 : filteredData.length)) % (filteredData === null || filteredData === void 0 ? void 0 : filteredData.length); });
|
|
522
522
|
break;
|
|
523
|
-
case
|
|
523
|
+
case 'Enter':
|
|
524
524
|
e.preventDefault();
|
|
525
525
|
handleSuggestionClick(filteredData[selectedIndex], selectedIndex);
|
|
526
526
|
break;
|
|
527
|
-
case
|
|
527
|
+
case 'Escape':
|
|
528
528
|
e.preventDefault();
|
|
529
529
|
setDropOpen(false);
|
|
530
530
|
break;
|
|
@@ -533,9 +533,9 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
533
533
|
}
|
|
534
534
|
};
|
|
535
535
|
if ((filteredData === null || filteredData === void 0 ? void 0 : filteredData.length) > 0 && !isLoading) {
|
|
536
|
-
window.addEventListener(
|
|
536
|
+
window.addEventListener('keydown', handleKeyDown);
|
|
537
537
|
return function () {
|
|
538
|
-
window.removeEventListener(
|
|
538
|
+
window.removeEventListener('keydown', handleKeyDown);
|
|
539
539
|
};
|
|
540
540
|
}
|
|
541
541
|
}, [
|
|
@@ -548,8 +548,8 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
548
548
|
]);
|
|
549
549
|
var setDropDown = function () {
|
|
550
550
|
return (((filteredData === null || filteredData === void 0 ? void 0 : filteredData.length) > 0 || showNoResults) && ((0, jsx_runtime_1.jsx)("ul", __assign({ className: "autocomplete-suggections absolute h-auto max-h-40 overflow-auto w-full bg-white shadow-gray-300 shadow-md border border-grey-light py-1.5 z-50 mt-9", style: dropPosition, ref: scrollContainerRef }, { children: (filteredData === null || filteredData === void 0 ? void 0 : filteredData.length) > 0 ? ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: filteredData.map(function (suggestion, index) { return ((0, jsx_runtime_1.jsxs)("li", __assign({ className: "".concat((value === null || value === void 0 ? void 0 : value.id) === (suggestion === null || suggestion === void 0 ? void 0 : suggestion.id)
|
|
551
|
-
?
|
|
552
|
-
: "".concat(index === selectedIndex ?
|
|
551
|
+
? 'bg-blue-navy text-white'
|
|
552
|
+
: "".concat(index === selectedIndex ? 'is-selected' : '', " hover:bg-table-hover"), " cursor-pointer p-1 text-xxs ps-3.5 pl-[10px] qbs-autocomplete-suggections-items"), "data-testid": suggestion.name, onClick: function () { return handleSuggestionClick(suggestion, index); }, tabIndex: index, ref: function (el) { return (itemRefs.current[index] = el); } }, { children: [(0, jsx_runtime_1.jsx)("span", { children: (suggestion === null || suggestion === void 0 ? void 0 : suggestion.label) ? suggestion === null || suggestion === void 0 ? void 0 : suggestion.label : suggestion.name }), shortCode && (suggestion === null || suggestion === void 0 ? void 0 : suggestion[shortCode]) && ((0, jsx_runtime_1.jsx)("span", __assign({ className: "short-code" }, { children: suggestion === null || suggestion === void 0 ? void 0 : suggestion[shortCode] })))] }), suggestion === null || suggestion === void 0 ? void 0 : suggestion.id)); }) })) : (showNoResults &&
|
|
553
553
|
!isLoading &&
|
|
554
554
|
timerRef.current === 1 && ((0, jsx_runtime_1.jsx)("li", __assign({ className: "$ cursor-pointer p-1 rounded-sm text-xxs", onClick: handleClose }, { children: "No Results Found" })))) }))));
|
|
555
555
|
};
|
|
@@ -571,7 +571,7 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
571
571
|
}, [isHovered]);
|
|
572
572
|
(0, react_1.useEffect)(function () {
|
|
573
573
|
var shouldShowClose = (value === null || value === void 0 ? void 0 : value.name) &&
|
|
574
|
-
((value === null || value === void 0 ? void 0 : value.id) || String(value === null || value === void 0 ? void 0 : value.id) ===
|
|
574
|
+
((value === null || value === void 0 ? void 0 : value.id) || String(value === null || value === void 0 ? void 0 : value.id) === '0') &&
|
|
575
575
|
!disabled &&
|
|
576
576
|
!readOnly &&
|
|
577
577
|
isClose;
|
|
@@ -585,7 +585,7 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
585
585
|
if (inputRef.current) {
|
|
586
586
|
var _a = inputRef.current, scrollWidth = _a.scrollWidth, clientWidth = _a.clientWidth, value_1 = _a.value;
|
|
587
587
|
// Check for overflow only when there's content
|
|
588
|
-
if (value_1.trim() !==
|
|
588
|
+
if (value_1.trim() !== '') {
|
|
589
589
|
setShowTooltip(scrollWidth > clientWidth + 2);
|
|
590
590
|
}
|
|
591
591
|
else {
|
|
@@ -594,12 +594,12 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
594
594
|
}
|
|
595
595
|
};
|
|
596
596
|
if (inputRef.current) {
|
|
597
|
-
inputRef.current.addEventListener(
|
|
597
|
+
inputRef.current.addEventListener('input', checkOverflow);
|
|
598
598
|
checkOverflow(); // Initial check
|
|
599
599
|
}
|
|
600
600
|
return function () {
|
|
601
601
|
if (inputRef.current) {
|
|
602
|
-
inputRef.current.removeEventListener(
|
|
602
|
+
inputRef.current.removeEventListener('input', checkOverflow);
|
|
603
603
|
}
|
|
604
604
|
};
|
|
605
605
|
}, [inputValue]);
|
|
@@ -609,18 +609,18 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
609
609
|
var handleMouseLeave = function () {
|
|
610
610
|
setTooltipIsHovered(false);
|
|
611
611
|
};
|
|
612
|
-
return ((0, jsx_runtime_1.jsxs)("div", __assign({ id: id ? "autocomplete-container-".concat(id) : "autocomplete-container-".concat(name), className: " flex-grow ".concat(fullWidth ?
|
|
612
|
+
return ((0, jsx_runtime_1.jsxs)("div", __assign({ id: id ? "autocomplete-container-".concat(id) : "autocomplete-container-".concat(name), className: " flex-grow ".concat(fullWidth ? 'w-full' : 'w-auto'), ref: dropdownref }, { children: [label && !isModern && ((0, jsx_runtime_1.jsx)("div", __assign({ className: "mb-3" }, { children: (0, jsx_runtime_1.jsxs)("label", __assign({ className: "text-xs font-medium" }, { children: [label, required ? (0, jsx_runtime_1.jsx)("span", __assign({ className: "text-error" }, { children: " *" })) : (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, {})] })) }))), (0, jsx_runtime_1.jsxs)("div", __assign({ className: "tooltip-container" }, { children: [isHovered && errors && errors[name] && ((0, jsx_runtime_1.jsxs)("span", __assign({ className: "tooltip" }, { children: [handleError(errors), " "] }))), tooltipIsHovered && showToolTip && !dropOpen && inputValue && ((0, jsx_runtime_1.jsx)("div", __assign({ className: "tooltip-info" }, { children: inputValue }))), (0, jsx_runtime_1.jsxs)("div", __assign({ className: "flex relative ".concat(fullWidth ? 'w-full' : 'w-auto'), style: { width: width } }, { children: [(0, jsx_runtime_1.jsxs)("div", __assign({ className: "relative w-full", onMouseEnter: function () { return handleMouseEnter(); }, onMouseLeave: function () { return handleMouseLeave(); } }, { children: [(0, jsx_runtime_1.jsx)("input", { type: "text", readOnly: readOnly !== null && readOnly !== void 0 ? readOnly : type === 'custom_select', value: inputValue ? inputValue : '', onBlur: handleClearInputValue, autoComplete: "off", disabled: disabled, ref: inputRef, id: id ? "custom-autocomplete-".concat(id) : "custom-autocomplete-".concat(name), "data-testid": "custom-autocomplete", "aria-describedby": id, style: __assign({ paddingRight: getInnerWidth() }, (fromPrefix
|
|
613
613
|
? {
|
|
614
614
|
borderRight: getBorderRight(),
|
|
615
615
|
borderTopRightRadius: 0,
|
|
616
616
|
borderBottomRightRadius: 0,
|
|
617
617
|
}
|
|
618
|
-
: {})), className: " ".concat(generateClassName(
|
|
618
|
+
: {})), className: " ".concat(generateClassName('input')), onChange: handleChange, placeholder: type === 'auto_complete'
|
|
619
619
|
? placeholder && isCustomPlaceholder
|
|
620
620
|
? placeholder
|
|
621
|
-
:
|
|
622
|
-
: placeholder !== null && placeholder !== void 0 ? placeholder :
|
|
623
|
-
if (type ===
|
|
621
|
+
: 'Type to search'
|
|
622
|
+
: placeholder !== null && placeholder !== void 0 ? placeholder : '--Select--', onFocus: onInputFocus, onClick: function (e) {
|
|
623
|
+
if (type === 'custom_select') {
|
|
624
624
|
setDropOpen(!dropOpen);
|
|
625
625
|
handleOpen(e);
|
|
626
626
|
}
|
|
@@ -628,9 +628,9 @@ var ModernAutoCompleteDropdown = function (_a) {
|
|
|
628
628
|
if (dropOpen || (filteredData === null || filteredData === void 0 ? void 0 : filteredData.length) > 0)
|
|
629
629
|
setDropOpen(!dropOpen);
|
|
630
630
|
}
|
|
631
|
-
} }), isModern && ((0, jsx_runtime_1.jsxs)("label", __assign({ htmlFor: id, onClick: function () { return onLabelClick(); }, className: generateClassName(
|
|
631
|
+
} }), isModern && ((0, jsx_runtime_1.jsxs)("label", __assign({ htmlFor: id, onClick: function () { return onLabelClick(); }, className: generateClassName('label') }, { children: [label ? (0, jsx_runtime_1.jsx)("span", __assign({ className: "truncate" }, { children: label })) : '', required ? (0, jsx_runtime_1.jsx)("span", __assign({ className: "text-error" }, { children: " *" })) : (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, {})] })))] })), (0, jsx_runtime_1.jsx)("div", __assign({ className: "flex items-center justify-center autocomplete-adorement-wrapper" }, { children: (0, jsx_runtime_1.jsxs)("div", __assign({ ref: adorementRef, className: "".concat(generateClassName('adorement'), " qbs-autocomplete-adorement mr-[1px] ").concat(isLoading ? 'bg-white' : '') }, { children: [showClose && ((0, jsx_runtime_1.jsx)("button", __assign({ onClick: function () { return handleClear(); }, className: " text-table-bodyColor text-[#667085]", "aria-label": "close", type: "button", id: "autocomplete-close-icon" }, { children: (0, jsx_runtime_1.jsx)(customIcons_1.default, { name: "close", type: "large-m" }) }))), isLoading && (0, jsx_runtime_1.jsx)(Spinner_1.default, {}), (type !== 'auto_complete' || autoDropdown) &&
|
|
632
632
|
!disabled &&
|
|
633
|
-
!readOnly && ((0, jsx_runtime_1.jsx)("button", __assign({ disabled: disabled !== null && disabled !== void 0 ? disabled : readOnly, onClick: function (e) { return handleOpenDropdown(e); }, onBlur: handleClose, className: " text-[#667085] focus-visible:outline-slate-100", "data-testid": "drop-arrow", type: "button", id: "autocomplete-drop-icon", ref: dropBtnRef }, { children: !dropOpen ? ((0, jsx_runtime_1.jsx)(icons_1.AllDropArrow, { type: "down", uniqueId: "all-dropdow-arrow-icon", className:
|
|
633
|
+
!readOnly && ((0, jsx_runtime_1.jsx)("button", __assign({ disabled: disabled !== null && disabled !== void 0 ? disabled : readOnly, onClick: function (e) { return handleOpenDropdown(e); }, onBlur: handleClose, className: " text-[#667085] focus-visible:outline-slate-100", "data-testid": "drop-arrow", type: "button", id: "autocomplete-drop-icon", ref: dropBtnRef }, { children: !dropOpen ? (autoDropdown ? ((0, jsx_runtime_1.jsx)(icons_1.AllDropArrow, { type: "down", uniqueId: "all-dropdow-arrow-icon", className: "all-dropdow-arrow-icon" })) : ((0, jsx_runtime_1.jsx)(icons_1.DropArrow, { uniqueDropArrowId: "drop-arrow-icon" }))) : autoDropdown ? ((0, jsx_runtime_1.jsx)(icons_1.AllDropArrow, { type: "up", uniqueId: "all-dropdow-arrow-icon", className: "all-dropdow-arrow-icon" })) : ((0, jsx_runtime_1.jsx)(icons_1.DropArrow, { className: "rotate-180", uniqueDropArrowId: "drop-arrow-icon" })) }))), errors && errors[name] && ((0, jsx_runtime_1.jsx)("div", __assign({ className: " text-error-label relative cursor-pointer ".concat(generateClassName('message')), onMouseEnter: function () { return setIsHovered(true); }, onMouseLeave: function () { return setIsHovered(false); } }, { children: (0, jsx_runtime_1.jsx)(customIcons_1.default, { name: "alert", type: "medium" }) })))] })) })), dropOpen && (!isLoading || (filteredData === null || filteredData === void 0 ? void 0 : filteredData.length) > 0) && ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: insideOpen ? setDropDown() : (0, jsx_runtime_1.jsx)(portal_1.default, { children: setDropDown() }) }))] }))] }))] })));
|
|
634
634
|
};
|
|
635
635
|
exports.default = ModernAutoCompleteDropdown;
|
|
636
636
|
//# sourceMappingURL=ReactAutoCompleteDropdown.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReactAutoCompleteDropdown.js","sourceRoot":"","sources":["../src/ReactAutoCompleteDropdown.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ReactAutoCompleteDropdown.js","sourceRoot":"","sources":["../src/ReactAutoCompleteDropdown.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import React, { useCallback, useEffect, useRef, useState } from
|
|
2
|
-
import { FieldErrors } from
|
|
1
|
+
import React, { useCallback, useEffect, useRef, useState } from 'react';
|
|
2
|
+
import { FieldErrors } from 'react-hook-form';
|
|
3
3
|
|
|
4
|
-
import CustomIcons from
|
|
5
|
-
import Spinner from
|
|
6
|
-
import Portal from
|
|
7
|
-
import { debounce } from
|
|
8
|
-
import { applyPositionClass } from
|
|
9
|
-
import { AllDropArrow } from
|
|
4
|
+
import CustomIcons from './components/customIcons';
|
|
5
|
+
import Spinner from './components/loader/Spinner';
|
|
6
|
+
import Portal from './components/portal';
|
|
7
|
+
import { debounce } from './utilities/debounce';
|
|
8
|
+
import { applyPositionClass } from './utilities/getPosition';
|
|
9
|
+
import { AllDropArrow, DropArrow } from './utilities/icons';
|
|
10
10
|
|
|
11
11
|
type valueProps = {
|
|
12
12
|
id?: string | number;
|
|
@@ -30,7 +30,7 @@ interface AutoSuggestionInputProps {
|
|
|
30
30
|
value?: valueProps;
|
|
31
31
|
onChange: (value?: valueProps) => void;
|
|
32
32
|
data?: any[];
|
|
33
|
-
type?:
|
|
33
|
+
type?: 'custom_select' | 'auto_complete' | 'custom_search_select';
|
|
34
34
|
placeholder?: string;
|
|
35
35
|
getData?: ((key?: string) => Promise<any>) | ((key?: string) => any);
|
|
36
36
|
errors?: FieldErrors;
|
|
@@ -63,12 +63,12 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
63
63
|
required = false,
|
|
64
64
|
autoFocus,
|
|
65
65
|
name,
|
|
66
|
-
shortCode =
|
|
66
|
+
shortCode = '',
|
|
67
67
|
fullWidth,
|
|
68
68
|
placeholder,
|
|
69
69
|
id,
|
|
70
70
|
className: propsClassName,
|
|
71
|
-
type =
|
|
71
|
+
type = 'custom_select',
|
|
72
72
|
readOnly,
|
|
73
73
|
disabled = false,
|
|
74
74
|
value,
|
|
@@ -86,7 +86,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
86
86
|
labelTitle,
|
|
87
87
|
isModern = true,
|
|
88
88
|
}) => {
|
|
89
|
-
const [inputValue, setInputValue] = useState<any>(value?.name ??
|
|
89
|
+
const [inputValue, setInputValue] = useState<any>(value?.name ?? '');
|
|
90
90
|
const [isHovered, setIsHovered] = useState<boolean>(false);
|
|
91
91
|
const [isLoading, setIsLoading] = useState<boolean>(false);
|
|
92
92
|
const [dropOpen, setDropOpen] = useState<boolean>(false);
|
|
@@ -125,8 +125,8 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
125
125
|
) => {
|
|
126
126
|
return substring &&
|
|
127
127
|
mainString &&
|
|
128
|
-
typeof mainString ===
|
|
129
|
-
typeof subString ===
|
|
128
|
+
typeof mainString === 'string' &&
|
|
129
|
+
typeof subString === 'string'
|
|
130
130
|
? mainString
|
|
131
131
|
.toString()
|
|
132
132
|
.toLowerCase()
|
|
@@ -141,13 +141,13 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
141
141
|
return (
|
|
142
142
|
checkIncludesIfExists(mainString, subString) ||
|
|
143
143
|
(!!checkParams &&
|
|
144
|
-
((checkArrayContains(checkParams,
|
|
144
|
+
((checkArrayContains(checkParams, 'param1') &&
|
|
145
145
|
checkIncludesIfExists(param1, subString)) ||
|
|
146
|
-
(checkArrayContains(checkParams,
|
|
146
|
+
(checkArrayContains(checkParams, 'param2') &&
|
|
147
147
|
checkIncludesIfExists(param2, subString)) ||
|
|
148
|
-
(checkArrayContains(checkParams,
|
|
148
|
+
(checkArrayContains(checkParams, 'param3') &&
|
|
149
149
|
checkIncludesIfExists(param3, subString)) ||
|
|
150
|
-
(checkArrayContains(checkParams,
|
|
150
|
+
(checkArrayContains(checkParams, 'param4') &&
|
|
151
151
|
checkIncludesIfExists(param4, subString))))
|
|
152
152
|
);
|
|
153
153
|
};
|
|
@@ -159,8 +159,8 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
159
159
|
setInputValue(value);
|
|
160
160
|
handleValChange(value);
|
|
161
161
|
if (!value) {
|
|
162
|
-
setInputValue(
|
|
163
|
-
onChange({ id: undefined, name:
|
|
162
|
+
setInputValue('');
|
|
163
|
+
onChange({ id: undefined, name: '', from: 2 });
|
|
164
164
|
}
|
|
165
165
|
};
|
|
166
166
|
|
|
@@ -168,11 +168,11 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
168
168
|
debounce(
|
|
169
169
|
(value: string) => {
|
|
170
170
|
setDropOpen(true);
|
|
171
|
-
onChange({ id: undefined, name:
|
|
172
|
-
if (value.trim() ===
|
|
171
|
+
onChange({ id: undefined, name: '', from: 1 });
|
|
172
|
+
if (value.trim() === '' && type === 'auto_complete') {
|
|
173
173
|
setSuggestions([]);
|
|
174
174
|
if (autoFilter) {
|
|
175
|
-
handleDropData(
|
|
175
|
+
handleDropData('*');
|
|
176
176
|
} else {
|
|
177
177
|
setDropOpen(false);
|
|
178
178
|
}
|
|
@@ -188,11 +188,11 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
188
188
|
[]
|
|
189
189
|
);
|
|
190
190
|
const handleDropData = (value?: string) => {
|
|
191
|
-
if (type ===
|
|
191
|
+
if (type === 'auto_complete') {
|
|
192
192
|
if (isStaticList) {
|
|
193
193
|
loadStaticData();
|
|
194
194
|
const filteredData =
|
|
195
|
-
value && value !==
|
|
195
|
+
value && value !== '*'
|
|
196
196
|
? data?.filter((item) =>
|
|
197
197
|
checkIncludes(
|
|
198
198
|
item.name,
|
|
@@ -208,13 +208,13 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
208
208
|
handlePickSuggestions(value);
|
|
209
209
|
}
|
|
210
210
|
} else if (
|
|
211
|
-
(type ===
|
|
211
|
+
(type === 'custom_select' || type === 'custom_search_select') &&
|
|
212
212
|
(!data || data?.length === 0)
|
|
213
213
|
) {
|
|
214
214
|
handlePickSuggestions();
|
|
215
|
-
} else if (type ===
|
|
215
|
+
} else if (type === 'custom_search_select' && data && data?.length > 0) {
|
|
216
216
|
const filteredData =
|
|
217
|
-
value && value !==
|
|
217
|
+
value && value !== '*'
|
|
218
218
|
? data.filter((item) =>
|
|
219
219
|
checkIncludes(
|
|
220
220
|
item.name,
|
|
@@ -247,10 +247,10 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
247
247
|
const onLabelClick = () => {
|
|
248
248
|
if (!isDisabled) {
|
|
249
249
|
inputRef?.current?.focus();
|
|
250
|
-
if (autoFilter && inputValue ===
|
|
251
|
-
handleValChange(
|
|
250
|
+
if (autoFilter && inputValue === '') {
|
|
251
|
+
handleValChange('*');
|
|
252
252
|
} else if (
|
|
253
|
-
(type ===
|
|
253
|
+
(type === 'custom_select' || type === 'custom_search_select') &&
|
|
254
254
|
data &&
|
|
255
255
|
data?.length > 0
|
|
256
256
|
) {
|
|
@@ -278,7 +278,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
278
278
|
try {
|
|
279
279
|
setIsLoading(true);
|
|
280
280
|
//handlePickSuggestions('*');
|
|
281
|
-
const fetchedSuggestions = await getData?.(
|
|
281
|
+
const fetchedSuggestions = await getData?.('*');
|
|
282
282
|
fetchedSuggestions?.forEach((element: any) => {
|
|
283
283
|
data?.push(element);
|
|
284
284
|
});
|
|
@@ -294,9 +294,9 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
294
294
|
}
|
|
295
295
|
};
|
|
296
296
|
useEffect(() => {
|
|
297
|
-
document.addEventListener(
|
|
297
|
+
document.addEventListener('click', handleClickOutside);
|
|
298
298
|
return () => {
|
|
299
|
-
document.removeEventListener(
|
|
299
|
+
document.removeEventListener('click', handleClickOutside);
|
|
300
300
|
};
|
|
301
301
|
}, []);
|
|
302
302
|
|
|
@@ -307,10 +307,10 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
307
307
|
}, [autoFocus]);
|
|
308
308
|
const onInputFocus = () => {
|
|
309
309
|
if (!isDisabled) {
|
|
310
|
-
if (autoFilter && inputValue ===
|
|
311
|
-
handleValChange(
|
|
310
|
+
if (autoFilter && inputValue === '') {
|
|
311
|
+
handleValChange('*');
|
|
312
312
|
} else if (
|
|
313
|
-
(type ===
|
|
313
|
+
(type === 'custom_select' || type === 'custom_search_select') &&
|
|
314
314
|
data &&
|
|
315
315
|
data?.length > 0
|
|
316
316
|
) {
|
|
@@ -329,7 +329,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
329
329
|
name: suggestion.name,
|
|
330
330
|
...(suggestion?.label ? { label: suggestion?.label } : {}),
|
|
331
331
|
});
|
|
332
|
-
if (type !==
|
|
332
|
+
if (type !== 'custom_select') setInputValue(suggestion.name);
|
|
333
333
|
setDropOpen(false);
|
|
334
334
|
setSelectedIndex(index);
|
|
335
335
|
};
|
|
@@ -337,13 +337,13 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
337
337
|
if (!suggestions || suggestions?.length === 0) handleDropData();
|
|
338
338
|
if (!isLoading) {
|
|
339
339
|
setDropOpen(!dropOpen);
|
|
340
|
-
if (type !==
|
|
340
|
+
if (type !== 'custom_select') setInputValue('');
|
|
341
341
|
}
|
|
342
342
|
};
|
|
343
343
|
|
|
344
344
|
const handleOpenDropdown = (e: any) => {
|
|
345
345
|
if (!suggestions || suggestions?.length === 0 || refetchData) {
|
|
346
|
-
if (autoDropdown && (inputValue ===
|
|
346
|
+
if (autoDropdown && (inputValue === '' || inputValue.trim() === '')) {
|
|
347
347
|
setSuggestions([]);
|
|
348
348
|
loadStaticData();
|
|
349
349
|
} else if (!refetchData) {
|
|
@@ -362,28 +362,28 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
362
362
|
useEffect(() => {
|
|
363
363
|
if (!insideOpen) {
|
|
364
364
|
setSelectedIndex(0);
|
|
365
|
-
window.addEventListener(
|
|
365
|
+
window.addEventListener('scroll', handleScroll);
|
|
366
366
|
|
|
367
|
-
const mainElement = document.querySelector(
|
|
368
|
-
mainElement?.addEventListener(
|
|
367
|
+
const mainElement = document.querySelector('main');
|
|
368
|
+
mainElement?.addEventListener('scroll', handleScroll);
|
|
369
369
|
|
|
370
370
|
const gridElements = document.querySelectorAll(
|
|
371
|
-
|
|
371
|
+
'.k-grid-content, .overflow-auto, .overflow-y-auto, .overflow-x-auto'
|
|
372
372
|
);
|
|
373
373
|
gridElements.forEach((gridElement: any) => {
|
|
374
|
-
gridElement.addEventListener(
|
|
374
|
+
gridElement.addEventListener('scroll', handleScroll);
|
|
375
375
|
});
|
|
376
376
|
|
|
377
|
-
window.addEventListener(
|
|
377
|
+
window.addEventListener('resize', getDropPosition);
|
|
378
378
|
getDropPosition();
|
|
379
379
|
return () => {
|
|
380
|
-
window.removeEventListener(
|
|
381
|
-
const mainElement = document.querySelector(
|
|
382
|
-
mainElement?.removeEventListener(
|
|
383
|
-
window.addEventListener(
|
|
384
|
-
const gridElements = document.querySelectorAll(
|
|
380
|
+
window.removeEventListener('scroll', handleScroll);
|
|
381
|
+
const mainElement = document.querySelector('main');
|
|
382
|
+
mainElement?.removeEventListener('scroll', handleScroll);
|
|
383
|
+
window.addEventListener('resize', getDropPosition);
|
|
384
|
+
const gridElements = document.querySelectorAll('.k-grid-content');
|
|
385
385
|
gridElements.forEach((gridElement: any) => {
|
|
386
|
-
gridElement.removeEventListener(
|
|
386
|
+
gridElement.removeEventListener('scroll', handleScroll);
|
|
387
387
|
});
|
|
388
388
|
};
|
|
389
389
|
}
|
|
@@ -391,8 +391,8 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
391
391
|
|
|
392
392
|
const handleClear = () => {
|
|
393
393
|
setDropOpen(false);
|
|
394
|
-
setInputValue(
|
|
395
|
-
onChange({ id: undefined, name:
|
|
394
|
+
setInputValue('');
|
|
395
|
+
onChange({ id: undefined, name: '', from: 3 });
|
|
396
396
|
onLabelClick();
|
|
397
397
|
if (autoDropdown) {
|
|
398
398
|
setRefetchData(true);
|
|
@@ -400,7 +400,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
400
400
|
};
|
|
401
401
|
|
|
402
402
|
useEffect(() => {
|
|
403
|
-
setInputValue(value?.name ??
|
|
403
|
+
setInputValue(value?.name ?? '');
|
|
404
404
|
}, [value?.name]);
|
|
405
405
|
|
|
406
406
|
useEffect(() => {
|
|
@@ -408,7 +408,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
408
408
|
}, [data]);
|
|
409
409
|
|
|
410
410
|
const getErrors = (err: any) => {
|
|
411
|
-
let errMsg =
|
|
411
|
+
let errMsg = '';
|
|
412
412
|
if (err.message) {
|
|
413
413
|
errMsg = err?.message;
|
|
414
414
|
} else if (err?.id?.message) {
|
|
@@ -419,59 +419,59 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
419
419
|
return errMsg;
|
|
420
420
|
};
|
|
421
421
|
const generateClassName = (
|
|
422
|
-
type:
|
|
422
|
+
type: 'input' | 'label' | 'message' | 'adorement'
|
|
423
423
|
): string => {
|
|
424
424
|
let className = propsClassName;
|
|
425
425
|
switch (type) {
|
|
426
|
-
case
|
|
426
|
+
case 'input':
|
|
427
427
|
className += `block text-common text-input-text font-normal px-3.5 w-full text-sm text-gray-900 bg-transparent border appearance-none peer h-10 rounded-[4px] disabled:text-input-disabled bg-white disabled:bg-disabled ${
|
|
428
428
|
label && isModern
|
|
429
|
-
?
|
|
430
|
-
:
|
|
429
|
+
? 'placeholder-transparent'
|
|
430
|
+
: 'focus:placeholder-grey-secondary placeholder-input-label'
|
|
431
431
|
} focus:placeholder-grey-secondary`;
|
|
432
432
|
|
|
433
433
|
if (errors && errors[name]) {
|
|
434
434
|
className +=
|
|
435
|
-
|
|
435
|
+
' border-[#FDA29B] focus:border-error-[#FDA29B] focus:ring-[#FDA29B] focus:ring-3 focus:outline-[#FDA29B] input-outline';
|
|
436
436
|
} else {
|
|
437
437
|
className +=
|
|
438
|
-
|
|
438
|
+
' text-grey-dark border-input-light focus:border-blue-navy focus:outline-none focus:ring-0';
|
|
439
439
|
}
|
|
440
440
|
|
|
441
441
|
break;
|
|
442
|
-
case
|
|
442
|
+
case 'label':
|
|
443
443
|
className += ` flex modern-input-label-truncate peer-focus:modern-input-peer-focus-label-size
|
|
444
444
|
${
|
|
445
445
|
isDisabled
|
|
446
|
-
?
|
|
447
|
-
:
|
|
446
|
+
? 'cursor-pointer'
|
|
447
|
+
: 'cursor-text peer-focus:cursor-pointer'
|
|
448
448
|
} ${
|
|
449
449
|
isDisabled && !checkIsEmptyField()
|
|
450
|
-
?
|
|
450
|
+
? 'disabled-input-label-bg'
|
|
451
451
|
: !isDisabled || !checkIsEmptyField()
|
|
452
|
-
?
|
|
453
|
-
:
|
|
452
|
+
? 'active-input-label-bg'
|
|
453
|
+
: ''
|
|
454
454
|
} absolute duration-300 transform -translate-y-4 top-2 z-1 origin-[0] px-0 peer-placeholder-shown:-translate-y-1/2 peer-placeholder-shown:top-1/2 peer-focus:top-2 peer-focus:-translate-y-4 start-[14px] rtl:peer-focus:translate-x-1/4 rtl:peer-focus:left-auto ${
|
|
455
455
|
isDisabled
|
|
456
|
-
?
|
|
457
|
-
:
|
|
456
|
+
? 'cursor-pointer'
|
|
457
|
+
: 'cursor-text peer-focus:cursor-pointer'
|
|
458
458
|
}
|
|
459
459
|
${
|
|
460
460
|
checkIsEmptyField()
|
|
461
|
-
?
|
|
462
|
-
:
|
|
461
|
+
? 'modern-input-label-size'
|
|
462
|
+
: 'modern-input-peer-focus-label-size'
|
|
463
463
|
}`;
|
|
464
464
|
if (errors && errors[name]) {
|
|
465
|
-
className +=
|
|
465
|
+
className += ' text-error-light ';
|
|
466
466
|
} else {
|
|
467
|
-
className +=
|
|
467
|
+
className += ' text-grey-dark peer-focus:text-blue-navy';
|
|
468
468
|
}
|
|
469
469
|
break;
|
|
470
|
-
case
|
|
471
|
-
className =
|
|
470
|
+
case 'message':
|
|
471
|
+
className = ' text-error-icon ';
|
|
472
472
|
break;
|
|
473
|
-
case
|
|
474
|
-
className +=
|
|
473
|
+
case 'adorement':
|
|
474
|
+
className += ' absolute right-0 adorement gap-1 flex items-center ';
|
|
475
475
|
break;
|
|
476
476
|
default:
|
|
477
477
|
break;
|
|
@@ -496,30 +496,30 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
496
496
|
// return 'bottom'
|
|
497
497
|
// }
|
|
498
498
|
const filteredData =
|
|
499
|
-
inputValue !==
|
|
500
|
-
inputValue !==
|
|
501
|
-
type !==
|
|
499
|
+
inputValue !== '*' &&
|
|
500
|
+
inputValue !== '' &&
|
|
501
|
+
type !== 'custom_select' &&
|
|
502
502
|
!noLocalFilter
|
|
503
503
|
? suggestions?.filter((item: valueProps) =>
|
|
504
504
|
checkIncludes(
|
|
505
505
|
item.name,
|
|
506
506
|
inputValue,
|
|
507
|
-
item.param1 ??
|
|
508
|
-
item.param2 ??
|
|
509
|
-
item.param3 ??
|
|
510
|
-
item.param4 ??
|
|
507
|
+
item.param1 ?? '',
|
|
508
|
+
item.param2 ?? '',
|
|
509
|
+
item.param3 ?? '',
|
|
510
|
+
item.param4 ?? ''
|
|
511
511
|
)
|
|
512
512
|
)
|
|
513
513
|
: suggestions;
|
|
514
514
|
|
|
515
515
|
const handleError = (data: any) => {
|
|
516
516
|
if (
|
|
517
|
-
getErrors(data[name]) ===
|
|
518
|
-
getErrors(data[name]) ===
|
|
517
|
+
getErrors(data[name]) === 'required' ||
|
|
518
|
+
getErrors(data[name]) === 'Required'
|
|
519
519
|
) {
|
|
520
520
|
return `${label ?? labelTitle} is ${getErrors(data[name])}`;
|
|
521
521
|
} else {
|
|
522
|
-
return getErrors(data[name]) ??
|
|
522
|
+
return getErrors(data[name]) ?? '';
|
|
523
523
|
}
|
|
524
524
|
};
|
|
525
525
|
|
|
@@ -575,7 +575,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
575
575
|
const atTop = selectedIndex === 0;
|
|
576
576
|
|
|
577
577
|
switch (e.key) {
|
|
578
|
-
case
|
|
578
|
+
case 'ArrowDown':
|
|
579
579
|
e.preventDefault();
|
|
580
580
|
if (itemRefs.current && scrollContainerRef.current) {
|
|
581
581
|
if (!atBottom) {
|
|
@@ -588,7 +588,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
588
588
|
setSelectedIndex((prev) => (prev + 1) % filteredData?.length);
|
|
589
589
|
break;
|
|
590
590
|
|
|
591
|
-
case
|
|
591
|
+
case 'ArrowUp':
|
|
592
592
|
e.preventDefault();
|
|
593
593
|
if (itemRefs.current && scrollContainerRef.current) {
|
|
594
594
|
if (!atTop) {
|
|
@@ -603,12 +603,12 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
603
603
|
);
|
|
604
604
|
break;
|
|
605
605
|
|
|
606
|
-
case
|
|
606
|
+
case 'Enter':
|
|
607
607
|
e.preventDefault();
|
|
608
608
|
handleSuggestionClick(filteredData[selectedIndex], selectedIndex);
|
|
609
609
|
break;
|
|
610
610
|
|
|
611
|
-
case
|
|
611
|
+
case 'Escape':
|
|
612
612
|
e.preventDefault();
|
|
613
613
|
setDropOpen(false);
|
|
614
614
|
break;
|
|
@@ -619,9 +619,9 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
619
619
|
};
|
|
620
620
|
|
|
621
621
|
if (filteredData?.length > 0 && !isLoading) {
|
|
622
|
-
window.addEventListener(
|
|
622
|
+
window.addEventListener('keydown', handleKeyDown);
|
|
623
623
|
return () => {
|
|
624
|
-
window.removeEventListener(
|
|
624
|
+
window.removeEventListener('keydown', handleKeyDown);
|
|
625
625
|
};
|
|
626
626
|
}
|
|
627
627
|
}, [
|
|
@@ -647,9 +647,9 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
647
647
|
<li
|
|
648
648
|
className={`${
|
|
649
649
|
value?.id === suggestion?.id
|
|
650
|
-
?
|
|
650
|
+
? 'bg-blue-navy text-white'
|
|
651
651
|
: `${
|
|
652
|
-
index === selectedIndex ?
|
|
652
|
+
index === selectedIndex ? 'is-selected' : ''
|
|
653
653
|
} hover:bg-table-hover`
|
|
654
654
|
} cursor-pointer p-1 text-xxs ps-3.5 pl-[10px] qbs-autocomplete-suggections-items`}
|
|
655
655
|
key={suggestion?.id}
|
|
@@ -708,7 +708,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
708
708
|
useEffect(() => {
|
|
709
709
|
const shouldShowClose =
|
|
710
710
|
value?.name &&
|
|
711
|
-
(value?.id || String(value?.id) ===
|
|
711
|
+
(value?.id || String(value?.id) === '0') &&
|
|
712
712
|
!disabled &&
|
|
713
713
|
!readOnly &&
|
|
714
714
|
isClose;
|
|
@@ -722,7 +722,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
722
722
|
if (inputRef.current) {
|
|
723
723
|
const { scrollWidth, clientWidth, value } = inputRef.current;
|
|
724
724
|
// Check for overflow only when there's content
|
|
725
|
-
if (value.trim() !==
|
|
725
|
+
if (value.trim() !== '') {
|
|
726
726
|
setShowTooltip(scrollWidth > clientWidth + 2);
|
|
727
727
|
} else {
|
|
728
728
|
setShowTooltip(false); // No tooltip for empty input
|
|
@@ -731,13 +731,13 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
731
731
|
};
|
|
732
732
|
|
|
733
733
|
if (inputRef.current) {
|
|
734
|
-
inputRef.current.addEventListener(
|
|
734
|
+
inputRef.current.addEventListener('input', checkOverflow);
|
|
735
735
|
checkOverflow(); // Initial check
|
|
736
736
|
}
|
|
737
737
|
|
|
738
738
|
return () => {
|
|
739
739
|
if (inputRef.current) {
|
|
740
|
-
inputRef.current.removeEventListener(
|
|
740
|
+
inputRef.current.removeEventListener('input', checkOverflow);
|
|
741
741
|
}
|
|
742
742
|
};
|
|
743
743
|
}, [inputValue]);
|
|
@@ -755,7 +755,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
755
755
|
id={
|
|
756
756
|
id ? `autocomplete-container-${id}` : `autocomplete-container-${name}`
|
|
757
757
|
}
|
|
758
|
-
className={` flex-grow ${fullWidth ?
|
|
758
|
+
className={` flex-grow ${fullWidth ? 'w-full' : 'w-auto'}`}
|
|
759
759
|
ref={dropdownref}
|
|
760
760
|
>
|
|
761
761
|
{label && !isModern && (
|
|
@@ -775,7 +775,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
775
775
|
)}
|
|
776
776
|
|
|
777
777
|
<div
|
|
778
|
-
className={`flex relative ${fullWidth ?
|
|
778
|
+
className={`flex relative ${fullWidth ? 'w-full' : 'w-auto'}`}
|
|
779
779
|
style={{ width: width }}
|
|
780
780
|
>
|
|
781
781
|
<div
|
|
@@ -785,8 +785,8 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
785
785
|
>
|
|
786
786
|
<input
|
|
787
787
|
type="text"
|
|
788
|
-
readOnly={readOnly ?? type ===
|
|
789
|
-
value={inputValue ? inputValue :
|
|
788
|
+
readOnly={readOnly ?? type === 'custom_select'}
|
|
789
|
+
value={inputValue ? inputValue : ''}
|
|
790
790
|
onBlur={handleClearInputValue}
|
|
791
791
|
autoComplete="off"
|
|
792
792
|
disabled={disabled}
|
|
@@ -809,18 +809,18 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
809
809
|
}
|
|
810
810
|
: {}),
|
|
811
811
|
}}
|
|
812
|
-
className={` ${generateClassName(
|
|
812
|
+
className={` ${generateClassName('input')}`}
|
|
813
813
|
onChange={handleChange}
|
|
814
814
|
placeholder={
|
|
815
|
-
type ===
|
|
815
|
+
type === 'auto_complete'
|
|
816
816
|
? placeholder && isCustomPlaceholder
|
|
817
817
|
? placeholder
|
|
818
|
-
:
|
|
819
|
-
: placeholder ??
|
|
818
|
+
: 'Type to search'
|
|
819
|
+
: placeholder ?? '--Select--'
|
|
820
820
|
}
|
|
821
821
|
onFocus={onInputFocus}
|
|
822
822
|
onClick={(e) => {
|
|
823
|
-
if (type ===
|
|
823
|
+
if (type === 'custom_select') {
|
|
824
824
|
setDropOpen(!dropOpen);
|
|
825
825
|
handleOpen(e);
|
|
826
826
|
} else {
|
|
@@ -833,20 +833,20 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
833
833
|
<label
|
|
834
834
|
htmlFor={id}
|
|
835
835
|
onClick={() => onLabelClick()}
|
|
836
|
-
className={generateClassName(
|
|
836
|
+
className={generateClassName('label')}
|
|
837
837
|
>
|
|
838
|
-
{label ? <span className="truncate">{label}</span> :
|
|
838
|
+
{label ? <span className="truncate">{label}</span> : ''}
|
|
839
839
|
{required ? <span className="text-error"> *</span> : <></>}
|
|
840
840
|
</label>
|
|
841
841
|
)}
|
|
842
842
|
</div>
|
|
843
|
-
<div className="flex items-center justify-center
|
|
843
|
+
<div className="flex items-center justify-center autocomplete-adorement-wrapper">
|
|
844
844
|
<div
|
|
845
845
|
ref={adorementRef}
|
|
846
846
|
className={`${generateClassName(
|
|
847
|
-
|
|
847
|
+
'adorement'
|
|
848
848
|
)} qbs-autocomplete-adorement mr-[1px] ${
|
|
849
|
-
isLoading ?
|
|
849
|
+
isLoading ? 'bg-white' : ''
|
|
850
850
|
}`}
|
|
851
851
|
>
|
|
852
852
|
{showClose && (
|
|
@@ -861,7 +861,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
861
861
|
</button>
|
|
862
862
|
)}
|
|
863
863
|
{isLoading && <Spinner />}
|
|
864
|
-
{(type !==
|
|
864
|
+
{(type !== 'auto_complete' || autoDropdown) &&
|
|
865
865
|
!disabled &&
|
|
866
866
|
!readOnly && (
|
|
867
867
|
<button
|
|
@@ -875,16 +875,25 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
875
875
|
ref={dropBtnRef}
|
|
876
876
|
>
|
|
877
877
|
{!dropOpen ? (
|
|
878
|
+
autoDropdown ? (
|
|
879
|
+
<AllDropArrow
|
|
880
|
+
type="down"
|
|
881
|
+
uniqueId="all-dropdow-arrow-icon"
|
|
882
|
+
className="all-dropdow-arrow-icon"
|
|
883
|
+
/>
|
|
884
|
+
) : (
|
|
885
|
+
<DropArrow uniqueDropArrowId="drop-arrow-icon" />
|
|
886
|
+
)
|
|
887
|
+
) : autoDropdown ? (
|
|
878
888
|
<AllDropArrow
|
|
879
|
-
type="
|
|
889
|
+
type="up"
|
|
880
890
|
uniqueId="all-dropdow-arrow-icon"
|
|
881
|
-
className=
|
|
891
|
+
className="all-dropdow-arrow-icon"
|
|
882
892
|
/>
|
|
883
893
|
) : (
|
|
884
|
-
<
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
className='all-dropdow-arrow-icon'
|
|
894
|
+
<DropArrow
|
|
895
|
+
className="rotate-180"
|
|
896
|
+
uniqueDropArrowId="drop-arrow-icon"
|
|
888
897
|
/>
|
|
889
898
|
)}
|
|
890
899
|
</button>
|
|
@@ -892,7 +901,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
|
|
|
892
901
|
{errors && errors[name] && (
|
|
893
902
|
<div
|
|
894
903
|
className={` text-error-label relative cursor-pointer ${generateClassName(
|
|
895
|
-
|
|
904
|
+
'message'
|
|
896
905
|
)}`}
|
|
897
906
|
onMouseEnter={() => setIsHovered(true)}
|
|
898
907
|
onMouseLeave={() => setIsHovered(false)}
|