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 "react";
2
- import { FieldErrors } from "react-hook-form";
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?: "custom_select" | "auto_complete" | "custom_search_select";
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 ? "" : _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];
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 === "string" &&
93
- typeof subString === "string"
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, "param1") &&
103
+ ((checkArrayContains(checkParams, 'param1') &&
104
104
  checkIncludesIfExists(param1, subString)) ||
105
- (checkArrayContains(checkParams, "param2") &&
105
+ (checkArrayContains(checkParams, 'param2') &&
106
106
  checkIncludesIfExists(param2, subString)) ||
107
- (checkArrayContains(checkParams, "param3") &&
107
+ (checkArrayContains(checkParams, 'param3') &&
108
108
  checkIncludesIfExists(param3, subString)) ||
109
- (checkArrayContains(checkParams, "param4") &&
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: "", from: 2 });
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: "", from: 1 });
125
- if (value.trim() === "" && type === "auto_complete") {
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 === "auto_complete") {
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 === "custom_select" || type === "custom_search_select") &&
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 === "custom_search_select" && data && (data === null || data === void 0 ? void 0 : data.length) > 0) {
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 === "custom_select" || type === "custom_search_select") &&
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("click", handleClickOutside);
257
+ document.addEventListener('click', handleClickOutside);
258
258
  return function () {
259
- document.removeEventListener("click", handleClickOutside);
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 === "custom_select" || type === "custom_search_select") &&
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 !== "custom_select")
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 !== "custom_select")
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 === "" || inputValue.trim() === "")) {
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("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");
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("scroll", handleScroll);
324
+ gridElement.addEventListener('scroll', handleScroll);
325
325
  });
326
- window.addEventListener("resize", getDropPosition);
326
+ window.addEventListener('resize', getDropPosition);
327
327
  getDropPosition();
328
328
  return function () {
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");
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("scroll", handleScroll);
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: "", from: 3 });
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 "input":
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
- ? "placeholder-transparent"
376
- : "focus:placeholder-grey-secondary placeholder-input-label", " focus:placeholder-grey-secondary");
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
- " border-[#FDA29B] focus:border-error-[#FDA29B] focus:ring-[#FDA29B] focus:ring-3 focus:outline-[#FDA29B] input-outline";
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
- " text-grey-dark border-input-light focus:border-blue-navy focus:outline-none focus:ring-0";
383
+ ' text-grey-dark border-input-light focus:border-blue-navy focus:outline-none focus:ring-0';
384
384
  }
385
385
  break;
386
- case "label":
386
+ case 'label':
387
387
  className += " flex modern-input-label-truncate peer-focus:modern-input-peer-focus-label-size \n ".concat(isDisabled
388
- ? "cursor-pointer"
389
- : "cursor-text peer-focus:cursor-pointer", " ").concat(isDisabled && !checkIsEmptyField()
390
- ? "disabled-input-label-bg"
388
+ ? 'cursor-pointer'
389
+ : 'cursor-text peer-focus:cursor-pointer', " ").concat(isDisabled && !checkIsEmptyField()
390
+ ? 'disabled-input-label-bg'
391
391
  : !isDisabled || !checkIsEmptyField()
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");
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 += " text-error-light ";
399
+ className += ' text-error-light ';
400
400
  }
401
401
  else {
402
- className += " text-grey-dark peer-focus:text-blue-navy";
402
+ className += ' text-grey-dark peer-focus:text-blue-navy';
403
403
  }
404
404
  break;
405
- case "message":
406
- className = " text-error-icon ";
405
+ case 'message':
406
+ className = ' text-error-icon ';
407
407
  break;
408
- case "adorement":
409
- className += " absolute right-0 adorement gap-1 flex items-center ";
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 !== "custom_select" &&
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 : "", (_b = item.param2) !== null && _b !== void 0 ? _b : "", (_c = item.param3) !== null && _c !== void 0 ? _c : "", (_d = item.param4) !== null && _d !== void 0 ? _d : "");
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]) === "required" ||
445
- getErrors(data[name]) === "Required") {
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 "ArrowDown":
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 "ArrowUp":
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 "Enter":
523
+ case 'Enter':
524
524
  e.preventDefault();
525
525
  handleSuggestionClick(filteredData[selectedIndex], selectedIndex);
526
526
  break;
527
- case "Escape":
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("keydown", handleKeyDown);
536
+ window.addEventListener('keydown', handleKeyDown);
537
537
  return function () {
538
- window.removeEventListener("keydown", handleKeyDown);
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
- ? "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 &&
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) === "0") &&
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("input", checkOverflow);
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("input", checkOverflow);
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 ? "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
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("input")), onChange: handleChange, placeholder: type === "auto_complete"
618
+ : {})), className: " ".concat(generateClassName('input')), onChange: handleChange, placeholder: type === 'auto_complete'
619
619
  ? placeholder && isCustomPlaceholder
