react-core-ts 2.1.0 → 2.1.2

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.
@@ -129,11 +129,10 @@ var AutoComplete = (0, react_1.forwardRef)(function (_a, ref) {
129
129
  window.removeEventListener('resize', adjustDropdownPosition);
130
130
  };
131
131
  }, [dropOpen]);
132
- var _2 = (0, autosuggestions_1.useSuggestions)(getData, data, dropOpen, async, paginationEnabled, initialLoad, inputValue, isMultiple, setNextPage, selectedItems
133
- // nextBlock
134
- ), suggestions = _2.suggestions, isLoading = _2.isLoading, handlePickSuggestions = _2.handlePickSuggestions;
132
+ var _2 = (0, autosuggestions_1.useSuggestions)(getData, data, dropOpen, async, paginationEnabled, initialLoad, inputValue, isMultiple, setNextPage, selectedItems), suggestions = _2.suggestions, isLoading = _2.isLoading, handlePickSuggestions = _2.handlePickSuggestions;
135
133
  // Handling the selection of a suggestion
136
134
  var handleSuggestionClick = (0, react_1.useCallback)(function (suggestion) {
135
+ isSelectingRef.current = true;
137
136
  if (isMultiple) {
138
137
  setSelectedItems(function (prev) {
139
138
  var isAdded = prev.some(function (item) { return item[descId] === suggestion[descId]; });
@@ -188,8 +187,14 @@ var AutoComplete = (0, react_1.forwardRef)(function (_a, ref) {
188
187
  (0, react_1.useEffect)(function () {
189
188
  setInputValue(value !== null && value !== void 0 ? value : '');
190
189
  }, [value]);
190
+ var isSelectingRef = (0, react_1.useRef)(false);
191
191
  var selectExactMatchFromSuggestions = function () {
192
192
  var _a, _b;
193
+ // If user is clicking on dropdown, don't execute exact match logic
194
+ if (isSelectingRef.current) {
195
+ isSelectingRef.current = false;
196
+ return;
197
+ }
193
198
  if (!inputValue) {
194
199
  return;
195
200
  }
@@ -210,6 +215,7 @@ var AutoComplete = (0, react_1.forwardRef)(function (_a, ref) {
210
215
  else {
211
216
  // No exact match – notify parent with typed value
212
217
  onChange((_b = {}, _b[descId] = '', _b[desc] = inputValue, _b));
218
+ setInputValue('');
213
219
  }
214
220
  };
215
221
  var handleChange = function (e) {
@@ -307,11 +313,24 @@ var AutoComplete = (0, react_1.forwardRef)(function (_a, ref) {
307
313
  ? "".concat((_e = selectedItems[0]) === null || _e === void 0 ? void 0 : _e[desc].substring(0, 8), "...")
308
314
  : (_f = selectedItems[0]) === null || _f === void 0 ? void 0 : _f[desc] })), (0, jsx_runtime_1.jsx)("button", __assign({ onClick: function () { return handleRemoveSelectedItem(0); }, className: "remove-item-btn", "aria-label": "Remove ".concat((_g = selectedItems[0]) === null || _g === void 0 ? void 0 : _g[desc]) }, { children: "X" }))] }), selectedItems[0].id), (0, jsx_runtime_1.jsx)(tooltip_1.default, __assign({ title: tooltipContent }, { children: (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 1 && ((0, jsx_runtime_1.jsxs)("div", __assign({ className: "selected-item-more" }, { children: ["+", (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) - 1, " more"] }))) }))] })) })), (0, jsx_runtime_1.jsx)("input", { id: id, ref: inputRef, autoComplete: "off", type: "text", value: type === 'auto_suggestion'
309
315
  ? inputValue
310
- : searchValue || inputValue, onChange: handleChange, onBlur: function () {
311
- handleBlur();
312
- selectExactMatchFromSuggestions();
313
- }, onFocus: onFocus, onClick: function () { return handleOnClick(); }, className: generateClassName(), placeholder: (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 0 ? '' : placeholder !== null && placeholder !== void 0 ? placeholder : '', readOnly: readOnly || type === 'custom_select' || type == 'auto_suggestion', disabled: disabled, "data-testid": "custom-autocomplete" }), (0, jsx_runtime_1.jsxs)("div", __assign({ className: "qbs-autocomplete-close-icon" }, { children: [(inputValue || searchValue) && !disabled && !readOnly && ((0, jsx_runtime_1.jsx)("button", __assign({ onClick: handleClear, className: "icon-button", "aria-label": "clear" }, { children: (0, jsx_runtime_1.jsx)(icons_1.Close, {}) }))), (0, jsx_runtime_1.jsx)("button", __assign({ disabled: disabled || readOnly, type: "button", onClick: function () { return setDropOpen(!dropOpen); }, className: "icon-button", "aria-label": "toggle" }, { children: (0, jsx_runtime_1.jsx)(icons_1.DropArrow, {}) }))] })), dropOpen && ((0, jsx_runtime_1.jsxs)("ul", __assign({ ref: dropRef, className: "qbs-autocomplete-suggestions ".concat(dropdownPosition) }, { children: [type == 'auto_suggestion' && ((0, jsx_runtime_1.jsxs)("div", __assign({ style: { position: 'relative' }, className: "react-core-ts-search-container" }, { children: [(0, jsx_runtime_1.jsx)("span", __assign({ className: "dropdown-search-icon" }, { children: (0, jsx_runtime_1.jsx)(icons_1.Search, {}) })), (0, jsx_runtime_1.jsx)("input", { className: "dropdown-search-input", onChange: handleSuggestionChange, value: searchValue, autoComplete: "off", placeholder: "Search" })] }))), (0, jsx_runtime_1.jsxs)("div", __assign({ className: "qbs-autocomplete-suggestions-sub" }, { children: [(filteredData === null || filteredData === void 0 ? void 0 : filteredData.length) > 0 ? (filteredData.map(function (suggestion, idx) { return ((0, jsx_runtime_1.jsxs)("div", __assign({ className: "qbs-autocomplete-listitem-container ".concat((isMultiple || singleSelect) &&
314
- 'qbs-autocomplete-checkbox-container', " ").concat(isSelected(suggestion, selected) ? 'is-selected' : '') }, { children: [(isMultiple || singleSelect) && ((0, jsx_runtime_1.jsxs)("div", __assign({ className: "qbs-autocomplete-checkbox" }, { children: [(0, jsx_runtime_1.jsx)("input", { onChange: function (e) { return handleMultiSelect(e, suggestion); }, type: "checkbox", autoComplete: "off", checked: isSelected(suggestion, selected), id: "qbs-checkbox-".concat(idx.toString()) }), (0, jsx_runtime_1.jsx)("label", __assign({ htmlFor: "qbs-checkbox-".concat(idx.toString()) }, { children: (0, jsx_runtime_1.jsx)("svg", __assign({ width: "8", height: "6", viewBox: "0 0 8 6", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, { children: (0, jsx_runtime_1.jsx)("path", { d: "M0 3.21739L2.89883 6L8 1.06994L6.89494 0L2.89883 3.86768L1.09728 2.14745L0 3.21739Z", fill: "white" }) })) }))] }))), (0, jsx_runtime_1.jsx)("li", __assign({ className: "qbs-autocomplete-suggestions-item ".concat(isSelected(suggestion, selected) ? 'is-selected' : ''), onClick: function () { return handleSuggestionClick(suggestion); }, "data-testid": suggestion[desc] }, { children: suggestion[desc] }), idx)] }), idx.toString())); })) : ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: isLoading ? ((0, jsx_runtime_1.jsx)("div", __assign({ style: { display: 'flex', justifyContent: 'center' } }, { children: (0, jsx_runtime_1.jsx)("span", { children: (0, jsx_runtime_1.jsx)(icons_1.Spinner, {}) }) }))) : ((0, jsx_runtime_1.jsx)("li", __assign({ className: "qbs-autocomplete-notfound", onClick: handleBlur }, { children: notDataMessage !== null && notDataMessage !== void 0 ? notDataMessage : 'No Results Found' }))) })), paginationEnabled &&
316
+ : searchValue || inputValue, onChange: handleChange, onBlur: function (e) {
317
+ // Delay to allow click events on dropdown to process first
318
+ setTimeout(function () {
319
+ // Check if focus moved to dropdown or if user is selecting
320
+ var relatedTarget = e.relatedTarget;
321
+ if (dropdownRef.current &&
322
+ relatedTarget &&
323
+ dropdownRef.current.contains(relatedTarget)) {
324
+ return; // Focus moved to dropdown, don't execute exact match
325
+ }
326
+ handleBlur();
327
+ selectExactMatchFromSuggestions();
328
+ }, 200);
329
+ }, onFocus: onFocus, onClick: function () { return handleOnClick(); }, className: generateClassName(), placeholder: (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 0 ? '' : (placeholder !== null && placeholder !== void 0 ? placeholder : ''), readOnly: readOnly || type === 'custom_select' || type == 'auto_suggestion', disabled: disabled, "data-testid": "custom-autocomplete" }), (0, jsx_runtime_1.jsxs)("div", __assign({ className: "qbs-autocomplete-close-icon" }, { children: [(inputValue || searchValue) && !disabled && !readOnly && ((0, jsx_runtime_1.jsx)("button", __assign({ onClick: handleClear, className: "icon-button", "aria-label": "clear" }, { children: (0, jsx_runtime_1.jsx)(icons_1.Close, {}) }))), (0, jsx_runtime_1.jsx)("button", __assign({ disabled: disabled || readOnly, type: "button", onClick: function () { return setDropOpen(!dropOpen); }, className: "icon-button", "aria-label": "toggle" }, { children: (0, jsx_runtime_1.jsx)(icons_1.DropArrow, {}) }))] })), dropOpen && ((0, jsx_runtime_1.jsxs)("ul", __assign({ ref: dropRef, className: "qbs-autocomplete-suggestions ".concat(dropdownPosition) }, { children: [type == 'auto_suggestion' && ((0, jsx_runtime_1.jsxs)("div", __assign({ style: { position: 'relative' }, className: "react-core-ts-search-container" }, { children: [(0, jsx_runtime_1.jsx)("span", __assign({ className: "dropdown-search-icon" }, { children: (0, jsx_runtime_1.jsx)(icons_1.Search, {}) })), (0, jsx_runtime_1.jsx)("input", { className: "dropdown-search-input", onChange: handleSuggestionChange, value: searchValue, autoComplete: "off", placeholder: "Search" })] }))), (0, jsx_runtime_1.jsxs)("div", __assign({ className: "qbs-autocomplete-suggestions-sub" }, { children: [(filteredData === null || filteredData === void 0 ? void 0 : filteredData.length) > 0 ? (filteredData.map(function (suggestion, idx) { return ((0, jsx_runtime_1.jsxs)("div", __assign({ className: "qbs-autocomplete-listitem-container ".concat((isMultiple || singleSelect) &&
330
+ 'qbs-autocomplete-checkbox-container', " ").concat(isSelected(suggestion, selected) ? 'is-selected' : '') }, { children: [(isMultiple || singleSelect) && ((0, jsx_runtime_1.jsxs)("div", __assign({ className: "qbs-autocomplete-checkbox" }, { children: [(0, jsx_runtime_1.jsx)("input", { onChange: function (e) { return handleMultiSelect(e, suggestion); }, type: "checkbox", autoComplete: "off", checked: isSelected(suggestion, selected), id: "qbs-checkbox-".concat(idx.toString()) }), (0, jsx_runtime_1.jsx)("label", __assign({ htmlFor: "qbs-checkbox-".concat(idx.toString()) }, { children: (0, jsx_runtime_1.jsx)("svg", __assign({ width: "8", height: "6", viewBox: "0 0 8 6", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, { children: (0, jsx_runtime_1.jsx)("path", { d: "M0 3.21739L2.89883 6L8 1.06994L6.89494 0L2.89883 3.86768L1.09728 2.14745L0 3.21739Z", fill: "white" }) })) }))] }))), (0, jsx_runtime_1.jsx)("li", __assign({ className: "qbs-autocomplete-suggestions-item ".concat(isSelected(suggestion, selected) ? 'is-selected' : ''), onMouseDown: function (e) {
331
+ e.preventDefault(); // Prevent input blur before click
332
+ isSelectingRef.current = true;
333
+ }, onClick: function () { return handleSuggestionClick(suggestion); }, "data-testid": suggestion[desc] }, { children: suggestion[desc] }), idx)] }), idx.toString())); })) : ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: isLoading ? ((0, jsx_runtime_1.jsx)("div", __assign({ style: { display: 'flex', justifyContent: 'center' } }, { children: (0, jsx_runtime_1.jsx)("span", { children: (0, jsx_runtime_1.jsx)(icons_1.Spinner, {}) }) }))) : ((0, jsx_runtime_1.jsx)("li", __assign({ className: "qbs-autocomplete-notfound", onClick: handleBlur }, { children: notDataMessage !== null && notDataMessage !== void 0 ? notDataMessage : 'No Results Found' }))) })), paginationEnabled &&
315
334
  nextBlock !== 0 &&
316
335
  nextBlock !== undefined &&
317
336
  (filteredData === null || filteredData === void 0 ? void 0 : filteredData.length) > 0 && ((0, jsx_runtime_1.jsx)("div", __assign({ className: "loadMoreSection", onClick: function () { return handleLoadMore(); } }, { children: (0, jsx_runtime_1.jsx)("p", __assign({ style: { margin: 2 } }, { children: "Load More" })) })))] }))] })))] })), errors && ((0, jsx_runtime_1.jsx)("div", __assign({ className: "text-error text-error-label mt-[1px]", "data-testid": "autocomplete-error" }, { children: errors.message })))] })));
@@ -1 +1 @@
1
- {"version":3,"file":"AutoComplete.js","sourceRoot":"","sources":["../src/AutoComplete.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AutoComplete.js","sourceRoot":"","sources":["../src/AutoComplete.tsx"],"names":[],"mappings":"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"}
@@ -78,6 +78,7 @@ var ModernAutoComplete = function (_a) {
78
78
  var _0 = (0, react_1.useState)(0), selectedIndex = _0[0], setSelectedIndex = _0[1];
79
79
  var itemRefs = (0, react_1.useRef)([]);
80
80
  var scrollContainerRef = (0, react_1.useRef)(null);
81
+ var isSelectingRef = (0, react_1.useRef)(false);
81
82
  var _1 = (0, react_1.useState)({
82
83
  top: 0,
83
84
  left: 0,
@@ -286,11 +287,16 @@ var ModernAutoComplete = function (_a) {
286
287
  setIsDisabled(disabled);
287
288
  }, [disabled]);
288
289
  var handleSuggestionClick = function (suggestion, index) {
290
+ isSelectingRef.current = true;
289
291
  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 } : {})));
290
292
  if (type !== 'custom_select')
291
293
  setInputValue(suggestion.name);
292
294
  setDropOpen(false);
293
295
  setSelectedIndex(index);
296
+ // Reset flag after a short delay to allow blur handler to check it
297
+ setTimeout(function () {
298
+ isSelectingRef.current = false;
299
+ }, 100);
294
300
  };