620
620
  ? placeholder
621
- : "Type to search"
622
- : placeholder !== null && placeholder !== void 0 ? placeholder : "--Select--", onFocus: onInputFocus, onClick: function (e) {
623
- if (type === "custom_select") {
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("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 " }, { 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) &&
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: 'all-dropdow-arrow-icon' })) : ((0, jsx_runtime_1.jsx)(icons_1.AllDropArrow, { type: "up", uniqueId: "all-dropdow-arrow-icon", className: 'all-dropdow-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() }) }))] }))] }))] })));
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,6 +1,6 @@
1
1
  {
2
2
  "name": "react-core-ts",
3
- "version": "1.7.2",
3
+ "version": "1.7.4",
4
4
  "description": "React Components",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,12 +1,12 @@
1
- import React, { useCallback, useEffect, useRef, useState } from "react";
2
- import { FieldErrors } from "react-hook-form";
1
+ import React, { useCallback, useEffect, useRef, useState } from 'react';
2
+ import { FieldErrors } from 'react-hook-form';
3
3
 
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 } from "./utilities/icons";
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?: "custom_select" | "auto_complete" | "custom_search_select";
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 = "custom_select",
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 === "string" &&
129
- typeof subString === "string"
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, "param1") &&
144
+ ((checkArrayContains(checkParams, 'param1') &&
145
145
  checkIncludesIfExists(param1, subString)) ||
146
- (checkArrayContains(checkParams, "param2") &&
146
+ (checkArrayContains(checkParams, 'param2') &&
147
147
  checkIncludesIfExists(param2, subString)) ||
148
- (checkArrayContains(checkParams, "param3") &&
148
+ (checkArrayContains(checkParams, 'param3') &&
149
149
  checkIncludesIfExists(param3, subString)) ||
150
- (checkArrayContains(checkParams, "param4") &&
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: "", from: 2 });
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: "", from: 1 });
172
- if (value.trim() === "" && type === "auto_complete") {
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 === "auto_complete") {
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 === "custom_select" || type === "custom_search_select") &&
211
+ (type === 'custom_select' || type === 'custom_search_select') &&
212
212
  (!data || data?.length === 0)
213
213
  ) {
214
214
  handlePickSuggestions();
215
- } else if (type === "custom_search_select" && data && data?.length > 0) {
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 === "custom_select" || type === "custom_search_select") &&
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("click", handleClickOutside);
297
+ document.addEventListener('click', handleClickOutside);
298
298
  return () => {
299
- document.removeEventListener("click", handleClickOutside);
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 === "custom_select" || type === "custom_search_select") &&
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 !== "custom_select") setInputValue(suggestion.name);
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 !== "custom_select") setInputValue("");
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 === "" || inputValue.trim() === "")) {
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("scroll", handleScroll);
365
+ window.addEventListener('scroll', handleScroll);
366
366
 
367
- const mainElement = document.querySelector("main");
368
- mainElement?.addEventListener("scroll", handleScroll);
367
+ const mainElement = document.querySelector('main');
368
+ mainElement?.addEventListener('scroll', handleScroll);
369
369
 
370
370
  const gridElements = document.querySelectorAll(
371
- ".k-grid-content, .overflow-auto, .overflow-y-auto, .overflow-x-auto"
371
+ '.k-grid-content, .overflow-auto, .overflow-y-auto, .overflow-x-auto'
372
372
  );
373
373
  gridElements.forEach((gridElement: any) => {
374
- gridElement.addEventListener("scroll", handleScroll);
374
+ gridElement.addEventListener('scroll', handleScroll);
375
375
  });
376
376
 
377
- window.addEventListener("resize", getDropPosition);
377
+ window.addEventListener('resize', getDropPosition);
378
378
  getDropPosition();
379
379
  return () => {
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");
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("scroll", handleScroll);
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: "", from: 3 });
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: "input" | "label" | "message" | "adorement"
422
+ type: 'input' | 'label' | 'message' | 'adorement'
423
423
  ): string => {
424
424
  let className = propsClassName;
425
425
  switch (type) {
426
- case "input":
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
- ? "placeholder-transparent"
430
- : "focus:placeholder-grey-secondary placeholder-input-label"
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
- " border-[#FDA29B] focus:border-error-[#FDA29B] focus:ring-[#FDA29B] focus:ring-3 focus:outline-[#FDA29B] input-outline";
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
- " text-grey-dark border-input-light focus:border-blue-navy focus:outline-none focus:ring-0";
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 "label":
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
- ? "cursor-pointer"
447
- : "cursor-text peer-focus:cursor-pointer"
446
+ ? 'cursor-pointer'
447
+ : 'cursor-text peer-focus:cursor-pointer'
448
448
  } ${
449
449
  isDisabled && !checkIsEmptyField()
450
- ? "disabled-input-label-bg"
450
+ ? 'disabled-input-label-bg'
451
451
  : !isDisabled || !checkIsEmptyField()
452
- ? "active-input-label-bg"
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
- ? "cursor-pointer"
457
- : "cursor-text peer-focus:cursor-pointer"
456
+ ? 'cursor-pointer'
457
+ : 'cursor-text peer-focus:cursor-pointer'
458
458
  }
459
459
  ${
460
460
  checkIsEmptyField()
461
- ? "modern-input-label-size"
462
- : "modern-input-peer-focus-label-size"
461
+ ? 'modern-input-label-size'
462
+ : 'modern-input-peer-focus-label-size'
463
463
  }`;
464
464
  if (errors && errors[name]) {
465
- className += " text-error-light ";
465
+ className += ' text-error-light ';
466
466
  } else {
467
- className += " text-grey-dark peer-focus:text-blue-navy";
467
+ className += ' text-grey-dark peer-focus:text-blue-navy';
468
468
  }
469
469
  break;
470
- case "message":
471
- className = " text-error-icon ";
470
+ case 'message':
471
+ className = ' text-error-icon ';
472
472
  break;
473
- case "adorement":
474
- className += " absolute right-0 adorement gap-1 flex items-center ";
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 !== "custom_select" &&
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]) === "required" ||
518
- getErrors(data[name]) === "Required"
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 "ArrowDown":
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 "ArrowUp":
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 "Enter":
606
+ case 'Enter':
607
607
  e.preventDefault();
608
608
  handleSuggestionClick(filteredData[selectedIndex], selectedIndex);
609
609
  break;
610
610
 
611
- case "Escape":
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("keydown", handleKeyDown);
622
+ window.addEventListener('keydown', handleKeyDown);
623
623
  return () => {
624
- window.removeEventListener("keydown", handleKeyDown);
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
- ? "bg-blue-navy text-white"
650
+ ? 'bg-blue-navy text-white'
651
651
  : `${
652
- index === selectedIndex ? "is-selected" : ""
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) === "0") &&
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("input", checkOverflow);
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("input", checkOverflow);
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 ? "w-full" : "w-auto"}`}
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 ? "w-full" : "w-auto"}`}
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 === "custom_select"}
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("input")}`}
812
+ className={` ${generateClassName('input')}`}
813
813
  onChange={handleChange}
814
814
  placeholder={
815
- type === "auto_complete"
815
+ type === 'auto_complete'
816
816
  ? placeholder && isCustomPlaceholder
817
817
  ? placeholder
818
- : "Type to search"
819
- : placeholder ?? "--Select--"
818
+ : 'Type to search'
819
+ : placeholder ?? '--Select--'
820
820
  }
821
821
  onFocus={onInputFocus}
822
822
  onClick={(e) => {
823
- if (type === "custom_select") {
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("label")}
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
- "adorement"
847
+ 'adorement'
848
848
  )} qbs-autocomplete-adorement mr-[1px] ${
849
- isLoading ? "bg-white" : ""
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 !== "auto_complete" || autoDropdown) &&
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="down"
889
+ type="up"
880
890
  uniqueId="all-dropdow-arrow-icon"
881
- className='all-dropdow-arrow-icon'
891
+ className="all-dropdow-arrow-icon"
882
892
  />
883
893
  ) : (
884
- <AllDropArrow
885
- type="up"
886
- uniqueId="all-dropdow-arrow-icon"
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
- "message"
904
+ 'message'
896
905
  )}`}
897
906
  onMouseEnter={() => setIsHovered(true)}
898
907
  onMouseLeave={() => setIsHovered(false)}