295
301
  var handleOpen = function (e) {
296
302
  if (!suggestions || (suggestions === null || suggestions === void 0 ? void 0 : suggestions.length) === 0) {
@@ -422,6 +428,11 @@ var ModernAutoComplete = function (_a) {
422
428
  // return 'bottom'
423
429
  // }
424
430
  var selectExactMatchFromSuggestions = function () {
431
+ // If user is clicking on dropdown, don't execute exact match logic
432
+ if (isSelectingRef.current) {
433
+ isSelectingRef.current = false;
434
+ return;
435
+ }
425
436
  if (!inputValue) {
426
437
  return;
427
438
  }
@@ -444,6 +455,7 @@ var ModernAutoComplete = function (_a) {
444
455
  else {
445
456
  // No exact match – notify parent with typed value
446
457
  onChange({ id: undefined, name: inputValue, from: 4 });
458
+ setInputValue('');
447
459
  }
448
460
  };
449
461
  var filteredData = inputValue !== '*' &&
@@ -537,7 +549,17 @@ var ModernAutoComplete = function (_a) {
537
549
  break;
538
550
  case 'Enter':
539
551
  e.preventDefault();
540
- handleSuggestionClick(filteredData[selectedIndex], selectedIndex);
552
+ if (filteredData[selectedIndex]) {
553
+ handleSuggestionClick(filteredData[selectedIndex], selectedIndex);
554
+ }
555
+ break;
556
+ case 'Tab':
557
+ // Tab should select highlighted item if dropdown is open
558
+ if (filteredData[selectedIndex]) {
559
+ isSelectingRef.current = true;
560
+ handleSuggestionClick(filteredData[selectedIndex], selectedIndex);
561
+ // Don't prevent default - allow Tab to move focus
562
+ }
541
563
  break;
542
564
  case 'Escape':
543
565
  e.preventDefault();
@@ -564,7 +586,10 @@ var ModernAutoComplete = function (_a) {
564
586
  var setDropDown = function () {
565
587
  return (((filteredData === null || filteredData === void 0 ? void 0 : filteredData.length) > 0 || showNoResults) && ((0, jsx_runtime_1.jsx)("div", __assign({ className: "autocomplete-suggections absolute bg-white shadow-gray-300 shadow-md border border-grey-light z-50 mt-9", style: dropPosition }, { children: (0, jsx_runtime_1.jsx)("ul", __assign({ className: "h-auto max-h-40 overflow-auto w-full py-1.5", 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)
566
588
  ? 'bg-blue-navy text-white'
567
- : "".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 }), labelCode && (suggestion === null || suggestion === void 0 ? void 0 : suggestion[labelCode]) && ((0, jsx_runtime_1.jsx)("span", __assign({ className: "label-code" }, { children: suggestion === null || suggestion === void 0 ? void 0 : suggestion[labelCode] }))), 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 &&
589
+ : "".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, onMouseDown: function (e) {
590
+ e.preventDefault(); // Prevent input blur before click
591
+ isSelectingRef.current = true;
592
+ }, 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 }), labelCode && (suggestion === null || suggestion === void 0 ? void 0 : suggestion[labelCode]) && ((0, jsx_runtime_1.jsx)("span", __assign({ className: "label-code" }, { children: suggestion === null || suggestion === void 0 ? void 0 : suggestion[labelCode] }))), 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 &&
568
593
  !isLoading &&
569
594
  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" })))) })) }))));
570
595
  };
@@ -624,9 +649,22 @@ var ModernAutoComplete = function (_a) {
624
649
  var handleMouseLeave = function () {
625
650
  setTooltipIsHovered(false);
626
651
  };
627
- 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: function () {
628
- handleClearInputValue();
629
- selectExactMatchFromSuggestions();
652
+ 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: function (e) {
653
+ // Check immediately if user is selecting (Tab or click)
654
+ var wasSelecting = isSelectingRef.current;
655
+ // Delay to allow click events on dropdown to process first
656
+ setTimeout(function () {
657
+ // Check if focus moved to dropdown or if user is selecting
658
+ var relatedTarget = e.relatedTarget;
659
+ if (wasSelecting ||
660
+ (dropdownref.current &&
661
+ relatedTarget &&
662
+ dropdownref.current.contains(relatedTarget))) {
663
+ return; // User selected an item or focus moved to dropdown, don't execute exact match
664
+ }
665
+ handleClearInputValue();
666
+ selectExactMatchFromSuggestions();
667
+ }, 200);
630
668
  }, 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
631
669
  ? {
632
670
  borderRight: getBorderRight(),
@@ -1 +1 @@
1
- {"version":3,"file":"ReactAutoComplete.js","sourceRoot":"","sources":["../src/ReactAutoComplete.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ReactAutoComplete.js","sourceRoot":"","sources":["../src/ReactAutoComplete.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAAwE;AAGxE,yEAAmD;AACnD,wEAAkD;AAClD,+DAAyC;AACzC,iDAAgD;AAChD,uDAA6D;AAC7D,2CAA8C;AAgD9C,IAAM,kBAAkB,GAAuC,UAAC,EAiC/D;;QAhCC,KAAK,WAAA,EACL,QAAQ,cAAA,EAER,OAAO,aAAA,EACP,IAAI,UAAA,EACJ,MAAM,YAAA,EACN,gBAAgB,EAAhB,QAAQ,mBAAG,KAAK,KAAA,EAChB,SAAS,eAAA,EACT,IAAI,UAAA,EACJ,iBAAc,EAAd,SAAS,mBAAG,EAAE,KAAA,EACd,iBAAc,EAAd,SAAS,mBAAG,EAAE,KAAA,EACd,SAAS,eAAA,EACT,WAAW,iBAAA,EACX,EAAE,QAAA,EACS,cAAc,eAAA,EACzB,YAAsB,EAAtB,IAAI,mBAAG,eAAe,KAAA,EACtB,QAAQ,cAAA,EACR,gBAAgB,EAAhB,QAAQ,mBAAG,KAAK,KAAA,EAChB,KAAK,WAAA,EACL,kBAAkB,EAAlB,UAAU,mBAAG,KAAK,KAAA,EAClB,kBAAkB,EAAlB,UAAU,mBAAG,KAAK,KAAA,EAClB,eAAc,EAAd,OAAO,mBAAG,IAAI,KAAA,EACd,qBAAqB,EAArB,aAAa,mBAAG,KAAK,KAAA,EACrB,oBAAoB,EAApB,YAAY,mBAAG,KAAK,KAAA,EACpB,2BAA2B,EAA3B,mBAAmB,mBAAG,KAAK,KAAA,EAC3B,WAAW,iBAAA,EACX,KAAK,WAAA,EACL,cAAc,oBAAA,EACd,UAAU,gBAAA,EACV,UAAU,gBAAA,EACV,gBAAe,EAAf,QAAQ,mBAAG,IAAI,KAAA,EACf,YAAW,EAAX,IAAI,mBAAG,IAAI,KAAA;IAEL,IAAA,KAA8B,IAAA,gBAAQ,EAAM,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,mCAAI,EAAE,CAAC,EAA7D,UAAU,QAAA,EAAE,aAAa,QAAoC,CAAC;IAC/D,IAAA,KAA4B,IAAA,gBAAQ,EAAU,KAAK,CAAC,EAAnD,SAAS,QAAA,EAAE,YAAY,QAA4B,CAAC;IACrD,IAAA,KAA4B,IAAA,gBAAQ,EAAU,KAAK,CAAC,EAAnD,SAAS,QAAA,EAAE,YAAY,QAA4B,CAAC;IACrD,IAAA,KAA0B,IAAA,gBAAQ,EAAU,KAAK,CAAC,EAAjD,QAAQ,QAAA,EAAE,WAAW,QAA4B,CAAC;IAEnD,IAAA,KAA8B,IAAA,gBAAQ,EAAU,QAAQ,CAAC,EAAxD,UAAU,QAAA,EAAE,aAAa,QAA+B,CAAC;IAC1D,IAAA,KAA4B,IAAA,gBAAQ,EAAC,KAAK,CAAC,EAA1C,SAAS,QAAA,EAAE,YAAY,QAAmB,CAAC;IAC5C,IAAA,KAAgC,IAAA,gBAAQ,EAAC,KAAK,CAAC,EAA9C,WAAW,QAAA,EAAE,cAAc,QAAmB,CAAC;IAChD,IAAA,KAA0C,IAAA,gBAAQ,EAAC,KAAK,CAAC,EAAxD,gBAAgB,QAAA,EAAE,mBAAmB,QAAmB,CAAC;IAC1D,IAAA,KAAgC,IAAA,gBAAQ,EAAM,EAAE,CAAC,EAAhD,WAAW,QAAA,EAAE,cAAc,QAAqB,CAAC;IACxD,IAAM,QAAQ,GAAG,IAAA,cAAM,EAAmB,IAAI,CAAC,CAAC;IAChD,IAAM,YAAY,GAAG,IAAA,cAAM,EAAiB,IAAI,CAAC,CAAC;IAClD,IAAM,WAAW,GAAG,IAAA,cAAM,EAAiB,IAAI,CAAC,CAAC;IACjD,IAAM,UAAU,GAAG,IAAA,cAAM,EAAoB,IAAI,CAAC,CAAC;IACnD,IAAM,QAAQ,GAAG,IAAA,cAAM,EAAS,CAAC,CAAC,CAAC,CAAC,mDAAmD;IACjF,IAAA,KAAoC,IAAA,gBAAQ,EAAC,CAAC,CAAC,EAA9C,aAAa,QAAA,EAAE,gBAAgB,QAAe,CAAC;IACtD,IAAM,QAAQ,GAAG,IAAA,cAAM,EAA2B,EAAE,CAAC,CAAC;IACtD,IAAM,kBAAkB,GAAG,IAAA,cAAM,EAA0B,IAAI,CAAC,CAAC;IACjE,IAAM,cAAc,GAAG,IAAA,cAAM,EAAC,KAAK,CAAC,CAAC;IAC/B,IAAA,KAAkC,IAAA,gBAAQ,EAAM;QACpD,GAAG,EAAE,CAAC;QACN,IAAI,EAAE,CAAC;QACP,MAAM,EAAE,CAAC;QACT,KAAK,EAAE,CAAC;KACT,CAAC,EALK,YAAY,QAAA,EAAE,eAAe,QAKlC,CAAC;IACH,IAAM,aAAa,GAAG,UACpB,UAAkB,EAClB,SAAiB,EACjB,MAAwB,EACxB,MAAwB,EACxB,MAAwB,EACxB,MAAwB;QAExB,IAAM,qBAAqB,GAAG,UAC5B,UAA4B,EAC5B,SAAkB;YAElB,OAAO,SAAS;gBACd,UAAU;gBACV,OAAO,UAAU,KAAK,QAAQ;gBAC9B,OAAO,SAAS,KAAK,QAAQ;gBAC7B,CAAC,CAAC,UAAU;qBACP,QAAQ,EAAE;qBACV,WAAW,EAAE;qBACb,UAAU,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,CAAC;gBACnD,CAAC,CAAC,KAAK,CAAC;QACZ,CAAC,CAAC;QACF,IAAM,kBAAkB,GAAG,UACzB,QAA8B,EAC9B,KAAa,YACD,OAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,CAAC,KAAK,CAAC,mCAAI,KAAK,CAAA,EAAA,CAAC;QAEjD,OAAO,CACL,qBAAqB,CAAC,UAAU,EAAE,SAAS,CAAC;YAC5C,CAAC,CAAC,CAAC,WAAW;gBACZ,CAAC,CAAC,kBAAkB,CAAC,WAAW,EAAE,QAAQ,CAAC;oBACzC,qBAAqB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;oBACzC,CAAC,kBAAkB,CAAC,WAAW,EAAE,QAAQ,CAAC;wBACxC,qBAAqB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;oBAC3C,CAAC,kBAAkB,CAAC,WAAW,EAAE,QAAQ,CAAC;wBACxC,qBAAqB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;oBAC3C,CAAC,kBAAkB,CAAC,WAAW,EAAE,QAAQ,CAAC;wBACxC,qBAAqB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAClD,CAAC;IACJ,CAAC,CAAC;IAEF,IAAM,SAAS,GAAG;QAChB,QAAQ,IAAI,EAAE;YACZ,KAAK,IAAI;gBACP,OAAO,YAAY,CAAC;YACtB;gBACE,OAAO,GAAG,CAAC;SACd;IACH,CAAC,CAAC;IAEF,IAAM,YAAY,GAAG,UAAC,KAA0C;QACtD,IAAA,KAAK,GAAK,KAAK,CAAC,MAAM,MAAjB,CAAkB;QAC/B,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC;QAErB,aAAa,CAAC,KAAK,CAAC,CAAC;QACrB,eAAe,CAAC,KAAK,CAAC,CAAC;QACvB,IAAI,CAAC,KAAK,EAAE;YACV,aAAa,CAAC,EAAE,CAAC,CAAC;YAClB,QAAQ,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;SAChD;IACH,CAAC,CAAC;IAEF,IAAM,eAAe,GAAG,IAAA,mBAAW,EACjC,IAAA,mBAAQ,EACN,UAAC,KAAa;QACZ,WAAW,CAAC,IAAI,CAAC,CAAC;QAClB,QAAQ,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QAC/C,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,IAAI,KAAK,eAAe,EAAE;YACnD,cAAc,CAAC,EAAE,CAAC,CAAC;YACnB,IAAI,UAAU,EAAE;gBACd,cAAc,CAAC,GAAG,CAAC,CAAC;aACrB;iBAAM;gBACL,WAAW,CAAC,KAAK,CAAC,CAAC;aACpB;SACF;aAAM;YACL,cAAc,CAAC,KAAK,CAAC,CAAC;SACvB;QACD,UAAU,CAAC;YACT,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC;QACvB,CAAC,EAAE,GAAG,CAAC,CAAC;IACV,CAAC,EACD,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CACxB,EACD,EAAE,CACH,CAAC;IACF,IAAM,cAAc,GAAG,UAAC,KAAc;QACpC,IAAI,IAAI,KAAK,eAAe,EAAE;YAC5B,IAAI,YAAY,EAAE;gBAChB,cAAc,EAAE,CAAC;gBACjB,IAAM,cAAY,GAChB,KAAK,IAAI,KAAK,KAAK,GAAG;oBACpB,CAAC,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC,UAAC,IAAI;wBAChB,OAAA,aAAa,CACX,IAAI,CAAC,IAAI,EACT,KAAK,EACL,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,MAAM,CACZ;oBAND,CAMC,CACF;oBACH,CAAC,CAAC,IAAI,CAAC;gBACX,cAAc,CAAC,cAAY,CAAC,CAAC;aAC9B;;gBAAM,qBAAqB,CAAC,KAAK,CAAC,CAAC;SACrC;aAAM,IACL,CAAC,IAAI,KAAK,eAAe,IAAI,IAAI,KAAK,sBAAsB,CAAC;YAC7D,CAAC,CAAC,IAAI,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,MAAK,CAAC,CAAC,EAC7B;YACA,qBAAqB,EAAE,CAAC;SACzB;aAAM,IAAI,IAAI,KAAK,sBAAsB,IAAI,IAAI,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,IAAG,CAAC,EAAE;YACtE,IAAM,cAAY,GAChB,KAAK,IAAI,KAAK,KAAK,GAAG;gBACpB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAC,IAAI;oBACf,OAAA,aAAa,CACX,IAAI,CAAC,IAAI,EACT,KAAK,EACL,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,MAAM,CACZ;gBAND,CAMC,CACF;gBACH,CAAC,CAAC,IAAI,CAAC;YACX,cAAc,CAAC,cAAY,CAAC,CAAC;SAC9B;IACH,CAAC,CAAC;IACF,IAAM,qBAAqB,GAAG,UAAO,KAAc;;;;;yBAC7C,OAAO,EAAP,wBAAO;oBACT,YAAY,CAAC,IAAI,CAAC,CAAC;;;;oBAEU,qBAAM,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAG,KAAK,CAAC,CAAA,EAAA;;oBAA3C,kBAAkB,GAAG,SAAsB;oBACjD,cAAc,CAAC,kBAAkB,CAAC,CAAC;oBACnC,YAAY,CAAC,KAAK,CAAC,CAAC;oBACpB,UAAU,CAAC;wBACT,IAAI,IAAI,KAAK,eAAe,EAAE;4BAC5B,WAAW,CAAC,IAAI,CAAC,CAAC;yBACnB;oBACH,CAAC,EAAE,GAAG,CAAC,CAAC;;;;oBAER,YAAY,CAAC,KAAK,CAAC,CAAC;;;;;SAGzB,CAAC;IAEF,IAAM,YAAY,GAAG;;QACnB,IAAI,CAAC,UAAU,EAAE;YACf,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,0CAAE,KAAK,EAAE,CAAC;YAC3B,IAAI,UAAU,IAAI,UAAU,KAAK,EAAE,EAAE;gBACnC,eAAe,CAAC,GAAG,CAAC,CAAC;aACtB;iBAAM,IACL,CAAC,IAAI,KAAK,eAAe,IAAI,IAAI,KAAK,sBAAsB,CAAC;gBAC7D,IAAI;gBACJ,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,IAAG,CAAC,EAChB;gBACA,cAAc,EAAE,CAAC;gBACjB,WAAW,CAAC,IAAI,CAAC,CAAC;aACnB;SACF;IACH,CAAC,CAAC;IACF,IAAM,kBAAkB,GAAG,UAAC,KAAiB;QAC3C,IACE,WAAW,CAAC,OAAO;YACnB,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAc,CAAC,EACnD;YACA,WAAW,CAAC,KAAK,CAAC,CAAC;SACpB;IACH,CAAC,CAAC;IACF,IAAM,iBAAiB,GAAG;;QACxB,IAAI,UAAU,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;;YACrC,OAAO,CAAC,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,GAAG,MAAM,mCAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IACvE,CAAC,CAAC;IACF,IAAM,cAAc,GAAG;;;;;yBACjB,CAAC,IAAI,EAAL,wBAAK;oBACP,IAAI,GAAG,EAAE,CAAC;yBACN,OAAO,EAAP,wBAAO;;;;oBAEP,YAAY,CAAC,IAAI,CAAC,CAAC;oBACnB,qBAAqB,CAAC,GAAG,CAAC,CAAC;oBACA,qBAAM,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAG,GAAG,CAAC,CAAA,EAAA;;oBAAzC,kBAAkB,GAAG,SAAoB;oBAC/C,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,OAAO,CAAC,UAAC,OAAY;wBACvC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,CAAC,OAAO,CAAC,CAAC;oBACtB,CAAC,CAAC,CAAC;oBACH,YAAY,CAAC,KAAK,CAAC,CAAC;;;;oBAEpB,YAAY,CAAC,KAAK,CAAC,CAAC;;;;;SAI3B,CAAC;IACF,IAAA,iBAAS,EAAC;QACR,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;QACvD,OAAO;YACL,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;QAC5D,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAA,iBAAS,EAAC;QACR,IAAI,SAAS,EAAE;YACb,YAAY,EAAE,CAAC;SAChB;IACH,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAChB,IAAM,YAAY,GAAG;QACnB,IAAI,CAAC,UAAU,EAAE;YACf,IAAI,UAAU,IAAI,UAAU,KAAK,EAAE,EAAE;gBACnC,eAAe,CAAC,GAAG,CAAC,CAAC;aACtB;iBAAM,IACL,CAAC,IAAI,KAAK,eAAe,IAAI,IAAI,KAAK,sBAAsB,CAAC;gBAC7D,IAAI;gBACJ,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,IAAG,CAAC,EAChB;gBACA,cAAc,EAAE,CAAC;gBACjB,4FAA4F;aAC7F;SACF;IACH,CAAC,CAAC;IACF,IAAA,iBAAS,EAAC;QACR,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IACf,IAAM,qBAAqB,GAAG,UAAC,UAAsB,EAAE,KAAa;QAClE,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC;QAC9B,QAAQ,gCACH,UAAU,KACb,EAAE,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,EAAE,EAClB,IAAI,EAAE,UAAU,CAAC,IAAI,KAClB,CAAC,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,EAAC,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAC1D,CAAC;QACH,IAAI,IAAI,KAAK,eAAe;YAAE,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC7D,WAAW,CAAC,KAAK,CAAC,CAAC;QACnB,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACxB,mEAAmE;QACnE,UAAU,CAAC;YACT,cAAc,CAAC,OAAO,GAAG,KAAK,CAAC;QACjC,CAAC,EAAE,GAAG,CAAC,CAAC;IACV,CAAC,CAAC;IACF,IAAM,UAAU,GAAG,UAAC,CAAM;QACxB,IAAI,CAAC,WAAW,IAAI,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,MAAK,CAAC,EAAE;YAC7C,cAAc,EAAE,CAAC;YACjB,OAAO;SACR;QACD,IAAI,CAAC,SAAS,EAAE;YACd,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC;YACvB,IAAI,IAAI,KAAK,eAAe;gBAAE,aAAa,CAAC,EAAE,CAAC,CAAC;SACjD;IACH,CAAC,CAAC;IAEF,IAAM,YAAY,GAAG;QACnB,WAAW,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC,CAAC;IAEF,IAAA,iBAAS,EAAC;QACR,IAAI,CAAC,UAAU,EAAE;YACf,gBAAgB,CAAC,CAAC,CAAC,CAAC;YACpB,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAEhD,IAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YACnD,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,gBAAgB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAEtD,IAAM,YAAY,GAAG,QAAQ,CAAC,gBAAgB,CAC5C,qEAAqE,CACtE,CAAC;YACF,YAAY,CAAC,OAAO,CAAC,UAAC,WAAgB;gBACpC,WAAW,CAAC,gBAAgB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YACvD,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;YACnD,eAAe,EAAE,CAAC;YAClB,OAAO;gBACL,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;gBACnD,IAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;gBACnD,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;gBACzD,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;gBACnD,IAAM,YAAY,GAAG,QAAQ,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;gBAClE,YAAY,CAAC,OAAO,CAAC,UAAC,WAAgB;oBACpC,WAAW,CAAC,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;gBAC1D,CAAC,CAAC,CAAC;YACL,CAAC,CAAC;SACH;IACH,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,IAAM,WAAW,GAAG;QAClB,WAAW,CAAC,KAAK,CAAC,CAAC;QACnB,aAAa,CAAC,EAAE,CAAC,CAAC;QAClB,QAAQ,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QAC/C,YAAY,EAAE,CAAC;IACjB,CAAC,CAAC;IAEF,IAAA,iBAAS,EAAC;;QACR,aAAa,CAAC,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,mCAAI,EAAE,CAAC,CAAC;IACnC,CAAC,EAAE,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC,CAAC,CAAC;IAElB,IAAA,iBAAS,EAAC;QACR,cAAc,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,IAAM,SAAS,GAAG,UAAC,GAAQ;;QACzB,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,GAAG,CAAC,OAAO,EAAE;YACf,MAAM,GAAG,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,CAAC;SACvB;aAAM,IAAI,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,EAAE,0CAAE,OAAO,EAAE;YAC3B,MAAM,GAAG,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,EAAE,0CAAE,OAAO,CAAC;SAC3B;aAAM,IAAI,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,0CAAE,OAAO,EAAE;YAC7B,MAAM,GAAG,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,0CAAE,OAAO,CAAC;SAC7B;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IACF,IAAM,iBAAiB,GAAG,UACxB,IAAiD;QAEjD,IAAI,SAAS,GAAG,cAAc,CAAC;QAC/B,QAAQ,IAAI,EAAE;YACZ,KAAK,OAAO;gBACV,SAAS,IAAI,2NACX,KAAK,IAAI,QAAQ;oBACf,CAAC,CAAC,yBAAyB;oBAC3B,CAAC,CAAC,0DAA0D,sCAC7B,CAAC;gBAEpC,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE;oBAC1B,SAAS;wBACP,wHAAwH,CAAC;iBAC5H;qBAAM;oBACL,SAAS;wBACP,6FAA6F,CAAC;iBACjG;gBAED,SAAS,IAAI,SAAS,EAAE,CAAC;gBAEzB,MAAM;YACR,KAAK,OAAO;gBACV,SAAS,IAAI,uGAET,UAAU;oBACR,CAAC,CAAC,gBAAgB;oBAClB,CAAC,CAAC,uCAAuC,cAE7C,UAAU,IAAI,CAAC,iBAAiB,EAAE;oBAChC,CAAC,CAAC,yBAAyB;oBAC3B,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,iBAAiB,EAAE;wBACrC,CAAC,CAAC,uBAAuB;wBACzB,CAAC,CAAC,EAAE,mRAEN,UAAU;oBACR,CAAC,CAAC,gBAAgB;oBAClB,CAAC,CAAC,uCAAuC,0BAGxC,iBAAiB,EAAE;oBACjB,CAAC,CAAC,yBAAyB;oBAC3B,CAAC,CAAC,oCAAoC,CACxC,CAAC;gBACN,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE;oBAC1B,SAAS,IAAI,oBAAoB,CAAC;iBACnC;qBAAM;oBACL,SAAS,IAAI,2CAA2C,CAAC;iBAC1D;gBACD,MAAM;YACR,KAAK,SAAS;gBACZ,SAAS,GAAG,mBAAmB,CAAC;gBAChC,MAAM;YACR,KAAK,WAAW;gBACd,SAAS,IAAI,uDAAuD,CAAC;gBACrE,MAAM;YACR;gBACE,MAAM;SACT;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC;IACF,IAAM,WAAW,GAAG;QAClB,UAAU,CAAC;YACT,WAAW,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC,EAAE,GAAG,CAAC,CAAC;IACV,CAAC,CAAC;IACF,IAAM,qBAAqB,GAAG;QAC5B,mCAAmC;IACrC,CAAC,CAAC;IACF,IAAM,aAAa,GAAG;QACpB,IAAM,UAAU,GAAG,YAAY,CAAC,OAAO;YACrC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW;YAClC,CAAC,CAAC,CAAC,CAAC;QACN,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;IACF,8BAA8B;IAC9B,oBAAoB;IACpB,IAAI;IACJ,IAAM,+BAA+B,GAAG;QACtC,mEAAmE;QACnE,IAAI,cAAc,CAAC,OAAO,EAAE;YAC1B,cAAc,CAAC,OAAO,GAAG,KAAK,CAAC;YAC/B,OAAO;SACR;QAED,IAAI,CAAC,UAAU,EAAE;YACf,OAAO;SACR;QAED,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9C,iEAAiE;YACjE,QAAQ,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YACvD,OAAO;SACR;QAED,IAAM,eAAe,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACnE,IAAM,UAAU,GAAG,YAAY,CAAC,SAAS,CAAC,UAAC,IAAgB;;YACzD,IAAM,IAAI,GAAG,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,0CAAE,QAAQ,GAAG,IAAI,GAAG,WAAW,EAAE,CAAC;YACzD,IAAM,KAAK,GAAG,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,0CAAE,QAAQ,GAAG,IAAI,GAAG,WAAW,EAAE,CAAC;YAC3D,OAAO,IAAI,KAAK,eAAe,IAAI,KAAK,KAAK,eAAe,CAAC;QAC/D,CAAC,CAAC,CAAC;QAEH,IAAI,UAAU,IAAI,CAAC,EAAE;YACnB,IAAM,KAAK,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;YACvC,qBAAqB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;SAC1C;aAAM;YACL,kDAAkD;YAClD,QAAQ,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YACvD,aAAa,CAAC,EAAE,CAAC,CAAC;SACnB;IACH,CAAC,CAAC;IACF,IAAM,YAAY,GAChB,UAAU,KAAK,GAAG;QAClB,UAAU,KAAK,EAAE;QACjB,IAAI,KAAK,eAAe;QACxB,CAAC,aAAa;QACZ,CAAC,CAAC,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,CAAC,UAAC,IAAgB;;YACnC,OAAA,aAAa,CACX,IAAI,CAAC,IAAI,EACT,UAAU,EACV,MAAA,IAAI,CAAC,MAAM,mCAAI,EAAE,EACjB,MAAA,IAAI,CAAC,MAAM,mCAAI,EAAE,EACjB,MAAA,IAAI,CAAC,MAAM,mCAAI,EAAE,EACjB,MAAA,IAAI,CAAC,MAAM,mCAAI,EAAE,CAClB,CAAA;SAAA,CACF;QACH,CAAC,CAAC,WAAW,CAAC;IAElB,IAAM,WAAW,GAAG,UAAC,IAAS;;QAC5B,IACE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,UAAU;YACpC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,UAAU,EACpC;YACA,OAAO,UAAG,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,UAAU,iBAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC;SAC7D;aAAM;YACL,OAAO,MAAA,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,mCAAI,EAAE,CAAC;SACpC;IACH,CAAC,CAAC;IAEF,IAAM,eAAe,GAAG;QACtB,IAAI,CAAC,UAAU,KAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,CAAA,EAAE;YACpC,IAAM,cAAc,GAAG,GAAG,CAAC,CAAC,+DAA+D;YAE3F,IAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC;YAC3D,IAAM,UAAU,GACd,MAAM,CAAC,WAAW,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;YAC3D,IAAM,UAAU,GAAG,SAAS,CAAC,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC;YAElD,IAAI,KAAG,CAAC;YACR,IAAI,MAAM,SAAA,CAAC;YACX,IAAI,UAAU,GAAG,cAAc,IAAI,UAAU,GAAG,cAAc,EAAE;gBAC9D,MAAM,GAAG,UAAU,GAAG,EAAE,CAAC;aAC1B;iBAAM;gBACL,KAAG,GAAG,SAAS,CAAC,GAAG,GAAG,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;aAC7D;YACD,eAAe,CAAC;gBACd,IAAI,EAAE,SAAS,CAAC,IAAI,GAAG,MAAM,CAAC,OAAO;gBACrC,GAAG,OAAA;gBACH,MAAM,QAAA;gBACN,KAAK,EAAE,SAAS,CAAC,KAAK;aACvB,CAAC,CAAC;SACJ;QAED,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC;IAEI,IAAA,KAAoC,IAAA,gBAAQ,EAAC,KAAK,CAAC,EAAlD,aAAa,QAAA,EAAE,gBAAgB,QAAmB,CAAC;IAE1D,IAAA,iBAAS,EAAC;QACR,IACE,UAAU;YACV,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,MAAK,CAAC;YAC1B,CAAC,SAAS;YACV,QAAQ,CAAC,OAAO,KAAK,CAAC,EACtB;YACA,IAAM,OAAK,GAAG,UAAU,CAAC;gBACvB,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACzB,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,wBAAwB;YACjC,OAAO,cAAM,OAAA,YAAY,CAAC,OAAK,CAAC,EAAnB,CAAmB,CAAC;SAClC;aAAM;YACL,gBAAgB,CAAC,KAAK,CAAC,CAAC;SACzB;QAED,6BAA6B;QAC7B,IAAM,aAAa,GAAG,UAAC,CAAgB;YACrC,IAAI,CAAC,QAAQ;gBAAE,OAAO;YAEtB,IAAM,SAAS,GACb,CAAC,CAAC,GAAG,KAAK,WAAW;gBACnB,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC,GAAG,YAAY,CAAC,MAAM;gBAC3C,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,SAAS;oBACrB,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC,MAAM;oBACjE,CAAC,CAAC,aAAa,CAAC;YAEpB,QAAQ,CAAC,CAAC,GAAG,EAAE;gBACb,KAAK,WAAW,CAAC;gBACjB,KAAK,SAAS;oBACZ,CAAC,CAAC,cAAc,EAAE,CAAC;oBAEnB,qBAAqB;oBACrB,gBAAgB,CAAC,SAAS,CAAC,CAAC;oBAE5B,uCAAuC;oBACvC,qBAAqB,CAAC;wBACpB,IAAM,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;wBACvC,IAAM,SAAS,GAAG,kBAAkB,CAAC,OAAO,CAAC;wBAE7C,IAAI,EAAE,IAAI,SAAS,EAAE;4BACnB,IAAM,KAAK,GAAG,EAAE,CAAC,SAAS,CAAC;4BAC3B,IAAM,QAAQ,GAAG,KAAK,GAAG,EAAE,CAAC,YAAY,CAAC;4BAEzC,IAAM,YAAY,GAAG,SAAS,CAAC,SAAS,CAAC;4BACzC,IAAM,eAAe,GAAG,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC;4BAE9D,IAAI,QAAQ,GAAG,eAAe,EAAE;gCAC9B,SAAS,CAAC,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC,YAAY,CAAC;6BACzD;iCAAM,IAAI,KAAK,GAAG,YAAY,EAAE;gCAC/B,SAAS,CAAC,SAAS,GAAG,KAAK,CAAC;6BAC7B;yBACF;oBACH,CAAC,CAAC,CAAC;oBACH,MAAM;gBAER,KAAK,OAAO;oBACV,CAAC,CAAC,cAAc,EAAE,CAAC;oBACnB,IAAI,YAAY,CAAC,aAAa,CAAC,EAAE;wBAC/B,qBAAqB,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC,CAAC;qBACnE;oBACD,MAAM;gBAER,KAAK,KAAK;oBACR,yDAAyD;oBACzD,IAAI,YAAY,CAAC,aAAa,CAAC,EAAE;wBAC/B,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC;wBAC9B,qBAAqB,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC,CAAC;wBAClE,kDAAkD;qBACnD;oBACD,MAAM;gBAER,KAAK,QAAQ;oBACX,CAAC,CAAC,cAAc,EAAE,CAAC;oBACnB,WAAW,CAAC,KAAK,CAAC,CAAC;oBACnB,MAAM;gBAER;oBACE,MAAM;aACT;QACH,CAAC,CAAC;QAEF,IAAI,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,IAAG,CAAC,IAAI,CAAC,SAAS,EAAE;YAC1C,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;YAClD,OAAO;gBACL,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;YACvD,CAAC,CAAC;SACH;IACH,CAAC,EAAE;QACD,UAAU;QACV,YAAY;QACZ,SAAS;QACT,QAAQ,CAAC,OAAO;QAChB,aAAa;QACb,QAAQ;KACT,CAAC,CAAC;IAEH,IAAM,WAAW,GAAG;QAClB,OAAO,CACL,CAAC,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,IAAG,CAAC,IAAI,aAAa,CAAC,IAAI,CAC7C,yCACE,SAAS,EAAC,yGAAyG,EACnH,KAAK,EAAE,YAAY,gBAEnB,wCACE,SAAS,EAAC,6CAA6C,EACvD,GAAG,EAAE,kBAAkB,gBAEtB,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,IAAG,CAAC,CAAC,CAAC,CAAC,CAC1B,2DACG,YAAY,CAAC,GAAG,CAAC,UAAC,UAAe,EAAE,KAAa,IAAK,OAAA,CACpD,yCACE,SAAS,EAAE,UACT,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,EAAE,OAAK,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,EAAE,CAAA;4BAC1B,CAAC,CAAC,yBAAyB;4BAC3B,CAAC,CAAC,UACE,KAAK,KAAK,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,0BACvB,uFACuD,iBAEvE,UAAU,CAAC,IAAI,EAC5B,WAAW,EAAE,UAAC,CAAC;4BACb,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,kCAAkC;4BACtD,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC;wBAChC,CAAC,EACD,OAAO,EAAE,cAAM,OAAA,qBAAqB,CAAC,UAAU,EAAE,KAAK,CAAC,EAAxC,CAAwC,EACvD,QAAQ,EAAE,KAAK,EACf,GAAG,EAAE,UAAC,EAAE,IAAK,OAAA,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAA9B,CAA8B,iBAE3C,2CACG,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,EAAC,CAAC,CAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,GACnD,EACN,SAAS,KAAI,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAG,SAAS,CAAC,CAAA,IAAI,CACvC,0CAAM,SAAS,EAAC,YAAY,gBACzB,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAG,SAAS,CAAC,IACnB,CACR,EAEA,SAAS,KAAI,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAG,SAAS,CAAC,CAAA,IAAI,CACvC,0CAAM,SAAS,EAAC,YAAY,gBACzB,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAG,SAAS,CAAC,IACnB,CACR,MAvBI,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,EAAE,CAwBhB,CACN,EAlCqD,CAkCrD,CAAC,GACD,CACJ,CAAC,CAAC,CAAC,CACF,aAAa;oBACb,CAAC,SAAS;oBACV,QAAQ,CAAC,OAAO,KAAK,CAAC,IAAI,CACxB,wCACE,SAAS,EAAE,0CAA0C,EACrD,OAAO,EAAE,WAAW,sCAGjB,CACN,CACF,IACE,IACD,CACP,CACF,CAAC;IACJ,CAAC,CAAC;IACF,IAAM,cAAc,GAAG;QACrB,IAAI,UAAU,EAAE;YACd,IACE,CAAC,cAAc,IAAI,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;gBACnD,cAAc,EACd;gBACA,OAAO,CAAC,CAAC;aACV;iBAAM,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE;gBACjC,OAAO,SAAS,CAAC;aAClB;SACF;QACD,OAAO,CAAC,CAAC;IACX,CAAC,CAAC;IAEF,IAAA,iBAAS,EAAC;QACR,IAAA,gCAAkB,EAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAC3C,WAAW,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,IAAA,iBAAS,EAAC;QACR,IAAM,eAAe,GACnB,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI;YACX,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,EAAE,KAAI,MAAM,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,EAAE,CAAC,KAAK,GAAG,CAAC;YACxC,CAAC,QAAQ;YACT,CAAC,QAAQ;YACT,OAAO,CAAC;QACV,IAAI,SAAS,KAAK,eAAe,EAAE;YACjC,YAAY,CAAC,eAAe,CAAC,CAAC;SAC/B;IACH,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;IAChC,IAAA,iBAAS,EAAC;QACR,mCAAmC;QACnC,IAAM,aAAa,GAAG;YACpB,IAAI,QAAQ,CAAC,OAAO,EAAE;gBACd,IAAA,KAAsC,QAAQ,CAAC,OAAO,EAApD,WAAW,iBAAA,EAAE,WAAW,iBAAA,EAAE,OAAK,WAAqB,CAAC;gBAC7D,+CAA+C;gBAC/C,IAAI,OAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;oBACvB,cAAc,CAAC,WAAW,GAAG,WAAW,GAAG,CAAC,CAAC,CAAC;iBAC/C;qBAAM;oBACL,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,6BAA6B;iBACrD;aACF;QACH,CAAC,CAAC;QAEF,IAAI,QAAQ,CAAC,OAAO,EAAE;YACpB,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;YAC1D,aAAa,EAAE,CAAC,CAAC,gBAAgB;SAClC;QAED,OAAO;YACL,IAAI,QAAQ,CAAC,OAAO,EAAE;gBACpB,QAAQ,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;aAC9D;QACH,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,IAAM,gBAAgB,GAAG;QACvB,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC,CAAC;IAEF,IAAM,gBAAgB,GAAG;QACvB,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC,CAAC;IAEF,OAAO,CACL,0CACE,EAAE,EACA,EAAE,CAAC,CAAC,CAAC,iCAA0B,EAAE,CAAE,CAAC,CAAC,CAAC,iCAA0B,IAAI,CAAE,EAExE,SAAS,EAAE,sBAAe,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAE,EAC3D,GAAG,EAAE,WAAW,iBAEf,KAAK,IAAI,CAAC,QAAQ,IAAI,CACrB,yCAAK,SAAS,EAAC,MAAM,gBACnB,4CAAO,SAAS,EAAE,qBAAqB,iBACpC,KAAK,EACL,QAAQ,CAAC,CAAC,CAAC,0CAAM,SAAS,EAAC,YAAY,wBAAU,CAAC,CAAC,CAAC,kDAAK,KACpD,IACJ,CACP,EACD,0CAAK,SAAS,EAAC,mBAAmB,iBAC/B,SAAS,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CACtC,2CAAM,SAAS,EAAC,SAAS,iBAAE,WAAW,CAAC,MAAM,CAAC,UAAS,CACxD,EACA,gBAAgB,IAAI,WAAW,IAAI,CAAC,QAAQ,IAAI,UAAU,IAAI,CAC7D,yCAAK,SAAS,EAAE,cAAc,gBAAG,UAAU,IAAO,CACnD,EAED,0CACE,SAAS,EAAE,wBAAiB,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAE,EAC7D,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,iBAEvB,0CACE,SAAS,EAAC,iBAAiB,EAC3B,YAAY,EAAE,cAAM,OAAA,gBAAgB,EAAE,EAAlB,CAAkB,EACtC,YAAY,EAAE,cAAM,OAAA,gBAAgB,EAAE,EAAlB,CAAkB,iBAEtC,kCACE,IAAI,EAAC,MAAM,EACX,QAAQ,EAAE,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,IAAI,KAAK,eAAe,EAC9C,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EACnC,MAAM,EAAE,UAAC,CAAC;4CACR,wDAAwD;4CACxD,IAAM,YAAY,GAAG,cAAc,CAAC,OAAO,CAAC;4CAE5C,2DAA2D;4CAC3D,UAAU,CAAC;gDACT,2DAA2D;gDAC3D,IAAM,aAAa,GAAG,CAAC,CAAC,aAAqB,CAAC;gDAC9C,IACE,YAAY;oDACZ,CAAC,WAAW,CAAC,OAAO;wDAClB,aAAa;wDACb,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,EAC9C;oDACA,OAAO,CAAC,8EAA8E;iDACvF;gDACD,qBAAqB,EAAE,CAAC;gDACxB,+BAA+B,EAAE,CAAC;4CACpC,CAAC,EAAE,GAAG,CAAC,CAAC;wCACV,CAAC,EACD,YAAY,EAAC,KAAK,EAClB,QAAQ,EAAE,QAAQ,EAClB,GAAG,EAAE,QAAQ,EACb,EAAE,EACA,EAAE,CAAC,CAAC,CAAC,8BAAuB,EAAE,CAAE,CAAC,CAAC,CAAC,8BAAuB,IAAI,CAAE,iBAEtD,qBAAqB,sBAIf,EAAE,EACpB,KAAK,aACH,YAAY,EAAE,aAAa,EAAE,IAC1B,CAAC,UAAU;4CACZ,CAAC,CAAC;gDACE,WAAW,EAAE,cAAc,EAAE;gDAC7B,oBAAoB,EAAE,CAAC;gDACvB,uBAAuB,EAAE,CAAC;6CAC3B;4CACH,CAAC,CAAC,EAAE,CAAC,GAET,SAAS,EAAE,WAAI,iBAAiB,CAAC,OAAO,CAAC,CAAE,EAC3C,QAAQ,EAAE,YAAY,EACtB,WAAW,EACT,IAAI,KAAK,eAAe;4CACtB,CAAC,CAAC,WAAW,IAAI,mBAAmB;gDAClC,CAAC,CAAC,WAAW;gDACb,CAAC,CAAC,gBAAgB;4CACpB,CAAC,CAAC,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,YAAY,EAEjC,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,UAAC,CAAC;4CACT,IAAI,IAAI,KAAK,eAAe,EAAE;gDAC5B,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC;gDACvB,UAAU,CAAC,CAAC,CAAC,CAAC;6CACf;iDAAM;gDACL,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC;6CACxB;wCACH,CAAC,GACD,EACD,QAAQ,IAAI,CACX,4CACE,OAAO,EAAE,EAAE,EACX,OAAO,EAAE,cAAM,OAAA,YAAY,EAAE,EAAd,CAAc,EAC7B,SAAS,EAAE,iBAAiB,CAAC,OAAO,CAAC,iBAEpC,KAAK,CAAC,CAAC,CAAC,0CAAM,SAAS,EAAC,UAAU,gBAAE,KAAK,IAAQ,CAAC,CAAC,CAAC,EAAE,EACtD,QAAQ,CAAC,CAAC,CAAC,0CAAM,SAAS,EAAC,YAAY,wBAAU,CAAC,CAAC,CAAC,kDAAK,KACpD,CACT,KACG,EACN,yCAAK,SAAS,EAAC,qCAAqC,gBAClD,0CACE,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,UAAG,iBAAiB,CAC7B,WAAW,CACZ,6EACC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAC3B,iBAED,SAAS,IAAI,CACZ,4CACE,OAAO,EAAE,cAAM,OAAA,WAAW,EAAE,EAAb,CAAa,EAC5B,SAAS,EAAC,sCAAsC,gBACrC,OAAO,EAClB,IAAI,EAAC,QAAQ,EACb,EAAE,EAAC,yBAAyB,gBAE5B,uBAAC,qBAAW,IAAC,IAAI,EAAC,OAAO,EAAC,IAAI,EAAC,SAAS,GAAG,IACpC,CACV,EACA,SAAS,IAAI,uBAAC,iBAAO,KAAG,EACxB,IAAI,KAAK,eAAe,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,IAAI,CACrD,4CACE,QAAQ,EAAE,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,QAAQ,EAC9B,OAAO,EAAE,UAAC,CAAC,IAAK,OAAA,UAAU,CAAC,CAAC,CAAC,EAAb,CAAa,EAC7B,MAAM,EAAE,WAAW,EACnB,SAAS,EAAC,iDAAiD,iBAC/C,YAAY,EACxB,IAAI,EAAC,QAAQ,EACb,EAAE,EAAC,wBAAwB,EAC3B,GAAG,EAAE,UAAU,gBAEd,CAAC,QAAQ,CAAC,CAAC,CAAC,CACX,uBAAC,iBAAS,IAAC,iBAAiB,EAAC,iBAAiB,GAAG,CAClD,CAAC,CAAC,CAAC,CACF,uBAAC,iBAAS,IACR,SAAS,EAAC,YAAY,EACtB,iBAAiB,EAAC,iBAAiB,GACnC,CACH,IACM,CACV,EACA,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CACzB,yCACE,SAAS,EAAE,oDAA6C,iBAAiB,CACvE,SAAS,CACV,CAAE,EACH,YAAY,EAAE,cAAM,OAAA,YAAY,CAAC,IAAI,CAAC,EAAlB,CAAkB,EACtC,YAAY,EAAE,cAAM,OAAA,YAAY,CAAC,KAAK,CAAC,EAAnB,CAAmB,gBAEvC,uBAAC,qBAAW,IAAC,IAAI,EAAC,OAAO,EAAC,IAAI,EAAC,QAAQ,GAAG,IACtC,CACP,KACG,IACF,EACL,QAAQ,IAAI,CAAC,CAAC,SAAS,IAAI,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,IAAG,CAAC,CAAC,IAAI,CACvD,2DAAG,UAAU,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,uBAAC,gBAAM,cAAE,WAAW,EAAE,GAAU,GAAI,CACrE,KACG,KACF,KACF,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,kBAAkB,CAAC"}
@@ -79,6 +79,7 @@ var ModernAutoCompleteDropdown = function (_a) {
79
79
  var itemRefs = (0, react_1.useRef)([]);
80
80
  var scrollContainerRef = (0, react_1.useRef)(null);
81
81
  var _2 = (0, react_1.useState)(false), refetchData = _2[0], setRefetchData = _2[1];
82
+ var isSelectingRef = (0, react_1.useRef)(false);
82
83
  var _3 = (0, react_1.useState)({
83
84
  top: 0,
84
85
  left: 0,
@@ -290,11 +291,16 @@ var ModernAutoCompleteDropdown = function (_a) {
290
291
  setIsDisabled(disabled);
291
292
  }, [disabled]);
292
293
  var handleSuggestionClick = function (suggestion, index) {
294
+ isSelectingRef.current = true;
293
295
  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 } : {})));
294
296
  if (type !== 'custom_select')
295
297
  setInputValue(suggestion.name);
296
298
  setDropOpen(false);
297
299
  setSelectedIndex(index);
300
+ // Reset flag after a short delay to allow blur handler to check it
301
+ setTimeout(function () {
302
+ isSelectingRef.current = false;
303
+ }, 100);
298
304
  };
299
305
  var handleOpen = function (e) {
300
306
  if (!suggestions || (suggestions === null || suggestions === void 0 ? void 0 : suggestions.length) === 0)
@@ -441,6 +447,11 @@ var ModernAutoCompleteDropdown = function (_a) {
441
447
  // return 'bottom'
442
448
  // }
443
449
  var selectExactMatchFromSuggestions = function () {
450
+ // If user is clicking on dropdown, don't execute exact match logic
451
+ if (isSelectingRef.current) {
452
+ isSelectingRef.current = false;
453
+ return;
454
+ }
444
455
  if (!inputValue) {
445
456
  return;
446
457
  }
@@ -463,6 +474,7 @@ var ModernAutoCompleteDropdown = function (_a) {
463
474
  else {
464
475
  // No exact match – notify parent with typed value
465
476
  onChange({ id: undefined, name: inputValue, from: 4 });
477
+ setInputValue('');
466
478
  }
467
479
  };
468
480
  var filteredData = inputValue !== '*' &&
@@ -556,7 +568,17 @@ var ModernAutoCompleteDropdown = function (_a) {
556
568
  break;
557
569
  case 'Enter':
558
570
  e.preventDefault();
559
- handleSuggestionClick(filteredData[selectedIndex], selectedIndex);
571
+ if (filteredData[selectedIndex]) {
572
+ handleSuggestionClick(filteredData[selectedIndex], selectedIndex);
573
+ }
574
+ break;
575
+ case 'Tab':
576
+ // Tab should select highlighted item if dropdown is open
577
+ if (filteredData[selectedIndex]) {
578
+ isSelectingRef.current = true;
579
+ handleSuggestionClick(filteredData[selectedIndex], selectedIndex);
580
+ // Don't prevent default - allow Tab to move focus
581
+ }
560
582
  break;
561
583
  case 'Escape':
562
584
  e.preventDefault();
@@ -583,7 +605,10 @@ var ModernAutoCompleteDropdown = function (_a) {
583
605
  var setDropDown = function () {
584
606
  return (((filteredData === null || filteredData === void 0 ? void 0 : filteredData.length) > 0 || showNoResults) && ((0, jsx_runtime_1.jsx)("div", __assign({ style: dropPosition, className: "autocomplete-suggections absolute bg-white shadow-gray-300 shadow-md border border-grey-light z-50 mt-9" }, { children: (0, jsx_runtime_1.jsx)("ul", __assign({ className: "overflow-auto h-auto max-h-40 w-full py-1.5", 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)
585
607
  ? 'bg-blue-navy text-white'
586
- : "".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 }), labelCode && (suggestion === null || suggestion === void 0 ? void 0 : suggestion[labelCode]) && ((0, jsx_runtime_1.jsx)("span", __assign({ className: "label-code" }, { children: suggestion === null || suggestion === void 0 ? void 0 : suggestion[labelCode] }))), 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 &&
608
+ : "".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, onMouseDown: function (e) {
609
+ e.preventDefault(); // Prevent input blur before click
610
+ isSelectingRef.current = true;
611
+ }, 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 }), labelCode && (suggestion === null || suggestion === void 0 ? void 0 : suggestion[labelCode]) && ((0, jsx_runtime_1.jsx)("span", __assign({ className: "label-code" }, { children: suggestion === null || suggestion === void 0 ? void 0 : suggestion[labelCode] }))), 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 &&
587
612
  !isLoading &&
588
613
  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" })))) })) }))));
589
614
  };
@@ -643,9 +668,22 @@ var ModernAutoCompleteDropdown = function (_a) {
643
668
  var handleMouseLeave = function () {
644
669
  setTooltipIsHovered(false);
645
670
  };
646
- 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: function () {
647
- handleClearInputValue();
648
- selectExactMatchFromSuggestions();
671
+ 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: function (e) {
672
+ // Check immediately if user is selecting (Tab or click)
673
+ var wasSelecting = isSelectingRef.current;
674
+ // Delay to allow click events on dropdown to process first
675
+ setTimeout(function () {
676
+ // Check if focus moved to dropdown or if user is selecting
677
+ var relatedTarget = e.relatedTarget;
678
+ if (wasSelecting ||
679
+ (dropdownref.current &&
680
+ relatedTarget &&
681
+ dropdownref.current.contains(relatedTarget))) {
682
+ return; // User selected an item or focus moved to dropdown, don't execute exact match
683
+ }
684
+ handleClearInputValue();
685
+ selectExactMatchFromSuggestions();
686
+ }, 200);
649
687
  }, 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
650
688
  ? {
651
689
  borderRight: getBorderRight(),
@@ -656,7 +694,7 @@ var ModernAutoCompleteDropdown = function (_a) {
656
694
  ? placeholder && isCustomPlaceholder
657
695
  ? placeholder
658
696
  : 'Type to search'
659
- : placeholder !== null && placeholder !== void 0 ? placeholder : '--Select--', onFocus: onInputFocus, onClick: function (e) {
697
+ : (placeholder !== null && placeholder !== void 0 ? placeholder : '--Select--'), onFocus: onInputFocus, onClick: function (e) {
660
698
  if (type === 'custom_select') {
661
699
  setDropOpen(!dropOpen);
662
700
  handleOpen(e);
@@ -1 +1 @@
1
- {"version":3,"file":"ReactAutoCompleteDropdown.js","sourceRoot":"","sources":["../src/ReactAutoCompleteDropdown.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAAwE;AAGxE,yEAAmD;AACnD,wEAAkD;AAClD,+DAAyC;AACzC,iDAAgD;AAChD,uDAA6D;AAC7D,2CAA4D;AAiD5D,IAAM,0BAA0B,GAAuC,UAAC,EAkCvE;;QAjCC,KAAK,WAAA,EACL,QAAQ,cAAA,EAER,OAAO,aAAA,EACP,IAAI,UAAA,EACJ,MAAM,YAAA,EACN,gBAAgB,EAAhB,QAAQ,mBAAG,KAAK,KAAA,EAChB,SAAS,eAAA,EACT,IAAI,UAAA,EACJ,iBAAc,EAAd,SAAS,mBAAG,EAAE,KAAA,EACd,iBAAc,EAAd,SAAS,mBAAG,EAAE,KAAA,EACd,SAAS,eAAA,EACT,WAAW,iBAAA,EACX,EAAE,QAAA,EACS,cAAc,eAAA,EACzB,YAAsB,EAAtB,IAAI,mBAAG,eAAe,KAAA,EACtB,QAAQ,cAAA,EACR,gBAAgB,EAAhB,QAAQ,mBAAG,KAAK,KAAA,EAChB,KAAK,WAAA,EACL,kBAAkB,EAAlB,UAAU,mBAAG,KAAK,KAAA,EAClB,oBAAmB,EAAnB,YAAY,mBAAG,IAAI,KAAA,EACnB,kBAAkB,EAAlB,UAAU,mBAAG,KAAK,KAAA,EAClB,eAAc,EAAd,OAAO,mBAAG,IAAI,KAAA,EACd,qBAAqB,EAArB,aAAa,mBAAG,KAAK,KAAA,EACrB,oBAAoB,EAApB,YAAY,mBAAG,KAAK,KAAA,EACpB,2BAA2B,EAA3B,mBAAmB,mBAAG,KAAK,KAAA,EAC3B,WAAW,iBAAA,EACX,KAAK,WAAA,EACL,cAAc,oBAAA,EACd,UAAU,gBAAA,EACV,UAAU,gBAAA,EACV,gBAAe,EAAf,QAAQ,mBAAG,IAAI,KAAA,EACf,YAAW,EAAX,IAAI,mBAAG,IAAI,KAAA;IAEL,IAAA,KAA8B,IAAA,gBAAQ,EAAM,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,mCAAI,EAAE,CAAC,EAA7D,UAAU,QAAA,EAAE,aAAa,QAAoC,CAAC;IAC/D,IAAA,KAA4B,IAAA,gBAAQ,EAAU,KAAK,CAAC,EAAnD,SAAS,QAAA,EAAE,YAAY,QAA4B,CAAC;IACrD,IAAA,KAA4B,IAAA,gBAAQ,EAAU,KAAK,CAAC,EAAnD,SAAS,QAAA,EAAE,YAAY,QAA4B,CAAC;IACrD,IAAA,KAA0B,IAAA,gBAAQ,EAAU,KAAK,CAAC,EAAjD,QAAQ,QAAA,EAAE,WAAW,QAA4B,CAAC;IAEnD,IAAA,KAA8B,IAAA,gBAAQ,EAAU,QAAQ,CAAC,EAAxD,UAAU,QAAA,EAAE,aAAa,QAA+B,CAAC;IAC1D,IAAA,KAA4B,IAAA,gBAAQ,EAAC,KAAK,CAAC,EAA1C,SAAS,QAAA,EAAE,YAAY,QAAmB,CAAC;IAC5C,IAAA,KAAgC,IAAA,gBAAQ,EAAC,KAAK,CAAC,EAA9C,WAAW,QAAA,EAAE,cAAc,QAAmB,CAAC;IAChD,IAAA,KAA0C,IAAA,gBAAQ,EAAC,KAAK,CAAC,EAAxD,gBAAgB,QAAA,EAAE,mBAAmB,QAAmB,CAAC;IAC1D,IAAA,KAAgC,IAAA,gBAAQ,EAAM,EAAE,CAAC,EAAhD,WAAW,QAAA,EAAE,cAAc,QAAqB,CAAC;IACxD,IAAM,QAAQ,GAAG,IAAA,cAAM,EAAmB,IAAI,CAAC,CAAC;IAChD,IAAM,YAAY,GAAG,IAAA,cAAM,EAAiB,IAAI,CAAC,CAAC;IAClD,IAAM,WAAW,GAAG,IAAA,cAAM,EAAiB,IAAI,CAAC,CAAC;IACjD,IAAM,UAAU,GAAG,IAAA,cAAM,EAAoB,IAAI,CAAC,CAAC;IACnD,IAAM,QAAQ,GAAG,IAAA,cAAM,EAAS,CAAC,CAAC,CAAC,CAAC,mDAAmD;IACjF,IAAA,KAAoC,IAAA,gBAAQ,EAAC,CAAC,CAAC,EAA9C,aAAa,QAAA,EAAE,gBAAgB,QAAe,CAAC;IACtD,IAAM,QAAQ,GAAG,IAAA,cAAM,EAA2B,EAAE,CAAC,CAAC;IACtD,IAAM,kBAAkB,GAAG,IAAA,cAAM,EAA0B,IAAI,CAAC,CAAC;IAC3D,IAAA,KAAgC,IAAA,gBAAQ,EAAC,KAAK,CAAC,EAA9C,WAAW,QAAA,EAAE,cAAc,QAAmB,CAAC;IAChD,IAAA,KAAkC,IAAA,gBAAQ,EAAM;QACpD,GAAG,EAAE,CAAC;QACN,IAAI,EAAE,CAAC;QACP,MAAM,EAAE,CAAC;QACT,KAAK,EAAE,CAAC;KACT,CAAC,EALK,YAAY,QAAA,EAAE,eAAe,QAKlC,CAAC;IACH,IAAM,aAAa,GAAG,UACpB,UAAkB,EAClB,SAAiB,EACjB,MAAwB,EACxB,MAAwB,EACxB,MAAwB,EACxB,MAAwB;QAExB,IAAM,qBAAqB,GAAG,UAC5B,UAA4B,EAC5B,SAAkB;YAElB,OAAO,SAAS;gBACd,UAAU;gBACV,OAAO,UAAU,KAAK,QAAQ;gBAC9B,OAAO,SAAS,KAAK,QAAQ;gBAC7B,CAAC,CAAC,UAAU;qBACP,QAAQ,EAAE;qBACV,WAAW,EAAE;qBACb,UAAU,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,CAAC;gBACnD,CAAC,CAAC,KAAK,CAAC;QACZ,CAAC,CAAC;QACF,IAAM,kBAAkB,GAAG,UACzB,QAA8B,EAC9B,KAAa,YACD,OAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,CAAC,KAAK,CAAC,mCAAI,KAAK,CAAA,EAAA,CAAC;QAEjD,OAAO,CACL,qBAAqB,CAAC,UAAU,EAAE,SAAS,CAAC;YAC5C,CAAC,CAAC,CAAC,WAAW;gBACZ,CAAC,CAAC,kBAAkB,CAAC,WAAW,EAAE,QAAQ,CAAC;oBACzC,qBAAqB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;oBACzC,CAAC,kBAAkB,CAAC,WAAW,EAAE,QAAQ,CAAC;wBACxC,qBAAqB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;oBAC3C,CAAC,kBAAkB,CAAC,WAAW,EAAE,QAAQ,CAAC;wBACxC,qBAAqB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;oBAC3C,CAAC,kBAAkB,CAAC,WAAW,EAAE,QAAQ,CAAC;wBACxC,qBAAqB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAClD,CAAC;IACJ,CAAC,CAAC;IAEF,IAAM,SAAS,GAAG;QAChB,QAAQ,IAAI,EAAE;YACZ,KAAK,IAAI;gBACP,OAAO,YAAY,CAAC;YACtB;gBACE,OAAO,GAAG,CAAC;SACd;IACH,CAAC,CAAC;IAEF,IAAM,YAAY,GAAG,UAAC,KAA0C;QACtD,IAAA,KAAK,GAAK,KAAK,CAAC,MAAM,MAAjB,CAAkB;QAC/B,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC;QAErB,aAAa,CAAC,KAAK,CAAC,CAAC;QACrB,eAAe,CAAC,KAAK,CAAC,CAAC;QACvB,IAAI,CAAC,KAAK,EAAE;YACV,aAAa,CAAC,EAAE,CAAC,CAAC;YAClB,QAAQ,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;SAChD;IACH,CAAC,CAAC;IAEF,IAAM,eAAe,GAAG,IAAA,mBAAW,EACjC,IAAA,mBAAQ,EACN,UAAC,KAAa;QACZ,WAAW,CAAC,IAAI,CAAC,CAAC;QAClB,QAAQ,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QAC/C,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,IAAI,KAAK,eAAe,EAAE;YACnD,cAAc,CAAC,EAAE,CAAC,CAAC;YACnB,IAAI,UAAU,EAAE;gBACd,cAAc,CAAC,GAAG,CAAC,CAAC;aACrB;iBAAM;gBACL,WAAW,CAAC,KAAK,CAAC,CAAC;aACpB;SACF;aAAM;YACL,cAAc,CAAC,KAAK,CAAC,CAAC;SACvB;QACD,UAAU,CAAC;YACT,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC;QACvB,CAAC,EAAE,GAAG,CAAC,CAAC;IACV,CAAC,EACD,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CACxB,EACD,EAAE,CACH,CAAC;IACF,IAAM,cAAc,GAAG,UAAC,KAAc;QACpC,IAAI,IAAI,KAAK,eAAe,EAAE;YAC5B,IAAI,YAAY,EAAE;gBAChB,cAAc,EAAE,CAAC;gBACjB,IAAM,cAAY,GAChB,KAAK,IAAI,KAAK,KAAK,GAAG;oBACpB,CAAC,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC,UAAC,IAAI;wBAChB,OAAA,aAAa,CACX,IAAI,CAAC,IAAI,EACT,KAAK,EACL,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,MAAM,CACZ;oBAND,CAMC,CACF;oBACH,CAAC,CAAC,IAAI,CAAC;gBACX,cAAc,CAAC,cAAY,CAAC,CAAC;aAC9B;iBAAM;gBACL,qBAAqB,CAAC,KAAK,CAAC,CAAC;aAC9B;SACF;aAAM,IACL,CAAC,IAAI,KAAK,eAAe,IAAI,IAAI,KAAK,sBAAsB,CAAC;YAC7D,CAAC,CAAC,IAAI,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,MAAK,CAAC,CAAC,EAC7B;YACA,qBAAqB,EAAE,CAAC;SACzB;aAAM,IAAI,IAAI,KAAK,sBAAsB,IAAI,IAAI,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,IAAG,CAAC,EAAE;YACtE,IAAM,cAAY,GAChB,KAAK,IAAI,KAAK,KAAK,GAAG;gBACpB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAC,IAAI;oBACf,OAAA,aAAa,CACX,IAAI,CAAC,IAAI,EACT,KAAK,EACL,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,MAAM,CACZ;gBAND,CAMC,CACF;gBACH,CAAC,CAAC,IAAI,CAAC;YACX,cAAc,CAAC,cAAY,CAAC,CAAC;SAC9B;IACH,CAAC,CAAC;IACF,IAAM,qBAAqB,GAAG,UAAO,KAAc;;;;;yBAC7C,OAAO,EAAP,wBAAO;oBACT,YAAY,CAAC,IAAI,CAAC,CAAC;;;;oBAEU,qBAAM,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAG,KAAK,CAAC,CAAA,EAAA;;oBAA3C,kBAAkB,GAAG,SAAsB;oBACjD,cAAc,CAAC,kBAAkB,CAAC,CAAC;oBACnC,YAAY,CAAC,KAAK,CAAC,CAAC;oBACpB,IAAI,YAAY,EAAE;wBAChB,cAAc,CAAC,IAAI,CAAC,CAAC;qBACtB;;;;oBAED,YAAY,CAAC,KAAK,CAAC,CAAC;;;;;SAGzB,CAAC;IAEF,IAAM,YAAY,GAAG;;QACnB,IAAI,CAAC,UAAU,EAAE;YACf,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,0CAAE,KAAK,EAAE,CAAC;YAC3B,IAAI,UAAU,IAAI,UAAU,KAAK,EAAE,EAAE;gBACnC,eAAe,CAAC,GAAG,CAAC,CAAC;aACtB;iBAAM,IACL,CAAC,IAAI,KAAK,eAAe,IAAI,IAAI,KAAK,sBAAsB,CAAC;gBAC7D,IAAI;gBACJ,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,IAAG,CAAC,EAChB;gBACA,cAAc,EAAE,CAAC;gBACjB,WAAW,CAAC,IAAI,CAAC,CAAC;aACnB;SACF;IACH,CAAC,CAAC;IACF,IAAM,kBAAkB,GAAG,UAAC,KAAiB;QAC3C,IACE,WAAW,CAAC,OAAO;YACnB,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAc,CAAC,EACnD;YACA,WAAW,CAAC,KAAK,CAAC,CAAC;SACpB;IACH,CAAC,CAAC;IACF,IAAM,iBAAiB,GAAG;;QACxB,IAAI,UAAU,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;;YACrC,OAAO,CAAC,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,GAAG,MAAM,mCAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IACvE,CAAC,CAAC;IACF,IAAM,cAAc,GAAG;;;;;yBACjB,CAAA,CAAC,IAAI,IAAI,CAAC,WAAW,IAAI,YAAY,IAAI,CAAC,YAAY,CAAC,CAAA,EAAvD,wBAAuD;oBACzD,IAAI,GAAG,EAAE,CAAC;yBACN,OAAO,EAAP,wBAAO;;;;oBAEP,YAAY,CAAC,IAAI,CAAC,CAAC;oBAEQ,qBAAM,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAG,GAAG,CAAC,CAAA,EAAA;;oBAAzC,kBAAkB,GAAG,SAAoB;oBAC/C,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,OAAO,CAAC,UAAC,OAAY;wBACvC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,CAAC,OAAO,CAAC,CAAC;oBACtB,CAAC,CAAC,CAAC;oBACH,cAAc,CAAC,kBAAkB,CAAC,CAAC;oBACnC,YAAY,CAAC,KAAK,CAAC,CAAC;oBACpB,IAAI,YAAY,EAAE;wBAChB,cAAc,CAAC,KAAK,CAAC,CAAC;wBACtB,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC;qBACtB;;;;oBAED,YAAY,CAAC,KAAK,CAAC,CAAC;;;;;SAI3B,CAAC;IACF,IAAA,iBAAS,EAAC;QACR,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;QACvD,OAAO;YACL,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;QAC5D,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAA,iBAAS,EAAC;QACR,IAAI,SAAS,EAAE;YACb,YAAY,EAAE,CAAC;SAChB;IACH,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAChB,IAAM,YAAY,GAAG;QACnB,IAAI,CAAC,UAAU,EAAE;YACf,IAAI,UAAU,IAAI,UAAU,KAAK,EAAE,EAAE;gBACnC,eAAe,CAAC,GAAG,CAAC,CAAC;aACtB;iBAAM,IACL,CAAC,IAAI,KAAK,eAAe,IAAI,IAAI,KAAK,sBAAsB,CAAC;gBAC7D,IAAI;gBACJ,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,IAAG,CAAC,EAChB;gBACA,cAAc,EAAE,CAAC;gBACjB,4FAA4F;aAC7F;SACF;IACH,CAAC,CAAC;IACF,IAAA,iBAAS,EAAC;QACR,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IACf,IAAM,qBAAqB,GAAG,UAAC,UAAsB,EAAE,KAAa;QAClE,QAAQ,gCACH,UAAU,KACb,EAAE,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,EAAE,EAClB,IAAI,EAAE,UAAU,CAAC,IAAI,KAClB,CAAC,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,EAAC,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAC1D,CAAC;QACH,IAAI,IAAI,KAAK,eAAe;YAAE,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC7D,WAAW,CAAC,KAAK,CAAC,CAAC;QACnB,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC,CAAC;IACF,IAAM,UAAU,GAAG,UAAC,CAAM;QACxB,IAAI,CAAC,WAAW,IAAI,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,MAAK,CAAC;YAAE,cAAc,EAAE,CAAC;QAChE,IAAI,CAAC,SAAS,EAAE;YACd,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC;YACvB,IAAI,IAAI,KAAK,eAAe;gBAAE,aAAa,CAAC,EAAE,CAAC,CAAC;SACjD;IACH,CAAC,CAAC;IAEF,IAAM,kBAAkB,GAAG,UAAC,CAAM;QAChC,IAAI,CAAC,WAAW,IAAI,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,MAAK,CAAC,IAAI,WAAW,EAAE;YAC5D,IAAI,YAAY,IAAI,CAAC,UAAU,KAAK,EAAE,IAAI,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE;gBACnE,cAAc,CAAC,EAAE,CAAC,CAAC;gBACnB,cAAc,EAAE,CAAC;aAClB;iBAAM,IAAI,CAAC,WAAW,EAAE;gBACvB,cAAc,EAAE,CAAC;aAClB;SACF;QACD,IAAI,CAAC,SAAS,EAAE;YACd,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC;SACxB;IACH,CAAC,CAAC;IAEF,IAAM,YAAY,GAAG;QACnB,WAAW,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC,CAAC;IAEF,IAAA,iBAAS,EAAC;QACR,IAAI,CAAC,UAAU,EAAE;YACf,gBAAgB,CAAC,CAAC,CAAC,CAAC;YACpB,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAEhD,IAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YACnD,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,gBAAgB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAEtD,IAAM,YAAY,GAAG,QAAQ,CAAC,gBAAgB,CAC5C,qEAAqE,CACtE,CAAC;YACF,YAAY,CAAC,OAAO,CAAC,UAAC,WAAgB;gBACpC,WAAW,CAAC,gBAAgB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YACvD,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;YACnD,eAAe,EAAE,CAAC;YAClB,OAAO;gBACL,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;gBACnD,IAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;gBACnD,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;gBACzD,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;gBACnD,IAAM,YAAY,GAAG,QAAQ,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;gBAClE,YAAY,CAAC,OAAO,CAAC,UAAC,WAAgB;oBACpC,WAAW,CAAC,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;gBAC1D,CAAC,CAAC,CAAC;YACL,CAAC,CAAC;SACH;IACH,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,IAAM,WAAW,GAAG;QAClB,WAAW,CAAC,KAAK,CAAC,CAAC;QACnB,aAAa,CAAC,EAAE,CAAC,CAAC;QAClB,QAAQ,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QAC/C,YAAY,EAAE,CAAC;QACf,IAAI,YAAY,EAAE;YAChB,cAAc,CAAC,IAAI,CAAC,CAAC;SACtB;IACH,CAAC,CAAC;IAEF,IAAA,iBAAS,EAAC;;QACR,aAAa,CAAC,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,mCAAI,EAAE,CAAC,CAAC;IACnC,CAAC,EAAE,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC,CAAC,CAAC;IAElB,IAAA,iBAAS,EAAC;QACR,cAAc,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,IAAM,SAAS,GAAG,UAAC,GAAQ;;QACzB,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,GAAG,CAAC,OAAO,EAAE;YACf,MAAM,GAAG,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,CAAC;SACvB;aAAM,IAAI,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,EAAE,0CAAE,OAAO,EAAE;YAC3B,MAAM,GAAG,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,EAAE,0CAAE,OAAO,CAAC;SAC3B;aAAM,IAAI,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,0CAAE,OAAO,EAAE;YAC7B,MAAM,GAAG,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,0CAAE,OAAO,CAAC;SAC7B;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IACF,IAAM,iBAAiB,GAAG,UACxB,IAAiD;QAEjD,IAAI,SAAS,GAAG,cAAc,CAAC;QAC/B,QAAQ,IAAI,EAAE;YACZ,KAAK,OAAO;gBACV,SAAS,IAAI,2NACX,KAAK,IAAI,QAAQ;oBACf,CAAC,CAAC,yBAAyB;oBAC3B,CAAC,CAAC,0DAA0D,sCAC7B,CAAC;gBAEpC,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE;oBAC1B,SAAS;wBACP,wHAAwH,CAAC;iBAC5H;qBAAM;oBACL,SAAS;wBACP,6FAA6F,CAAC;iBACjG;gBAED,SAAS,IAAI,SAAS,EAAE,CAAA;gBAExB,MAAM;YACR,KAAK,OAAO;gBACV,SAAS,IAAI,uGAET,UAAU;oBACR,CAAC,CAAC,gBAAgB;oBAClB,CAAC,CAAC,uCAAuC,cAE7C,UAAU,IAAI,CAAC,iBAAiB,EAAE;oBAChC,CAAC,CAAC,yBAAyB;oBAC3B,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,iBAAiB,EAAE;wBACrC,CAAC,CAAC,uBAAuB;wBACzB,CAAC,CAAC,EAAE,mRAEN,UAAU;oBACR,CAAC,CAAC,gBAAgB;oBAClB,CAAC,CAAC,uCAAuC,0BAGxC,iBAAiB,EAAE;oBACjB,CAAC,CAAC,yBAAyB;oBAC3B,CAAC,CAAC,oCAAoC,CACxC,CAAC;gBACN,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE;oBAC1B,SAAS,IAAI,oBAAoB,CAAC;iBACnC;qBAAM;oBACL,SAAS,IAAI,2CAA2C,CAAC;iBAC1D;gBACD,MAAM;YACR,KAAK,SAAS;gBACZ,SAAS,GAAG,mBAAmB,CAAC;gBAChC,MAAM;YACR,KAAK,WAAW;gBACd,SAAS,IAAI,uDAAuD,CAAC;gBACrE,MAAM;YACR;gBACE,MAAM;SACT;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC;IACF,IAAM,WAAW,GAAG;QAClB,UAAU,CAAC;YACT,WAAW,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC,EAAE,GAAG,CAAC,CAAC;IACV,CAAC,CAAC;IACF,IAAM,qBAAqB,GAAG;QAC5B,mCAAmC;IACrC,CAAC,CAAC;IACF,IAAM,aAAa,GAAG;QACpB,IAAM,UAAU,GAAG,YAAY,CAAC,OAAO;YACrC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW;YAClC,CAAC,CAAC,CAAC,CAAC;QACN,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;IACF,8BAA8B;IAC9B,oBAAoB;IACpB,IAAI;IACJ,IAAM,+BAA+B,GAAG;QACtC,IAAI,CAAC,UAAU,EAAE;YACf,OAAO;SACR;QAED,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9C,iEAAiE;YACjE,QAAQ,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YACvD,OAAO;SACR;QAED,IAAM,eAAe,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACnE,IAAM,UAAU,GAAG,YAAY,CAAC,SAAS,CAAC,UAAC,IAAgB;;YACzD,IAAM,IAAI,GAAG,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,0CAAE,QAAQ,GAAG,IAAI,GAAG,WAAW,EAAE,CAAC;YACzD,IAAM,KAAK,GAAG,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,0CAAE,QAAQ,GAAG,IAAI,GAAG,WAAW,EAAE,CAAC;YAC3D,OAAO,IAAI,KAAK,eAAe,IAAI,KAAK,KAAK,eAAe,CAAC;QAC/D,CAAC,CAAC,CAAC;QAEH,IAAI,UAAU,IAAI,CAAC,EAAE;YACnB,IAAM,KAAK,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;YACvC,qBAAqB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;SAC1C;aAAM;YACL,kDAAkD;YAClD,QAAQ,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;SACxD;IACH,CAAC,CAAC;IACF,IAAM,YAAY,GAChB,UAAU,KAAK,GAAG;QAClB,UAAU,KAAK,EAAE;QACjB,IAAI,KAAK,eAAe;QACxB,CAAC,aAAa;QACZ,CAAC,CAAC,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,CAAC,UAAC,IAAgB;;YACnC,OAAA,aAAa,CACX,IAAI,CAAC,IAAI,EACT,UAAU,EACV,MAAA,IAAI,CAAC,MAAM,mCAAI,EAAE,EACjB,MAAA,IAAI,CAAC,MAAM,mCAAI,EAAE,EACjB,MAAA,IAAI,CAAC,MAAM,mCAAI,EAAE,EACjB,MAAA,IAAI,CAAC,MAAM,mCAAI,EAAE,CAClB,CAAA;SAAA,CACF;QACH,CAAC,CAAC,WAAW,CAAC;IAElB,IAAM,WAAW,GAAG,UAAC,IAAS;;QAC5B,IACE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,UAAU;YACpC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,UAAU,EACpC;YACA,OAAO,UAAG,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,UAAU,iBAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC;SAC7D;aAAM;YACL,OAAO,MAAA,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,mCAAI,EAAE,CAAC;SACpC;IACH,CAAC,CAAC;IAEF,IAAM,eAAe,GAAG;QACtB,IAAI,CAAC,UAAU,KAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,CAAA,EAAE;YACpC,IAAM,cAAc,GAAG,GAAG,CAAC,CAAC,+DAA+D;YAE3F,IAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC;YAC3D,IAAM,UAAU,GACd,MAAM,CAAC,WAAW,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;YAC3D,IAAM,UAAU,GAAG,SAAS,CAAC,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC;YAElD,IAAI,KAAG,CAAC;YACR,IAAI,MAAM,SAAA,CAAC;YACX,IAAI,UAAU,GAAG,cAAc,IAAI,UAAU,GAAG,cAAc,EAAE;gBAC9D,MAAM,GAAG,UAAU,GAAG,EAAE,CAAC;aAC1B;iBAAM;gBACL,KAAG,GAAG,SAAS,CAAC,GAAG,GAAG,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;aAC7D;YACD,eAAe,CAAC;gBACd,IAAI,EAAE,SAAS,CAAC,IAAI,GAAG,MAAM,CAAC,OAAO;gBACrC,GAAG,OAAA;gBACH,MAAM,QAAA;gBACN,KAAK,EAAE,SAAS,CAAC,KAAK;aACvB,CAAC,CAAC;SACJ;QAED,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC;IAEI,IAAA,KAAoC,IAAA,gBAAQ,EAAC,KAAK,CAAC,EAAlD,aAAa,QAAA,EAAE,gBAAgB,QAAmB,CAAC;IAE1D,IAAA,iBAAS,EAAC;QACR,IACE,CAAC,UAAU,IAAI,YAAY,CAAC;YAC5B,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,MAAK,CAAC;YAC1B,CAAC,SAAS;YACV,QAAQ,CAAC,OAAO,KAAK,CAAC,EACtB;YACA,IAAM,OAAK,GAAG,UAAU,CAAC;gBACvB,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACzB,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,wBAAwB;YACjC,OAAO,cAAM,OAAA,YAAY,CAAC,OAAK,CAAC,EAAnB,CAAmB,CAAC;SAClC;aAAM;YACL,gBAAgB,CAAC,KAAK,CAAC,CAAC;SACzB;QAED,6BAA6B;QAC7B,IAAM,aAAa,GAAG,UAAC,CAAgB;YACrC,IAAI,CAAC,QAAQ;gBAAE,OAAO;YAEtB,IAAM,SAAS,GACb,CAAC,CAAC,GAAG,KAAK,WAAW;gBACnB,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC,GAAG,YAAY,CAAC,MAAM;gBAC3C,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,SAAS;oBACrB,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC,MAAM;oBACjE,CAAC,CAAC,aAAa,CAAC;YAEpB,QAAQ,CAAC,CAAC,GAAG,EAAE;gBACb,KAAK,WAAW,CAAC;gBACjB,KAAK,SAAS;oBACZ,CAAC,CAAC,cAAc,EAAE,CAAC;oBAEnB,qBAAqB;oBACrB,gBAAgB,CAAC,SAAS,CAAC,CAAC;oBAE5B,uCAAuC;oBACvC,qBAAqB,CAAC;wBACpB,IAAM,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;wBACvC,IAAM,SAAS,GAAG,kBAAkB,CAAC,OAAO,CAAC;wBAE7C,IAAI,EAAE,IAAI,SAAS,EAAE;4BACnB,IAAM,KAAK,GAAG,EAAE,CAAC,SAAS,CAAC;4BAC3B,IAAM,QAAQ,GAAG,KAAK,GAAG,EAAE,CAAC,YAAY,CAAC;4BAEzC,IAAM,YAAY,GAAG,SAAS,CAAC,SAAS,CAAC;4BACzC,IAAM,eAAe,GAAG,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC;4BAE9D,IAAI,QAAQ,GAAG,eAAe,EAAE;gCAC9B,SAAS,CAAC,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC,YAAY,CAAC;6BACzD;iCAAM,IAAI,KAAK,GAAG,YAAY,EAAE;gCAC/B,SAAS,CAAC,SAAS,GAAG,KAAK,CAAC;6BAC7B;yBACF;oBACH,CAAC,CAAC,CAAC;oBACH,MAAM;gBAER,KAAK,OAAO;oBACV,CAAC,CAAC,cAAc,EAAE,CAAC;oBACnB,qBAAqB,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC,CAAC;oBAClE,MAAM;gBAER,KAAK,QAAQ;oBACX,CAAC,CAAC,cAAc,EAAE,CAAC;oBACnB,WAAW,CAAC,KAAK,CAAC,CAAC;oBACnB,MAAM;gBAER;oBACE,MAAM;aACT;QACH,CAAC,CAAC;QAEF,IAAI,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,IAAG,CAAC,IAAI,CAAC,SAAS,EAAE;YAC1C,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;YAClD,OAAO;gBACL,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;YACvD,CAAC,CAAC;SACH;IACH,CAAC,EAAE;QACD,UAAU;QACV,YAAY;QACZ,SAAS;QACT,QAAQ,CAAC,OAAO;QAChB,aAAa;QACb,QAAQ;KACT,CAAC,CAAC;IAEH,IAAM,WAAW,GAAG;QAClB,OAAO,CACL,CAAC,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,IAAG,CAAC,IAAI,aAAa,CAAC,IAAI,CAC7C,yCACE,KAAK,EAAE,YAAY,EACnB,SAAS,EAAC,yGAAyG,gBAEnH,wCACE,SAAS,EAAC,6CAA6C,EACvD,GAAG,EAAE,kBAAkB,gBAEtB,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,IAAG,CAAC,CAAC,CAAC,CAAC,CAC1B,2DACG,YAAY,CAAC,GAAG,CAAC,UAAC,UAAe,EAAE,KAAa,IAAK,OAAA,CACpD,yCACE,SAAS,EAAE,UACT,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,EAAE,OAAK,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,EAAE,CAAA;4BAC1B,CAAC,CAAC,yBAAyB;4BAC3B,CAAC,CAAC,UACE,KAAK,KAAK,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,0BACvB,uFACuD,iBAEvE,UAAU,CAAC,IAAI,EAC5B,OAAO,EAAE,cAAM,OAAA,qBAAqB,CAAC,UAAU,EAAE,KAAK,CAAC,EAAxC,CAAwC,EACvD,QAAQ,EAAE,KAAK,EACf,GAAG,EAAE,UAAC,EAAE,IAAK,OAAA,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAA9B,CAA8B,iBAE3C,2CACG,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,EAAC,CAAC,CAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,GACnD,EAEN,SAAS,KAAI,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAG,SAAS,CAAC,CAAA,IAAI,CACvC,0CAAM,SAAS,EAAC,YAAY,gBACzB,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAG,SAAS,CAAC,IACnB,CACR,EAEA,SAAS,KAAI,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAG,SAAS,CAAC,CAAA,IAAI,CACvC,0CAAM,SAAS,EAAC,YAAY,gBACzB,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAG,SAAS,CAAC,IACnB,CACR,MApBI,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,EAAE,CAqBhB,CACN,EA/BqD,CA+BrD,CAAC,GACD,CACJ,CAAC,CAAC,CAAC,CACF,aAAa;oBACb,CAAC,SAAS;oBACV,QAAQ,CAAC,OAAO,KAAK,CAAC,IAAI,CACxB,wCACE,SAAS,EAAE,0CAA0C,EACrD,OAAO,EAAE,WAAW,sCAGjB,CACN,CACF,IACE,IACD,CACP,CACF,CAAC;IACJ,CAAC,CAAC;IACF,IAAM,cAAc,GAAG;QACrB,IAAI,UAAU,EAAE;YACd,IACE,CAAC,cAAc,IAAI,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;gBACnD,cAAc,EACd;gBACA,OAAO,CAAC,CAAC;aACV;iBAAM,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE;gBACjC,OAAO,SAAS,CAAC;aAClB;SACF;QACD,OAAO,CAAC,CAAC;IACX,CAAC,CAAC;IAEF,IAAA,iBAAS,EAAC;QACR,IAAA,gCAAkB,EAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAC3C,WAAW,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,IAAA,iBAAS,EAAC;QACR,IAAM,eAAe,GACnB,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI;YACX,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,EAAE,KAAI,MAAM,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,EAAE,CAAC,KAAK,GAAG,CAAC;YACxC,CAAC,QAAQ;YACT,CAAC,QAAQ;YACT,OAAO,CAAC;QACV,IAAI,SAAS,KAAK,eAAe,EAAE;YACjC,YAAY,CAAC,eAAe,CAAC,CAAC;SAC/B;IACH,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;IAChC,IAAA,iBAAS,EAAC;QACR,mCAAmC;QACnC,IAAM,aAAa,GAAG;YACpB,IAAI,QAAQ,CAAC,OAAO,EAAE;gBACd,IAAA,KAAsC,QAAQ,CAAC,OAAO,EAApD,WAAW,iBAAA,EAAE,WAAW,iBAAA,EAAE,OAAK,WAAqB,CAAC;gBAC7D,+CAA+C;gBAC/C,IAAI,OAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;oBACvB,cAAc,CAAC,WAAW,GAAG,WAAW,GAAG,CAAC,CAAC,CAAC;iBAC/C;qBAAM;oBACL,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,6BAA6B;iBACrD;aACF;QACH,CAAC,CAAC;QAEF,IAAI,QAAQ,CAAC,OAAO,EAAE;YACpB,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;YAC1D,aAAa,EAAE,CAAC,CAAC,gBAAgB;SAClC;QAED,OAAO;YACL,IAAI,QAAQ,CAAC,OAAO,EAAE;gBACpB,QAAQ,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;aAC9D;QACH,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,IAAM,gBAAgB,GAAG;QACvB,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC,CAAC;IAEF,IAAM,gBAAgB,GAAG;QACvB,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC,CAAC;IAEF,OAAO,CACL,0CACE,EAAE,EACA,EAAE,CAAC,CAAC,CAAC,iCAA0B,EAAE,CAAE,CAAC,CAAC,CAAC,iCAA0B,IAAI,CAAE,EAExE,SAAS,EAAE,sBAAe,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAE,EAC3D,GAAG,EAAE,WAAW,iBAEf,KAAK,IAAI,CAAC,QAAQ,IAAI,CACrB,yCAAK,SAAS,EAAC,MAAM,gBACnB,4CAAO,SAAS,EAAE,qBAAqB,iBACpC,KAAK,EACL,QAAQ,CAAC,CAAC,CAAC,0CAAM,SAAS,EAAC,YAAY,wBAAU,CAAC,CAAC,CAAC,kDAAK,KACpD,IACJ,CACP,EACD,0CAAK,SAAS,EAAC,mBAAmB,iBAC/B,SAAS,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CACtC,2CAAM,SAAS,EAAC,SAAS,iBAAE,WAAW,CAAC,MAAM,CAAC,UAAS,CACxD,EACA,gBAAgB,IAAI,WAAW,IAAI,CAAC,QAAQ,IAAI,UAAU,IAAI,CAC7D,yCAAK,SAAS,EAAE,cAAc,gBAAG,UAAU,IAAO,CACnD,EAED,0CACE,SAAS,EAAE,wBAAiB,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAE,EAC7D,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,iBAEvB,0CACE,SAAS,EAAC,iBAAiB,EAC3B,YAAY,EAAE,cAAM,OAAA,gBAAgB,EAAE,EAAlB,CAAkB,EACtC,YAAY,EAAE,cAAM,OAAA,gBAAgB,EAAE,EAAlB,CAAkB,iBAEtC,kCACE,IAAI,EAAC,MAAM,EACX,QAAQ,EAAE,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,IAAI,KAAK,eAAe,EAC9C,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EACnC,MAAM,EAAE;4CACN,qBAAqB,EAAE,CAAC;4CACxB,+BAA+B,EAAE,CAAC;wCACpC,CAAC,EACD,YAAY,EAAC,KAAK,EAClB,QAAQ,EAAE,QAAQ,EAClB,GAAG,EAAE,QAAQ,EACb,EAAE,EACA,EAAE,CAAC,CAAC,CAAC,8BAAuB,EAAE,CAAE,CAAC,CAAC,CAAC,8BAAuB,IAAI,CAAE,iBAEtD,qBAAqB,sBAIf,EAAE,EACpB,KAAK,aACH,YAAY,EAAE,aAAa,EAAE,IAC1B,CAAC,UAAU;4CACZ,CAAC,CAAC;gDACE,WAAW,EAAE,cAAc,EAAE;gDAC7B,oBAAoB,EAAE,CAAC;gDACvB,uBAAuB,EAAE,CAAC;6CAC3B;4CACH,CAAC,CAAC,EAAE,CAAC,GAET,SAAS,EAAE,WAAI,iBAAiB,CAAC,OAAO,CAAC,CAAE,EAC3C,QAAQ,EAAE,YAAY,EACtB,WAAW,EACT,IAAI,KAAK,eAAe;4CACtB,CAAC,CAAC,WAAW,IAAI,mBAAmB;gDAClC,CAAC,CAAC,WAAW;gDACb,CAAC,CAAC,gBAAgB;4CACpB,CAAC,CAAC,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,YAAY,EAEjC,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,UAAC,CAAC;4CACT,IAAI,IAAI,KAAK,eAAe,EAAE;gDAC5B,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC;gDACvB,UAAU,CAAC,CAAC,CAAC,CAAC;6CACf;iDAAM;gDACL,IAAI,QAAQ,IAAI,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,IAAG,CAAC;oDACtC,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC;6CAC1B;wCACH,CAAC,GACD,EACD,QAAQ,IAAI,CACX,4CACE,OAAO,EAAE,EAAE,EACX,OAAO,EAAE,cAAM,OAAA,YAAY,EAAE,EAAd,CAAc,EAC7B,SAAS,EAAE,iBAAiB,CAAC,OAAO,CAAC,iBAEpC,KAAK,CAAC,CAAC,CAAC,0CAAM,SAAS,EAAC,UAAU,gBAAE,KAAK,IAAQ,CAAC,CAAC,CAAC,EAAE,EACtD,QAAQ,CAAC,CAAC,CAAC,0CAAM,SAAS,EAAC,YAAY,wBAAU,CAAC,CAAC,CAAC,kDAAK,KACpD,CACT,KACG,EACN,yCAAK,SAAS,EAAC,iEAAiE,gBAC9E,0CACE,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,UAAG,iBAAiB,CAC7B,WAAW,CACZ,0EACC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAC3B,iBAED,SAAS,IAAI,CACZ,4CACE,OAAO,EAAE,cAAM,OAAA,WAAW,EAAE,EAAb,CAAa,EAC5B,SAAS,EAAC,sCAAsC,gBACrC,OAAO,EAClB,IAAI,EAAC,QAAQ,EACb,EAAE,EAAC,yBAAyB,gBAE5B,uBAAC,qBAAW,IAAC,IAAI,EAAC,OAAO,EAAC,IAAI,EAAC,SAAS,GAAG,IACpC,CACV,EACA,SAAS,IAAI,uBAAC,iBAAO,KAAG,EACxB,CAAC,IAAI,KAAK,eAAe,IAAI,YAAY,CAAC;4CACzC,CAAC,QAAQ;4CACT,CAAC,QAAQ,IAAI,CACX,4CACE,QAAQ,EAAE,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,QAAQ,EAC9B,OAAO,EAAE,UAAC,CAAC,IAAK,OAAA,kBAAkB,CAAC,CAAC,CAAC,EAArB,CAAqB,EACrC,MAAM,EAAE,WAAW,EACnB,SAAS,EAAC,iDAAiD,iBAC/C,YAAY,EACxB,IAAI,EAAC,QAAQ,EACb,EAAE,EAAC,wBAAwB,EAC3B,GAAG,EAAE,UAAU,gBAEd,CAAC,QAAQ,CAAC,CAAC,CAAC,CACX,YAAY,CAAC,CAAC,CAAC,CACb,uBAAC,oBAAY,IACX,IAAI,EAAC,MAAM,EACX,QAAQ,EAAC,wBAAwB,EACjC,SAAS,EAAC,wBAAwB,GAClC,CACH,CAAC,CAAC,CAAC,CACF,uBAAC,iBAAS,IAAC,iBAAiB,EAAC,iBAAiB,GAAG,CAClD,CACF,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CACjB,uBAAC,oBAAY,IACX,IAAI,EAAC,IAAI,EACT,QAAQ,EAAC,wBAAwB,EACjC,SAAS,EAAC,wBAAwB,GAClC,CACH,CAAC,CAAC,CAAC,CACF,uBAAC,iBAAS,IACR,SAAS,EAAC,YAAY,EACtB,iBAAiB,EAAC,iBAAiB,GACnC,CACH,IACM,CACV,EACF,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CACzB,yCACE,SAAS,EAAE,qDAA8C,iBAAiB,CACxE,SAAS,CACV,CAAE,EACH,YAAY,EAAE,cAAM,OAAA,YAAY,CAAC,IAAI,CAAC,EAAlB,CAAkB,EACtC,YAAY,EAAE,cAAM,OAAA,YAAY,CAAC,KAAK,CAAC,EAAnB,CAAmB,gBAEvC,uBAAC,qBAAW,IAAC,IAAI,EAAC,OAAO,EAAC,IAAI,EAAC,QAAQ,GAAG,IACtC,CACP,KACG,IACF,EACL,QAAQ,IAAI,CAAC,CAAC,SAAS,IAAI,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,IAAG,CAAC,CAAC,IAAI,CACvD,2DAAG,UAAU,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,uBAAC,gBAAM,cAAE,WAAW,EAAE,GAAU,GAAI,CACrE,KACG,KACF,KACF,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,0BAA0B,CAAC"}
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": "2.1.0",
3
+ "version": "2.1.2",
4
4
  "description": "React Components",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,4 +1,11 @@
1
- import React, { forwardRef, useCallback, useEffect, useImperativeHandle, useRef, useState } from 'react';
1
+ import React, {
2
+ forwardRef,
3
+ useCallback,
4
+ useEffect,
5
+ useImperativeHandle,
6
+ useRef,
7
+ useState,
8
+ } from 'react';
2
9
 
3
10
  import { AutoSuggestionInputProps } from './commontypes';
4
11
  import { useSuggestions } from './utilities/autosuggestions';
@@ -43,7 +50,7 @@ const AutoComplete = forwardRef<HTMLInputElement, AutoSuggestionInputProps>(
43
50
  notDataMessage,
44
51
  onFocus,
45
52
  },
46
- ref
53
+ ref,
47
54
  ) => {
48
55
  const dropdownRef = useRef<HTMLDivElement>(null);
49
56
  // State Hooks Section
@@ -94,16 +101,17 @@ const AutoComplete = forwardRef<HTMLInputElement, AutoSuggestionInputProps>(
94
101
  inputValue,
95
102
  isMultiple,
96
103
  setNextPage,
97
- selectedItems
104
+ selectedItems,
98
105
  // nextBlock
99
106
  );
100
107
 
101
108
  // Handling the selection of a suggestion
102
109
  const handleSuggestionClick = useCallback((suggestion: ValueProps) => {
110
+ isSelectingRef.current = true;
103
111
  if (isMultiple) {
104
112
  setSelectedItems((prev) => {
105
113
  const isAdded = prev.some(
106
- (item) => item[descId] === suggestion[descId]
114
+ (item) => item[descId] === suggestion[descId],
107
115
  );
108
116
  if (isAdded) {
109
117
  return prev.filter((item) => item[descId] !== suggestion[descId]);
@@ -134,7 +142,7 @@ const AutoComplete = forwardRef<HTMLInputElement, AutoSuggestionInputProps>(
134
142
  } else {
135
143
  setSelectedItems((prev) => {
136
144
  return prev.filter(
137
- (item, i) => item[descId] !== suggestion[descId]
145
+ (item, i) => item[descId] !== suggestion[descId],
138
146
  );
139
147
  });
140
148
  }
@@ -156,7 +164,15 @@ const AutoComplete = forwardRef<HTMLInputElement, AutoSuggestionInputProps>(
156
164
  setInputValue(value ?? '');
157
165
  }, [value]);
158
166
 
167
+ const isSelectingRef = useRef(false);
168
+
159
169
  const selectExactMatchFromSuggestions = () => {
170
+ // If user is clicking on dropdown, don't execute exact match logic
171
+ if (isSelectingRef.current) {
172
+ isSelectingRef.current = false;
173
+ return;
174
+ }
175
+
160
176
  if (!inputValue) {
161
177
  return;
162
178
  }
@@ -178,6 +194,7 @@ const AutoComplete = forwardRef<HTMLInputElement, AutoSuggestionInputProps>(
178
194
  } else {
179
195
  // No exact match – notify parent with typed value
180
196
  onChange({ [descId]: '', [desc]: inputValue });
197
+ setInputValue('');
181
198
  }
182
199
  };
183
200
 
@@ -259,15 +276,15 @@ const AutoComplete = forwardRef<HTMLInputElement, AutoSuggestionInputProps>(
259
276
  type,
260
277
  desc,
261
278
  selected,
262
- async
279
+ async,
263
280
  );
264
281
  const isSelected = (
265
282
  item: ValueProps,
266
- selectedItems: ValueProps[] | string
283
+ selectedItems: ValueProps[] | string,
267
284
  ): boolean => {
268
285
  if (Array.isArray(selectedItems)) {
269
286
  return selectedItems.some(
270
- (selectedItem) => selectedItem[desc] === item[desc]
287
+ (selectedItem) => selectedItem[desc] === item[desc],
271
288
  );
272
289
  } else {
273
290
  return item[desc] === selectedItems;
@@ -352,14 +369,26 @@ const AutoComplete = forwardRef<HTMLInputElement, AutoSuggestionInputProps>(
352
369
  : searchValue || inputValue
353
370
  }
354
371
  onChange={handleChange}
355
- onBlur={() => {
356
- handleBlur();
357
- selectExactMatchFromSuggestions();
372
+ onBlur={(e) => {
373
+ // Delay to allow click events on dropdown to process first
374
+ setTimeout(() => {
375
+ // Check if focus moved to dropdown or if user is selecting
376
+ const relatedTarget = e.relatedTarget as Node;
377
+ if (
378
+ dropdownRef.current &&
379
+ relatedTarget &&
380
+ dropdownRef.current.contains(relatedTarget)
381
+ ) {
382
+ return; // Focus moved to dropdown, don't execute exact match
383
+ }
384
+ handleBlur();
385
+ selectExactMatchFromSuggestions();
386
+ }, 200);
358
387
  }}
359
388
  onFocus={onFocus}
360
389
  onClick={() => handleOnClick()}
361
390
  className={generateClassName()}
362
- placeholder={selectedItems?.length > 0 ? '' : placeholder ?? ''}
391
+ placeholder={selectedItems?.length > 0 ? '' : (placeholder ?? '')}
363
392
  readOnly={
364
393
  readOnly || type === 'custom_select' || type == 'auto_suggestion'
365
394
  }
@@ -468,6 +497,10 @@ const AutoComplete = forwardRef<HTMLInputElement, AutoSuggestionInputProps>(
468
497
  className={`qbs-autocomplete-suggestions-item ${
469
498
  isSelected(suggestion, selected) ? 'is-selected' : ''
470
499
  }`}
500
+ onMouseDown={(e) => {
501
+ e.preventDefault(); // Prevent input blur before click
502
+ isSelectingRef.current = true;
503
+ }}
471
504
  onClick={() => handleSuggestionClick(suggestion)}
472
505
  data-testid={suggestion[desc]}
473
506
  >
@@ -522,7 +555,7 @@ const AutoComplete = forwardRef<HTMLInputElement, AutoSuggestionInputProps>(
522
555
  )}
523
556
  </div>
524
557
  );
525
- }
558
+ },
526
559
  );
527
560
 
528
561
  export default React.memo(AutoComplete);
@@ -106,6 +106,7 @@ const ModernAutoComplete: React.FC<AutoSuggestionInputProps> = ({
106
106
  const [selectedIndex, setSelectedIndex] = useState(0);
107
107
  const itemRefs = useRef<(HTMLLIElement | null)[]>([]);
108
108
  const scrollContainerRef = useRef<HTMLUListElement | null>(null);
109
+ const isSelectingRef = useRef(false);
109
110
  const [dropPosition, setDropPosition] = useState<any>({
110
111
  top: 0,
111
112
  left: 0,
@@ -329,6 +330,7 @@ const ModernAutoComplete: React.FC<AutoSuggestionInputProps> = ({
329
330
  setIsDisabled(disabled);
330
331
  }, [disabled]);
331
332
  const handleSuggestionClick = (suggestion: valueProps, index: number) => {
333
+ isSelectingRef.current = true;
332
334
  onChange({
333
335
  ...suggestion,
334
336
  id: suggestion?.id,
@@ -338,6 +340,10 @@ const ModernAutoComplete: React.FC<AutoSuggestionInputProps> = ({
338
340
  if (type !== 'custom_select') setInputValue(suggestion.name);
339
341
  setDropOpen(false);
340
342
  setSelectedIndex(index);
343
+ // Reset flag after a short delay to allow blur handler to check it
344
+ setTimeout(() => {
345
+ isSelectingRef.current = false;
346
+ }, 100);
341
347
  };
342
348
  const handleOpen = (e: any) => {
343
349
  if (!suggestions || suggestions?.length === 0) {
@@ -490,6 +496,12 @@ const ModernAutoComplete: React.FC<AutoSuggestionInputProps> = ({
490
496
  // return 'bottom'
491
497
  // }
492
498
  const selectExactMatchFromSuggestions = () => {
499
+ // If user is clicking on dropdown, don't execute exact match logic
500
+ if (isSelectingRef.current) {
501
+ isSelectingRef.current = false;
502
+ return;
503
+ }
504
+
493
505
  if (!inputValue) {
494
506
  return;
495
507
  }
@@ -513,6 +525,7 @@ const ModernAutoComplete: React.FC<AutoSuggestionInputProps> = ({
513
525
  } else {
514
526
  // No exact match – notify parent with typed value
515
527
  onChange({ id: undefined, name: inputValue, from: 4 });
528
+ setInputValue('');
516
529
  }
517
530
  };
518
531
  const filteredData =
@@ -629,7 +642,18 @@ const ModernAutoComplete: React.FC<AutoSuggestionInputProps> = ({
629
642
 
630
643
  case 'Enter':
631
644
  e.preventDefault();
632
- handleSuggestionClick(filteredData[selectedIndex], selectedIndex);
645
+ if (filteredData[selectedIndex]) {
646
+ handleSuggestionClick(filteredData[selectedIndex], selectedIndex);
647
+ }
648
+ break;
649
+
650
+ case 'Tab':
651
+ // Tab should select highlighted item if dropdown is open
652
+ if (filteredData[selectedIndex]) {
653
+ isSelectingRef.current = true;
654
+ handleSuggestionClick(filteredData[selectedIndex], selectedIndex);
655
+ // Don't prevent default - allow Tab to move focus
656
+ }
633
657
  break;
634
658
 
635
659
  case 'Escape':
@@ -681,6 +705,10 @@ const ModernAutoComplete: React.FC<AutoSuggestionInputProps> = ({
681
705
  } cursor-pointer p-1 text-xxs ps-3.5 pl-[10px] qbs-autocomplete-suggections-items`}
682
706
  key={suggestion?.id}
683
707
  data-testid={suggestion.name}
708
+ onMouseDown={(e) => {
709
+ e.preventDefault(); // Prevent input blur before click
710
+ isSelectingRef.current = true;
711
+ }}
684
712
  onClick={() => handleSuggestionClick(suggestion, index)}
685
713
  tabIndex={index}
686
714
  ref={(el) => (itemRefs.current[index] = el)}
@@ -820,9 +848,25 @@ const ModernAutoComplete: React.FC<AutoSuggestionInputProps> = ({
820
848
  type="text"
821
849
  readOnly={readOnly ?? type === 'custom_select'}
822
850
  value={inputValue ? inputValue : ''}
823
- onBlur={() => {
824
- handleClearInputValue();
825
- selectExactMatchFromSuggestions();
851
+ onBlur={(e) => {
852
+ // Check immediately if user is selecting (Tab or click)
853
+ const wasSelecting = isSelectingRef.current;
854
+
855
+ // Delay to allow click events on dropdown to process first
856
+ setTimeout(() => {
857
+ // Check if focus moved to dropdown or if user is selecting
858
+ const relatedTarget = e.relatedTarget as Node;
859
+ if (
860
+ wasSelecting ||
861
+ (dropdownref.current &&
862
+ relatedTarget &&
863
+ dropdownref.current.contains(relatedTarget))
864
+ ) {
865
+ return; // User selected an item or focus moved to dropdown, don't execute exact match
866
+ }
867
+ handleClearInputValue();
868
+ selectExactMatchFromSuggestions();
869
+ }, 200);
826
870
  }}
827
871
  autoComplete="off"
828
872
  disabled={disabled}
@@ -88,7 +88,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
88
88
  fromPrefix,
89
89
  labelTitle,
90
90
  isModern = true,
91
- size = 'md'
91
+ size = 'md',
92
92
  }) => {
93
93
  const [inputValue, setInputValue] = useState<any>(value?.name ?? '');
94
94
  const [isHovered, setIsHovered] = useState<boolean>(false);
@@ -109,6 +109,8 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
109
109
  const itemRefs = useRef<(HTMLLIElement | null)[]>([]);
110
110
  const scrollContainerRef = useRef<HTMLUListElement | null>(null);
111
111
  const [refetchData, setRefetchData] = useState(false);
112
+
113
+ const isSelectingRef = useRef(false);
112
114
  const [dropPosition, setDropPosition] = useState<any>({
113
115
  top: 0,
114
116
  left: 0,
@@ -121,11 +123,11 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
121
123
  param1?: string | number,
122
124
  param2?: string | number,
123
125
  param3?: string | number,
124
- param4?: string | number
126
+ param4?: string | number,
125
127
  ): boolean => {
126
128
  const checkIncludesIfExists = (
127
129
  mainString?: string | number,
128
- substring?: string
130
+ substring?: string,
129
131
  ) => {
130
132
  return substring &&
131
133
  mainString &&
@@ -139,7 +141,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
139
141
  };
140
142
  const checkArrayContains = (
141
143
  strArray: string[] | undefined,
142
- param: string
144
+ param: string,
143
145
  ): boolean => strArray?.includes(param) ?? false;
144
146
 
145
147
  return (
@@ -196,9 +198,9 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
196
198
  timerRef.current = 1;
197
199
  }, 200);
198
200
  },
199
- isStaticList ? 0 : 1000
201
+ isStaticList ? 0 : 1000,
200
202
  ),
201
- []
203
+ [],
202
204
  );
203
205
  const handleDropData = (value?: string) => {
204
206
  if (type === 'auto_complete') {
@@ -212,8 +214,8 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
212
214
  value,
213
215
  item.param1,
214
216
  item.param2,
215
- item.param3
216
- )
217
+ item.param3,
218
+ ),
217
219
  )
218
220
  : data;
219
221
  setSuggestions(filteredData);
@@ -234,8 +236,8 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
234
236
  value,
235
237
  item.param1,
236
238
  item.param2,
237
- item.param3
238
- )
239
+ item.param3,
240
+ ),
239
241
  )
240
242
  : data;
241
243
  setSuggestions(filteredData);
@@ -337,6 +339,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
337
339
  setIsDisabled(disabled);
338
340
  }, [disabled]);
339
341
  const handleSuggestionClick = (suggestion: valueProps, index: number) => {
342
+ isSelectingRef.current = true;
340
343
  onChange({
341
344
  ...suggestion,
342
345
  id: suggestion?.id,
@@ -346,6 +349,10 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
346
349
  if (type !== 'custom_select') setInputValue(suggestion.name);
347
350
  setDropOpen(false);
348
351
  setSelectedIndex(index);
352
+ // Reset flag after a short delay to allow blur handler to check it
353
+ setTimeout(() => {
354
+ isSelectingRef.current = false;
355
+ }, 100);
349
356
  };
350
357
  const handleOpen = (e: any) => {
351
358
  if (!suggestions || suggestions?.length === 0) handleDropData();
@@ -382,7 +389,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
382
389
  mainElement?.addEventListener('scroll', handleScroll);
383
390
 
384
391
  const gridElements = document.querySelectorAll(
385
- '.k-grid-content, .overflow-auto, .overflow-y-auto, .overflow-x-auto'
392
+ '.k-grid-content, .overflow-auto, .overflow-y-auto, .overflow-x-auto',
386
393
  );
387
394
  gridElements.forEach((gridElement: any) => {
388
395
  gridElement.addEventListener('scroll', handleScroll);
@@ -433,7 +440,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
433
440
  return errMsg;
434
441
  };
435
442
  const generateClassName = (
436
- type: 'input' | 'label' | 'message' | 'adorement'
443
+ type: 'input' | 'label' | 'message' | 'adorement',
437
444
  ): string => {
438
445
  let className = propsClassName;
439
446
  switch (type) {
@@ -452,7 +459,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
452
459
  ' text-grey-dark border-input-light focus:border-blue-navy focus:outline-none focus:ring-0';
453
460
  }
454
461
 
455
- className += getHeight()
462
+ className += getHeight();
456
463
 
457
464
  break;
458
465
  case 'label':
@@ -462,16 +469,16 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
462
469
  ? 'cursor-pointer'
463
470
  : 'cursor-text peer-focus:cursor-pointer'
464
471
  } ${
465
- isDisabled && !checkIsEmptyField()
466
- ? 'disabled-input-label-bg'
467
- : !isDisabled || !checkIsEmptyField()
468
- ? 'active-input-label-bg'
469
- : ''
470
- } 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 ${
471
- isDisabled
472
- ? 'cursor-pointer'
473
- : 'cursor-text peer-focus:cursor-pointer'
474
- }
472
+ isDisabled && !checkIsEmptyField()
473
+ ? 'disabled-input-label-bg'
474
+ : !isDisabled || !checkIsEmptyField()
475
+ ? 'active-input-label-bg'
476
+ : ''
477
+ } 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 ${
478
+ isDisabled
479
+ ? 'cursor-pointer'
480
+ : 'cursor-text peer-focus:cursor-pointer'
481
+ }
475
482
  ${
476
483
  checkIsEmptyField()
477
484
  ? 'modern-input-label-size'
@@ -512,6 +519,12 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
512
519
  // return 'bottom'
513
520
  // }
514
521
  const selectExactMatchFromSuggestions = () => {
522
+ // If user is clicking on dropdown, don't execute exact match logic
523
+ if (isSelectingRef.current) {
524
+ isSelectingRef.current = false;
525
+ return;
526
+ }
527
+
515
528
  if (!inputValue) {
516
529
  return;
517
530
  }
@@ -535,6 +548,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
535
548
  } else {
536
549
  // No exact match – notify parent with typed value
537
550
  onChange({ id: undefined, name: inputValue, from: 4 });
551
+ setInputValue('');
538
552
  }
539
553
  };
540
554
  const filteredData =
@@ -549,8 +563,8 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
549
563
  item.param1 ?? '',
550
564
  item.param2 ?? '',
551
565
  item.param3 ?? '',
552
- item.param4 ?? ''
553
- )
566
+ item.param4 ?? '',
567
+ ),
554
568
  )
555
569
  : suggestions;
556
570
 
@@ -612,34 +626,34 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
612
626
  // Handle keyboard navigation
613
627
  const handleKeyDown = (e: KeyboardEvent) => {
614
628
  if (!dropOpen) return;
615
-
629
+
616
630
  const nextIndex =
617
631
  e.key === 'ArrowDown'
618
632
  ? (selectedIndex + 1) % filteredData.length
619
633
  : e.key === 'ArrowUp'
620
- ? (selectedIndex - 1 + filteredData.length) % filteredData.length
621
- : selectedIndex;
622
-
634
+ ? (selectedIndex - 1 + filteredData.length) % filteredData.length
635
+ : selectedIndex;
636
+
623
637
  switch (e.key) {
624
638
  case 'ArrowDown':
625
639
  case 'ArrowUp':
626
640
  e.preventDefault();
627
-
641
+
628
642
  // Update index first
629
643
  setSelectedIndex(nextIndex);
630
-
644
+
631
645
  // Wait for DOM update before scrolling
632
646
  requestAnimationFrame(() => {
633
647
  const el = itemRefs.current[nextIndex];
634
648
  const container = scrollContainerRef.current;
635
-
649
+
636
650
  if (el && container) {
637
651
  const elTop = el.offsetTop;
638
652
  const elBottom = elTop + el.offsetHeight;
639
-
653
+
640
654
  const containerTop = container.scrollTop;
641
655
  const containerBottom = containerTop + container.clientHeight;
642
-
656
+
643
657
  if (elBottom > containerBottom) {
644
658
  container.scrollTop = elBottom - container.clientHeight;
645
659
  } else if (elTop < containerTop) {
@@ -648,21 +662,32 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
648
662
  }
649
663
  });
650
664
  break;
651
-
665
+
652
666
  case 'Enter':
653
667
  e.preventDefault();
654
- handleSuggestionClick(filteredData[selectedIndex], selectedIndex);
668
+ if (filteredData[selectedIndex]) {
669
+ handleSuggestionClick(filteredData[selectedIndex], selectedIndex);
670
+ }
655
671
  break;
656
-
672
+
673
+ case 'Tab':
674
+ // Tab should select highlighted item if dropdown is open
675
+ if (filteredData[selectedIndex]) {
676
+ isSelectingRef.current = true;
677
+ handleSuggestionClick(filteredData[selectedIndex], selectedIndex);
678
+ // Don't prevent default - allow Tab to move focus
679
+ }
680
+ break;
681
+
657
682
  case 'Escape':
658
683
  e.preventDefault();
659
684
  setDropOpen(false);
660
685
  break;
661
-
686
+
662
687
  default:
663
688
  break;
664
689
  }
665
- };
690
+ };
666
691
 
667
692
  if (filteredData?.length > 0 && !isLoading) {
668
693
  window.addEventListener('keydown', handleKeyDown);
@@ -703,6 +728,10 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
703
728
  } cursor-pointer p-1 text-xxs ps-3.5 pl-[10px] qbs-autocomplete-suggections-items`}
704
729
  key={suggestion?.id}
705
730
  data-testid={suggestion.name}
731
+ onMouseDown={(e) => {
732
+ e.preventDefault(); // Prevent input blur before click
733
+ isSelectingRef.current = true;
734
+ }}
706
735
  onClick={() => handleSuggestionClick(suggestion, index)}
707
736
  tabIndex={index}
708
737
  ref={(el) => (itemRefs.current[index] = el)}
@@ -843,9 +872,25 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
843
872
  type="text"
844
873
  readOnly={readOnly ?? type === 'custom_select'}
845
874
  value={inputValue ? inputValue : ''}
846
- onBlur={() => {
847
- handleClearInputValue();
848
- selectExactMatchFromSuggestions();
875
+ onBlur={(e) => {
876
+ // Check immediately if user is selecting (Tab or click)
877
+ const wasSelecting = isSelectingRef.current;
878
+
879
+ // Delay to allow click events on dropdown to process first
880
+ setTimeout(() => {
881
+ // Check if focus moved to dropdown or if user is selecting
882
+ const relatedTarget = e.relatedTarget as Node;
883
+ if (
884
+ wasSelecting ||
885
+ (dropdownref.current &&
886
+ relatedTarget &&
887
+ dropdownref.current.contains(relatedTarget))
888
+ ) {
889
+ return; // User selected an item or focus moved to dropdown, don't execute exact match
890
+ }
891
+ handleClearInputValue();
892
+ selectExactMatchFromSuggestions();
893
+ }, 200);
849
894
  }}
850
895
  autoComplete="off"
851
896
  disabled={disabled}
@@ -875,7 +920,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
875
920
  ? placeholder && isCustomPlaceholder
876
921
  ? placeholder
877
922
  : 'Type to search'
878
- : placeholder ?? '--Select--'
923
+ : (placeholder ?? '--Select--')
879
924
  }
880
925
  onFocus={onInputFocus}
881
926
  onClick={(e) => {
@@ -903,7 +948,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
903
948
  <div
904
949
  ref={adorementRef}
905
950
  className={`${generateClassName(
906
- 'adorement'
951
+ 'adorement',
907
952
  )} qbs-autocomplete-adorement auto-dorpdown-adorement mr-[1px] ${
908
953
  isLoading ? 'bg-white' : ''
909
954
  }`}
@@ -960,7 +1005,7 @@ const ModernAutoCompleteDropdown: React.FC<AutoSuggestionInputProps> = ({
960
1005
  {errors && errors[name] && (
961
1006
  <div
962
1007
  className={` text-error-label relative cursor-pointer ${generateClassName(
963
- 'message'
1008
+ 'message',
964
1009
  )}`}
965
1010
  onMouseEnter={() => setIsHovered(true)}
966
1011
  onMouseLeave={() => setIsHovered(false)}