react-core-ts 2.0.2 → 2.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -97,7 +97,7 @@ var dropdownFilterTabs_1 = __importDefault(require("./dropdownFilterTabs"));
97
97
  var AutoCompleteWithTabFilter = (0, react_1.forwardRef)(function (_a, ref) {
98
98
  var label = _a.label, onChange = _a.onChange, _b = _a.getData, getData = _b === void 0 ? function () { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {
99
99
  return [2 /*return*/, []];
100
- }); }); } : _b, _c = _a.data, data = _c === void 0 ? [] : _c, errors = _a.errors, _d = _a.required, required = _d === void 0 ? false : _d, name = _a.name, _e = _a.fullWidth, fullWidth = _e === void 0 ? false : _e, placeholder = _a.placeholder, id = _a.id, _f = _a.type, type = _f === void 0 ? 'custom_select' : _f, _g = _a.selectedItems, propsSeelctedItems = _g === void 0 ? [] : _g, _h = _a.readOnly, readOnly = _h === void 0 ? false : _h, _j = _a.disabled, disabled = _j === void 0 ? false : _j, value = _a.value, _k = _a.searchValue, propsSearchValue = _k === void 0 ? '' : _k, _l = _a.isMultiple, isMultiple = _l === void 0 ? false : _l, _m = _a.desc, desc = _m === void 0 ? 'name' : _m, _o = _a.descId, descId = _o === void 0 ? 'id' : _o, singleSelect = _a.singleSelect, className = _a.className, _p = _a.async, async = _p === void 0 ? false : _p, paginationEnabled = _a.paginationEnabled, _q = _a.initialLoad, initialLoad = _q === void 0 ? false : _q, actionLabel = _a.actionLabel, handleAction = _a.handleAction, nextBlock = _a.nextBlock, notDataMessage = _a.notDataMessage, initialDataMessage = _a.initialDataMessage, onFocus = _a.onFocus, onSearchValueChange = _a.onSearchValueChange, _r = _a.expandable, expandable = _r === void 0 ? false : _r, _s = _a.textCount, textCount = _s === void 0 ? 10 : _s, _t = _a.itemCount, itemCount = _t === void 0 ? 1 : _t, scrollRef = _a.scrollRef, _u = _a.countOnly, countOnly = _u === void 0 ? true : _u, _v = _a.typeOnlyFetch, typeOnlyFetch = _v === void 0 ? false : _v, _w = _a.tab, tab = _w === void 0 ? [] : _w, _x = _a.clearTabSwitch, clearTabSwitch = _x === void 0 ? false : _x, _y = _a.selectedRowLimit, selectedRowLimit = _y === void 0 ? 2 : _y, _z = _a.topMargin, topMargin = _z === void 0 ? 0 : _z, _0 = _a.currentTab, currentTab = _0 === void 0 ? 0 : _0, _1 = _a.selectedLabel, selectedLabel = _1 === void 0 ? '' : _1, _2 = _a.viewMode, viewMode = _2 === void 0 ? false : _2, handleUpdateParent = _a.handleUpdateParent, _3 = _a.shortCode, shortCode = _3 === void 0 ? '' : _3, _4 = _a.labelCode, labelCode = _4 === void 0 ? '' : _4, _5 = _a.tabInlineSearch, tabInlineSearch = _5 === void 0 ? true : _5, _6 = _a.matchFromStart, matchFromStart = _6 === void 0 ? false : _6, _7 = _a.autoDropdown, autoDropdown = _7 === void 0 ? false : _7, _8 = _a.enableSelectAll, enableSelectAll = _8 === void 0 ? false : _8, tabName = _a.tabName, _9 = _a.tabDesc, tabDesc = _9 === void 0 ? 'tabName' : _9, _10 = _a.tabDescId, tabDescId = _10 === void 0 ? 'tabId' : _10, _11 = _a.tabSelectedItems, tabSelectedItems = _11 === void 0 ? [] : _11, getTabData = _a.getTabData, tabData = _a.tabData, _12 = _a.toolTabs, toolTabs = _12 === void 0 ? [] : _12, _13 = _a.enableToolsTab, enableToolsTab = _13 === void 0 ? true : _13, _14 = _a.toolTabClearSwitch, toolTabClearSwitch = _14 === void 0 ? false : _14, onToolTabChange = _a.onToolTabChange, _15 = _a.autoRefreshMainDropdown, autoRefreshMainDropdown = _15 === void 0 ? true : _15;
100
+ }); }); } : _b, _c = _a.data, data = _c === void 0 ? [] : _c, errors = _a.errors, _d = _a.required, required = _d === void 0 ? false : _d, name = _a.name, _e = _a.fullWidth, fullWidth = _e === void 0 ? false : _e, placeholder = _a.placeholder, id = _a.id, _f = _a.type, type = _f === void 0 ? 'custom_select' : _f, _g = _a.selectedItems, propsSeelctedItems = _g === void 0 ? [] : _g, _h = _a.readOnly, readOnly = _h === void 0 ? false : _h, _j = _a.disabled, disabled = _j === void 0 ? false : _j, value = _a.value, _k = _a.searchValue, propsSearchValue = _k === void 0 ? '' : _k, _l = _a.isMultiple, isMultiple = _l === void 0 ? false : _l, _m = _a.desc, desc = _m === void 0 ? 'name' : _m, _o = _a.descId, descId = _o === void 0 ? 'id' : _o, singleSelect = _a.singleSelect, className = _a.className, _p = _a.async, async = _p === void 0 ? false : _p, paginationEnabled = _a.paginationEnabled, _q = _a.initialLoad, initialLoad = _q === void 0 ? false : _q, actionLabel = _a.actionLabel, handleAction = _a.handleAction, nextBlock = _a.nextBlock, notDataMessage = _a.notDataMessage, initialDataMessage = _a.initialDataMessage, onFocus = _a.onFocus, onSearchValueChange = _a.onSearchValueChange, _r = _a.expandable, expandable = _r === void 0 ? false : _r, _s = _a.textCount, textCount = _s === void 0 ? 10 : _s, _t = _a.itemCount, itemCount = _t === void 0 ? 1 : _t, scrollRef = _a.scrollRef, _u = _a.countOnly, countOnly = _u === void 0 ? true : _u, _v = _a.typeOnlyFetch, typeOnlyFetch = _v === void 0 ? false : _v, _w = _a.tab, tab = _w === void 0 ? [] : _w, _x = _a.clearTabSwitch, clearTabSwitch = _x === void 0 ? false : _x, _y = _a.selectedRowLimit, selectedRowLimit = _y === void 0 ? 2 : _y, _z = _a.topMargin, topMargin = _z === void 0 ? 0 : _z, _0 = _a.currentTab, currentTab = _0 === void 0 ? 0 : _0, _1 = _a.selectedLabel, selectedLabel = _1 === void 0 ? '' : _1, _2 = _a.viewMode, viewMode = _2 === void 0 ? false : _2, handleUpdateParent = _a.handleUpdateParent, _3 = _a.shortCode, shortCode = _3 === void 0 ? '' : _3, _4 = _a.labelCode, labelCode = _4 === void 0 ? '' : _4, _5 = _a.tabInlineSearch, tabInlineSearch = _5 === void 0 ? true : _5, _6 = _a.matchFromStart, matchFromStart = _6 === void 0 ? false : _6, _7 = _a.autoDropdown, autoDropdown = _7 === void 0 ? false : _7, _8 = _a.enableSelectAll, enableSelectAll = _8 === void 0 ? false : _8, tabName = _a.tabName, _9 = _a.tabDesc, tabDesc = _9 === void 0 ? 'tabName' : _9, _10 = _a.tabDescId, tabDescId = _10 === void 0 ? 'tabId' : _10, _11 = _a.tabSelectedItems, tabSelectedItems = _11 === void 0 ? [] : _11, getTabData = _a.getTabData, tabData = _a.tabData, _12 = _a.toolTabs, toolTabs = _12 === void 0 ? [] : _12, _13 = _a.enableToolsTab, enableToolsTab = _13 === void 0 ? true : _13, _14 = _a.toolTabClearSwitch, toolTabClearSwitch = _14 === void 0 ? false : _14, onToolTabChange = _a.onToolTabChange, _15 = _a.autoRefreshMainDropdown, autoRefreshMainDropdown = _15 === void 0 ? true : _15, _16 = _a.autoTabSelectAll, autoTabSelectAll = _16 === void 0 ? true : _16;
101
101
  var dropdownRef = (0, react_1.useRef)(null);
102
102
  var selItemRef = (0, react_1.useRef)(null);
103
103
  var itemsRef = (0, react_1.useRef)(null);
@@ -105,20 +105,21 @@ var AutoCompleteWithTabFilter = (0, react_1.forwardRef)(function (_a, ref) {
105
105
  var tabRef = (0, react_1.useRef)(null);
106
106
  var dropLevelRef = (0, react_1.useRef)('bottom');
107
107
  // State Hooks Section
108
- var _16 = (0, react_1.useState)(true), isInitialRender = _16[0], setIsInitialRender = _16[1];
109
- var _17 = (0, react_1.useState)(value), inputValue = _17[0], setInputValue = _17[1];
110
- var _18 = (0, react_1.useState)(propsSearchValue), searchValue = _18[0], setSearchValue = _18[1];
111
- var _19 = (0, react_1.useState)(''), searchOldValue = _19[0], setSearchOldValue = _19[1];
112
- var _20 = (0, react_1.useState)(1), nextPage = _20[0], setNextPage = _20[1];
113
- var _21 = (0, react_1.useState)(false), dropOpen = _21[0], setDropOpen = _21[1];
114
- var _22 = (0, react_1.useState)([]), selectedItems = _22[0], setSelectedItems = _22[1];
115
- var _23 = (0, react_1.useState)(propsSearchValue ? false : true), searchLoaded = _23[0], setSearchLoaded = _23[1];
116
- var _24 = (0, react_1.useState)(false), showAllSelected = _24[0], setShowAllSelected = _24[1];
117
- var _25 = (0, react_1.useState)(184), selHeight = _25[0], setSelHeight = _25[1];
118
- var _26 = (0, react_1.useState)(1), expandArrowClick = _26[0], setExpandArrowClick = _26[1];
119
- var _27 = (0, react_1.useState)(false), visible = _27[0], setVisible = _27[1];
120
- var _28 = (0, react_1.useState)(currentTab), activeTab = _28[0], setActiveTab = _28[1];
121
- var _29 = (0, react_1.useState)(0), focusedIndex = _29[0], setFocusedIndex = _29[1];
108
+ var _17 = (0, react_1.useState)(true), isInitialRender = _17[0], setIsInitialRender = _17[1];
109
+ var _18 = (0, react_1.useState)(value), inputValue = _18[0], setInputValue = _18[1];
110
+ var _19 = (0, react_1.useState)(propsSearchValue), searchValue = _19[0], setSearchValue = _19[1];
111
+ var _20 = (0, react_1.useState)(''), searchOldValue = _20[0], setSearchOldValue = _20[1];
112
+ var _21 = (0, react_1.useState)(1), nextPage = _21[0], setNextPage = _21[1];
113
+ var _22 = (0, react_1.useState)(false), dropOpen = _22[0], setDropOpen = _22[1];
114
+ var _23 = (0, react_1.useState)([]), selectedItems = _23[0], setSelectedItems = _23[1];
115
+ var _24 = (0, react_1.useState)(propsSearchValue ? false : true), searchLoaded = _24[0], setSearchLoaded = _24[1];
116
+ var _25 = (0, react_1.useState)(false), showAllSelected = _25[0], setShowAllSelected = _25[1];
117
+ var _26 = (0, react_1.useState)(184), selHeight = _26[0], setSelHeight = _26[1];
118
+ var _27 = (0, react_1.useState)(1), expandArrowClick = _27[0], setExpandArrowClick = _27[1];
119
+ var _28 = (0, react_1.useState)(false), visible = _28[0], setVisible = _28[1];
120
+ var lastEmittedSelectedRef = (0, react_1.useRef)(null);
121
+ var _29 = (0, react_1.useState)(currentTab), activeTab = _29[0], setActiveTab = _29[1];
122
+ var _30 = (0, react_1.useState)(0), focusedIndex = _30[0], setFocusedIndex = _30[1];
122
123
  var itemRefs = (0, react_1.useRef)([]);
123
124
  // API call for suggestions through a custom hook
124
125
  var inputRef = (0, react_1.useRef)(null);
@@ -126,24 +127,26 @@ var AutoCompleteWithTabFilter = (0, react_1.forwardRef)(function (_a, ref) {
126
127
  var inputSearchRef = (0, react_1.useRef)(null);
127
128
  var dropBtnRef = (0, react_1.useRef)(null);
128
129
  (0, react_1.useImperativeHandle)(ref, function () { return inputRef.current; });
129
- var _30 = (0, react_1.useState)({
130
+ var _31 = (0, react_1.useState)({
130
131
  top: 0,
131
132
  left: 0,
132
133
  width: 200,
133
134
  transform: '',
134
- }), dropdownStyle = _30[0], setDropdownStyle = _30[1];
135
- var _31 = (0, react_1.useState)(false), selectAll = _31[0], setSelectAll = _31[1];
136
- var _32 = (0, react_1.useState)(false), refetchData = _32[0], setRefetchData = _32[1];
137
- var _33 = (0, react_1.useState)(false), allDataLoaded = _33[0], setAllDataLoaded = _33[1];
135
+ }), dropdownStyle = _31[0], setDropdownStyle = _31[1];
136
+ var _32 = (0, react_1.useState)(false), selectAll = _32[0], setSelectAll = _32[1];
137
+ var _33 = (0, react_1.useState)(false), refetchData = _33[0], setRefetchData = _33[1];
138
+ var _34 = (0, react_1.useState)(false), allDataLoaded = _34[0], setAllDataLoaded = _34[1];
139
+ var _35 = (0, react_1.useState)(false), isKeyboardOpen = _35[0], setIsKeyboardOpen = _35[1];
138
140
  var toolsBtnRef = (0, react_1.useRef)(null);
139
- var _34 = (0, react_1.useState)(false), showToolsTab = _34[0], setShowToolsTab = _34[1];
141
+ var _36 = (0, react_1.useState)(false), showToolsTab = _36[0], setShowToolsTab = _36[1];
140
142
  // Track previous tabSelectedItems to detect new items
141
143
  var prevTabSelectedItemsRef = (0, react_1.useRef)([]);
144
+ var _37 = (0, react_1.useState)(false), applyTabFilter = _37[0], setApplyTabFilter = _37[1];
142
145
  var originalOverflow = '';
143
146
  var hasScrollbar = false;
144
- var _35 = (0, autosuggestions_1.useSuggestions)(getData, data, dropOpen, async, paginationEnabled, initialLoad, inputValue, isMultiple, setNextPage, selectedItems, typeOnlyFetch
147
+ var _38 = (0, autosuggestions_1.useSuggestions)(getData, data, dropOpen, async, paginationEnabled, initialLoad, inputValue, isMultiple, setNextPage, selectedItems, typeOnlyFetch
145
148
  // nextBlock
146
- ), suggestions = _35.suggestions, isLoading = _35.isLoading, handlePickSuggestions = _35.handlePickSuggestions, resetSuggections = _35.resetSuggections;
149
+ ), suggestions = _38.suggestions, isLoading = _38.isLoading, handlePickSuggestions = _38.handlePickSuggestions, resetSuggections = _38.resetSuggections;
147
150
  // Handling the selection of a suggestion
148
151
  var handleSuggestionClick = (0, react_1.useCallback)(function (suggestion, idx) {
149
152
  if (isMultiple) {
@@ -173,6 +176,7 @@ var AutoCompleteWithTabFilter = (0, react_1.forwardRef)(function (_a, ref) {
173
176
  onChange(suggestion);
174
177
  setDropOpen(false);
175
178
  setShowToolsTab(false);
179
+ setAllDataLoaded(false);
176
180
  }
177
181
  }, [tab, activeTab, descId, desc, onChange]);
178
182
  // Adding debounce to avoid making API calls on every keystroke
@@ -212,6 +216,12 @@ var AutoCompleteWithTabFilter = (0, react_1.forwardRef)(function (_a, ref) {
212
216
  }
213
217
  }, [isMultiple, descId, desc, onChange]);
214
218
  (0, react_1.useEffect)(function () {
219
+ // Avoid feedback loops: if props equal last emitted value, skip syncing to state
220
+ if (propsSeelctedItems &&
221
+ lastEmittedSelectedRef.current &&
222
+ (0, deepEqual_1.deepEqual)(propsSeelctedItems, lastEmittedSelectedRef.current)) {
223
+ return;
224
+ }
215
225
  // Only update if different
216
226
  if (!(0, deepEqual_1.deepEqual)(selectedItems, propsSeelctedItems)) {
217
227
  setSelectedItems(propsSeelctedItems);
@@ -252,6 +262,7 @@ var AutoCompleteWithTabFilter = (0, react_1.forwardRef)(function (_a, ref) {
252
262
  var _a;
253
263
  setSelectedItems([]);
254
264
  setShowAllSelected(false);
265
+ setShowToolsTab(false);
255
266
  if (searchValue && type === 'auto_suggestion' && tabInlineSearch) {
256
267
  setSearchValue('');
257
268
  }
@@ -271,43 +282,107 @@ var AutoCompleteWithTabFilter = (0, react_1.forwardRef)(function (_a, ref) {
271
282
  });
272
283
  }, []);
273
284
  var uniqueDropArrowId = "".concat(name, "-drop-arrow-selected-list-icon");
285
+ var isKeyboardOpenRef = (0, react_1.useRef)(false);
286
+ // Keep ref in sync with state for use in event handlers
287
+ (0, react_1.useEffect)(function () {
288
+ isKeyboardOpenRef.current = isKeyboardOpen;
289
+ }, [isKeyboardOpen]);
274
290
  (0, react_1.useEffect)(function () {
291
+ var handleScroll = function (event) {
292
+ // On mobile: Don't close dropdown on scroll when keyboard is open
293
+ // On desktop: Always allow closing on scroll
294
+ if (isKeyboardOpenRef.current) {
295
+ // Only prevent closing if keyboard is actually open (mobile scenario)
296
+ // Also check if input is focused to avoid closing while typing
297
+ var activeElement = document.activeElement;
298
+ if (activeElement && (activeElement === inputRef.current ||
299
+ activeElement === inputSearchRef.current ||
300
+ (dropRef.current && dropRef.current.contains(activeElement)))) {
301
+ return;
302
+ }
303
+ }
304
+ // Check if scroll is happening within the dropdown itself - if so, don't close
305
+ var scrollTarget = event.target;
306
+ if (dropRef.current && scrollTarget instanceof Node && dropRef.current.contains(scrollTarget)) {
307
+ return;
308
+ }
309
+ // On desktop (keyboard not open), close on scroll
310
+ if (dropRef.current && dropOpen) {
311
+ setTimeout(function () {
312
+ setDropOpen(false);
313
+ setShowToolsTab(false);
314
+ setAllDataLoaded(false);
315
+ if (!typeOnlyFetch)
316
+ setSearchValue('');
317
+ }, 200);
318
+ }
319
+ };
275
320
  var handleClickOutside = function (event) {
276
321
  var _a, _b;
277
- if (dropRef.current &&
278
- event.target instanceof Node &&
279
- !dropRef.current.contains(event.target) &&
280
- ((_a = event.target) === null || _a === void 0 ? void 0 : _a.id) !== uniqueDropArrowId &&
281
- !((_b = event.target) === null || _b === void 0 ? void 0 : _b.closest('.tools-drop-btn'))) {
322
+ var target = event.target;
323
+ // Always check if click is inside component container first
324
+ var insideComponent = dropdownRef.current ? dropdownRef.current.contains(target) : false;
325
+ // If clicking inside component, don't close (let onClick handlers handle it)
326
+ if (insideComponent) {
327
+ return;
328
+ }
329
+ // When keyboard is open, be more lenient - only close on clear outside clicks
330
+ if (isKeyboardOpenRef.current) {
331
+ // Only close if it's a clear click outside, not on input/textarea elements
332
+ if (dropRef.current &&
333
+ target instanceof Node &&
334
+ !dropRef.current.contains(target) &&
335
+ (target === null || target === void 0 ? void 0 : target.id) !== uniqueDropArrowId &&
336
+ !(target === null || target === void 0 ? void 0 : target.closest('.tools-drop-btn')) &&
337
+ event.type === 'mousedown' &&
338
+ target.closest &&
339
+ !target.closest('input') &&
340
+ !target.closest('textarea')) {
341
+ setTimeout(function () {
342
+ setDropOpen(false);
343
+ setShowToolsTab(false);
344
+ setAllDataLoaded(false);
345
+ if (!typeOnlyFetch)
346
+ setSearchValue('');
347
+ }, 200);
348
+ }
349
+ return;
350
+ }
351
+ // Normal behavior when keyboard is not open
352
+ var clickedToolsBtn = !!((_a = target === null || target === void 0 ? void 0 : target.closest) === null || _a === void 0 ? void 0 : _a.call(target, '.tools-drop-btn'));
353
+ var insideMainDropdown = dropRef.current ? dropRef.current.contains(target) : false;
354
+ var insideAnyDropdown = !!((_b = target === null || target === void 0 ? void 0 : target.closest) === null || _b === void 0 ? void 0 : _b.call(target, '.qbs-autocomplete-selected-suggestions'));
355
+ // Close only when click is outside both dropdowns and not on tools button
356
+ if (!insideMainDropdown && !insideAnyDropdown && !clickedToolsBtn) {
282
357
  setTimeout(function () {
283
358
  setDropOpen(false);
284
359
  setShowToolsTab(false);
360
+ setAllDataLoaded(false);
285
361
  if (!typeOnlyFetch)
286
362
  setSearchValue('');
287
363
  }, 200);
288
- //setSearchValue("");
289
364
  }
290
365
  };
291
366
  document.addEventListener('mousedown', handleClickOutside);
292
- window.addEventListener('scroll', handleClickOutside);
367
+ window.addEventListener('scroll', handleScroll);
293
368
  var scrollableDivs = document.querySelectorAll('div[style*="overflow"], .overflow-auto, .overflow-y-auto, .overflow-x-auto');
294
369
  scrollableDivs.forEach(function (div) {
295
- return div.addEventListener('scroll', handleClickOutside);
370
+ return div.addEventListener('scroll', handleScroll);
296
371
  });
297
372
  if (scrollRef && scrollRef.current && scrollRef.current !== null) {
298
- scrollRef.current.addEventListener('scroll', handleClickOutside);
373
+ scrollRef.current.addEventListener('scroll', handleScroll);
299
374
  }
300
375
  return function () {
301
376
  document.removeEventListener('mousedown', handleClickOutside);
302
- window.removeEventListener('scroll', handleClickOutside);
377
+ window.removeEventListener('scroll', handleScroll);
303
378
  scrollableDivs.forEach(function (div) {
304
- return div.removeEventListener('scroll', handleClickOutside);
379
+ return div.removeEventListener('scroll', handleScroll);
305
380
  });
306
381
  if (scrollRef && scrollRef.current && scrollRef.current !== null) {
307
- scrollRef.current.removeEventListener('scroll', handleClickOutside);
382
+ scrollRef.current.removeEventListener('scroll', handleScroll);
308
383
  }
309
384
  };
310
- }, []);
385
+ }, [dropOpen, typeOnlyFetch, uniqueDropArrowId]);
311
386
  // Filtering suggestions based on type and search value
312
387
  var selected = isMultiple ? selectedItems : inputValue;
313
388
  var filteredData = (0, filterSuggestions_1.filterSuggestions)(suggestions, searchValue, type, desc, selected, async, false, true, matchFromStart);
@@ -388,12 +463,31 @@ var AutoCompleteWithTabFilter = (0, react_1.forwardRef)(function (_a, ref) {
388
463
  window.removeEventListener('resize', adjustDropdownPosition);
389
464
  };
390
465
  }, [adjustDropdownPosition]);
466
+ // Detect keyboard open on mobile using Visual Viewport API
467
+ (0, react_1.useEffect)(function () {
468
+ var vv = window.visualViewport;
469
+ if (!vv)
470
+ return;
471
+ var onResize = function () {
472
+ // Heuristic: if visual viewport height shrinks a lot, keyboard is likely open
473
+ var open = vv.height < window.innerHeight - 100;
474
+ setIsKeyboardOpen(open);
475
+ };
476
+ vv.addEventListener("resize", onResize);
477
+ vv.addEventListener("scroll", onResize); // iOS sometimes fires scroll instead
478
+ onResize();
479
+ return function () {
480
+ vv.removeEventListener("resize", onResize);
481
+ vv.removeEventListener("scroll", onResize);
482
+ };
483
+ }, []);
391
484
  (0, react_1.useEffect)(function () {
392
485
  if (isInitialRender) {
393
486
  setIsInitialRender(false);
394
487
  }
395
488
  else {
396
489
  onChange(selectedItems);
490
+ lastEmittedSelectedRef.current = selectedItems;
397
491
  }
398
492
  adjustDropdownPosition();
399
493
  setTimeout(function () {
@@ -451,6 +545,7 @@ var AutoCompleteWithTabFilter = (0, react_1.forwardRef)(function (_a, ref) {
451
545
  case 'Escape':
452
546
  e.preventDefault();
453
547
  setDropOpen(false);
548
+ setAllDataLoaded(false);
454
549
  break;
455
550
  default:
456
551
  break;
@@ -518,12 +613,20 @@ var AutoCompleteWithTabFilter = (0, react_1.forwardRef)(function (_a, ref) {
518
613
  var allSelectedTooltipContent = (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 0
519
614
  ? selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.map(function (item) { return item[desc]; }).join(', ')
520
615
  : '';
521
- var setVisibleDrop = function () {
616
+ var setVisibleDrop = function (skipAnimation) {
617
+ if (skipAnimation === void 0) { skipAnimation = false; }
522
618
  hasScrollbar = document.body.scrollHeight > window.innerHeight;
523
619
  if (!originalOverflow && !hasScrollbar) {
524
620
  originalOverflow = document.body.style.overflow;
525
621
  document.body.style.overflow = 'hidden';
526
622
  }
623
+ // If skipAnimation is true (dropdown already open but not visible), just make it visible
624
+ if (skipAnimation && dropOpen) {
625
+ setVisible(true);
626
+ setFocusedIndex(0);
627
+ return;
628
+ }
629
+ // Normal opening animation
527
630
  setVisible(false);
528
631
  if (!dropOpen) {
529
632
  setDropOpen(true);
@@ -536,7 +639,7 @@ var AutoCompleteWithTabFilter = (0, react_1.forwardRef)(function (_a, ref) {
536
639
  document.body.style.overflow = originalOverflow || '';
537
640
  }
538
641
  originalOverflow = '';
539
- }, 200);
642
+ }, 100);
540
643
  };
541
644
  var handleTabClick = (0, react_1.useCallback)(function (index) {
542
645
  if (activeTab !== index) {
@@ -620,6 +723,24 @@ var AutoCompleteWithTabFilter = (0, react_1.forwardRef)(function (_a, ref) {
620
723
  }
621
724
  }, [isMultiple, selectAll, filteredData, descId]);
622
725
  var handleOpenDropdown = (0, react_1.useCallback)(function (e) {
726
+ if (!tabInlineSearch) {
727
+ // Toggle the main dropdown when not using inline search
728
+ if (dropOpen && visible && allDataLoaded) {
729
+ // If dropdown is open and visible, close it
730
+ setDropOpen(false);
731
+ setVisible(false);
732
+ setAllDataLoaded(false);
733
+ return;
734
+ }
735
+ else if (!dropOpen) {
736
+ // If dropdown is closed, open it
737
+ setVisibleDrop(false);
738
+ }
739
+ else if (dropOpen && !visible) {
740
+ // If dropdown is open but not visible, make it visible
741
+ setVisible(true);
742
+ }
743
+ }
623
744
  if (!suggestions || (suggestions === null || suggestions === void 0 ? void 0 : suggestions.length) === 0 || refetchData) {
624
745
  if (autoDropdown && (inputValue === '' || inputValue.trim() === '')) {
625
746
  if (tabInlineSearch && tab.length > 0) {
@@ -644,11 +765,47 @@ var AutoCompleteWithTabFilter = (0, react_1.forwardRef)(function (_a, ref) {
644
765
  setAllDataLoaded(false);
645
766
  }
646
767
  }
647
- }, [suggestions, refetchData, autoDropdown, inputValue, tabInlineSearch, tab, activeTab, handlePickSuggestions]);
768
+ }, [suggestions, refetchData, autoDropdown, inputValue, tabInlineSearch, tab, activeTab, handlePickSuggestions, dropOpen, visible]);
769
+ (0, react_1.useEffect)(function () {
770
+ if (applyTabFilter && !isLoading && suggestions) {
771
+ // Auto select all currently loaded suggestions (dedup by descId)
772
+ if (isMultiple && Array.isArray(suggestions) && autoTabSelectAll) {
773
+ setSelectedItems(function (prev) {
774
+ var existingIds = new Set((prev || []).map(function (item) { return (0, getKeyValue_1.getKeyValue)(item, descId, 'id'); }));
775
+ var toAdd = [];
776
+ suggestions.forEach(function (s) {
777
+ var sid = (0, getKeyValue_1.getKeyValue)(s, descId, 'id');
778
+ if (!existingIds.has(sid)) {
779
+ toAdd.push(s);
780
+ }
781
+ });
782
+ return toAdd.length > 0 ? __spreadArray(__spreadArray([], prev, true), toAdd, true) : prev;
783
+ });
784
+ }
785
+ // Clear tabSelectedItems after applying filter and data is loaded
786
+ onToolTabChange === null || onToolTabChange === void 0 ? void 0 : onToolTabChange([]);
787
+ setShowToolsTab(false);
788
+ // Open dropdown immediately when data is ready (tools tab was open so dropdown is closed)
789
+ if (!dropOpen) {
790
+ setVisibleDrop(false); // Full animation for closed dropdown
791
+ }
792
+ else if (dropOpen && !visible) {
793
+ // If for some reason dropdown is open but not visible, just make it visible
794
+ setVisible(true);
795
+ }
796
+ setApplyTabFilter(false);
797
+ }
798
+ }, [applyTabFilter, isLoading, suggestions, onToolTabChange, isMultiple, descId, dropOpen, visible]);
648
799
  var handleOpenToolsTab = (0, react_1.useCallback)(function (e) {
649
800
  setShowToolsTab(showToolsTab ? false : true);
650
801
  setDropOpen(false);
802
+ setAllDataLoaded(false);
651
803
  }, [showToolsTab]);
804
+ var handleApplyTabFilter = (0, react_1.useCallback)(function () {
805
+ // Set flag to trigger effect when data loads
806
+ setApplyTabFilter(true);
807
+ handlePickSuggestions(searchValue ? searchValue : '*', 1);
808
+ }, [searchValue, handlePickSuggestions]);
652
809
  (0, react_1.useEffect)(function () {
653
810
  var allSelected = (filteredData === null || filteredData === void 0 ? void 0 : filteredData.length) > 0 && (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 0 &&
654
811
  filteredData.every(function (item) {
@@ -692,7 +849,7 @@ var AutoCompleteWithTabFilter = (0, react_1.forwardRef)(function (_a, ref) {
692
849
  marginBottom: 5,
693
850
  display: 'flex',
694
851
  justifyContent: 'space-between',
695
- } }, { children: [(0, jsx_runtime_1.jsxs)("label", __assign({ className: "labels label-text" }, { children: [label, required && (0, jsx_runtime_1.jsx)("span", __assign({ className: "text-error" }, { children: " *" }))] })), (0, jsx_runtime_1.jsx)("span", __assign({ onClick: function () { return handleAction === null || handleAction === void 0 ? void 0 : handleAction(); }, className: "action_label" }, { children: actionLabel }))] }))), (0, jsx_runtime_1.jsxs)("div", __assign({ className: "qbs-relative qbs-autocomplete-selected-comp ".concat(expandable ? 'qbs-expandable-container' : 'qbs-container') }, { children: [((selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 0 || !tabInlineSearch) && ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: !countOnly ? (getSelectedItems(false)) : !tabInlineSearch ? ((0, jsx_runtime_1.jsx)("div", __assign({ className: "selected-items-counter-container qbs-text-sm qbs-gap-1" }, { children: (0, jsx_runtime_1.jsx)(NewTooltip_1.default, __assign({ title: allSelectedTooltipContent, enabled: (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 0 ? true : false }, { children: (0, jsx_runtime_1.jsx)("span", __assign({ className: "badge qbs-rounded-full qbs-text-xs qbs-inline-flex qbs-items-center qbs-justify-center qbs-px-2 qbs-py-1 qbs-leading-none qbs-min-w-6 qbs-min-h-6" }, { children: selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length })) })) }))) : ((0, jsx_runtime_1.jsxs)("div", __assign({ className: "selected-items-container qbs-text-sm qbs-gap-1", onClick: function () { return onInputFocus(); } }, { children: [(0, jsx_runtime_1.jsx)("span", __assign({ className: "badge qbs-rounded-full qbs-text-xs qbs-inline-flex qbs-items-center qbs-justify-center qbs-px-2 qbs-py-1 qbs-leading-none qbs-min-w-6 qbs-min-h-6 ".concat((selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 99 ? 'qbs-text-hundred-plus' : '') }, { children: (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 99 ? '99+' : selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length })), (0, jsx_runtime_1.jsx)("span", __assign({ className: "selected-label-text" }, { children: selectedLabel && selectedLabel !== '' ? (selectedLabel) : ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: ["Item", (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 1 && 's', " Selected"] })) }))] }))) })), (0, jsx_runtime_1.jsx)("div", __assign({ className: "qbs-textfield-expandable ".concat(!expandable ? 'qbs-normal' : ''), "data-value": (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 0 || searchValue
852
+ } }, { children: [(0, jsx_runtime_1.jsxs)("label", __assign({ className: "labels label-text" }, { children: [label, required && (0, jsx_runtime_1.jsx)("span", __assign({ className: "text-error" }, { children: " *" }))] })), (0, jsx_runtime_1.jsx)("span", __assign({ onClick: function () { return handleAction === null || handleAction === void 0 ? void 0 : handleAction(); }, className: "action_label" }, { children: actionLabel }))] }))), (0, jsx_runtime_1.jsxs)("div", __assign({ className: "qbs-relative qbs-autocomplete-selected-comp ".concat(expandable ? 'qbs-expandable-container' : 'qbs-container') }, { children: [((selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 0 || !tabInlineSearch) && ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: !countOnly ? (getSelectedItems(false)) : !tabInlineSearch ? ((0, jsx_runtime_1.jsx)("div", __assign({ className: "selected-items-counter-container selected-item-inline-counter qbs-text-sm qbs-gap-1 ".concat(!tabInlineSearch && autoDropdown ? 'selected-item-tool-direct-counter' : '') }, { children: (0, jsx_runtime_1.jsx)(NewTooltip_1.default, __assign({ title: allSelectedTooltipContent, enabled: (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 0 ? true : false }, { children: (0, jsx_runtime_1.jsx)("span", __assign({ className: "badge qbs-rounded-full qbs-text-xs qbs-inline-flex qbs-items-center qbs-justify-center qbs-px-2 qbs-py-1 qbs-leading-none qbs-min-w-6 qbs-min-h-6" }, { children: selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length })) })) }))) : ((0, jsx_runtime_1.jsxs)("div", __assign({ className: "selected-items-container qbs-text-sm qbs-gap-1", onClick: function () { return onInputFocus(); } }, { children: [(0, jsx_runtime_1.jsx)("span", __assign({ className: "badge qbs-rounded-full qbs-text-xs qbs-inline-flex qbs-items-center qbs-justify-center qbs-px-2 qbs-py-1 qbs-leading-none qbs-min-w-6 qbs-min-h-6 ".concat((selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 99 ? 'qbs-text-hundred-plus' : '') }, { children: (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 99 ? '99+' : selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length })), (0, jsx_runtime_1.jsx)("span", __assign({ className: "selected-label-text" }, { children: selectedLabel && selectedLabel !== '' ? (selectedLabel) : ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: ["Item", (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 1 && 's', " Selected"] })) }))] }))) })), (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: autoDropdown && !tabInlineSearch && !disabled && !readOnly && ((0, jsx_runtime_1.jsx)("div", __assign({ className: 'qbs-inline-all-dropdown-btn' }, { children: (0, jsx_runtime_1.jsx)("button", __assign({ disabled: disabled !== null && disabled !== void 0 ? disabled : readOnly, onClick: function (e) { return handleOpenDropdown(e); }, className: "text-[#667085] focus-visible:outline-slate-100 absolute right-2 qbs-all-dropdown-btn", "data-testid": "drop-arrow", type: "button", id: "autocomplete-drop-icon", ref: dropBtnRef }, { children: (0, jsx_runtime_1.jsx)(icons_1.AllDropArrow, { type: !allDataLoaded ? 'down' : 'up', uniqueId: "all-dropdow-arrow-icon", className: "all-dropdow-arrow-icon" }) })) }))) }), (0, jsx_runtime_1.jsx)("div", __assign({ className: "qbs-textfield-expandable ".concat(!expandable ? 'qbs-normal' : ''), "data-value": (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 0 || searchValue
696
853
  ? !tabInlineSearch && searchValue
697
854
  ? searchValue
698
855
  : placeholder !== null && placeholder !== void 0 ? placeholder : ''
@@ -734,10 +891,11 @@ var AutoCompleteWithTabFilter = (0, react_1.forwardRef)(function (_a, ref) {
734
891
  nextBlock !== undefined &&
735
892
  (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" })) })))] })), (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: countOnly && (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 0 && ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsxs)("div", __assign({ className: "qbs-expandable-container qbs-dropdown-selected-container", ref: dropdownSelectedRef }, { children: [(0, jsx_runtime_1.jsxs)("div", __assign({ className: "qbs-flex qbs-w-full qbs-text-xs" }, { children: [(0, jsx_runtime_1.jsx)("div", __assign({ className: "qbs-selected-lbs qbs-flex-grow" }, { children: "Selected Items" })), (0, jsx_runtime_1.jsx)("div", __assign({ className: "qbs-clear-link qbs-text-right qbs-cursor-pointer ".concat(viewMode ? 'hidden' : ''), onClick: handleClearSelected }, { children: "Clear all" })), (0, jsx_runtime_1.jsx)("div", __assign({ className: "qbs-done-link qbs-text-right qbs-cursor-pointer ".concat(viewMode ? 'hidden' : ''), onClick: function () {
736
893
  setDropOpen(false);
894
+ setAllDataLoaded(false);
737
895
  } }, { children: "Done" }))] })), getSelectedItems(true), (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > itemCount &&
738
896
  showAllSelected && ((0, jsx_runtime_1.jsx)("div", __assign({ className: "qbs-readmore-collapse" }, { children: (0, jsx_runtime_1.jsx)("div", __assign({ className: "qbs-more-collapse", onClick: function () {
739
897
  handleCollapseArrowClick();
740
- } }, { children: (0, jsx_runtime_1.jsx)(icons_1.DropArrow, { className: "icon-button-rotate", uniqueDropArrowId: uniqueDropArrowId }) })) }))) })] })) })) })] })), document.body), enableToolsTab && ((0, jsx_runtime_1.jsx)(dropdownFilterTabs_1.default, { label: "", name: tabName !== null && tabName !== void 0 ? tabName : '', desc: tabDesc, descId: tabDescId, type: "auto_suggestion", dropdownRef: dropdownRef, async: true, isMultiple: true, typeOnlyFetch: true, itemCount: itemCount, textCount: textCount, getData: getTabData, placeholder: "", selectedItems: tabSelectedItems, onChange: onToolTabChange, countOnly: true, tab: toolTabs, clearTabSwitch: toolTabClearSwitch, tabInlineSearch: true, autoDropdown: autoDropdown, open: showToolsTab, data: tabData, enableSelectAll: enableSelectAll }))] })), errors && ((0, jsx_runtime_1.jsx)("div", __assign({ className: "text-error text-error-label mt-[1px]", "data-testid": "autocomplete-error" }, { children: errors.message })))] })));
898
+ } }, { children: (0, jsx_runtime_1.jsx)(icons_1.DropArrow, { className: "icon-button-rotate", uniqueDropArrowId: uniqueDropArrowId }) })) }))) })] })) })) })] })), document.body), enableToolsTab && ((0, jsx_runtime_1.jsx)(dropdownFilterTabs_1.default, { label: "", name: tabName !== null && tabName !== void 0 ? tabName : '', desc: tabDesc, descId: tabDescId, type: "auto_suggestion", dropdownRef: dropdownRef, async: true, isMultiple: true, typeOnlyFetch: true, itemCount: itemCount, textCount: textCount, getData: getTabData, placeholder: "", selectedItems: tabSelectedItems, onChange: onToolTabChange, countOnly: true, tab: toolTabs, clearTabSwitch: toolTabClearSwitch, tabInlineSearch: true, autoDropdown: autoDropdown, open: showToolsTab, data: tabData, enableSelectAll: enableSelectAll, applyTabFilter: handleApplyTabFilter, onToolClose: function () { return setShowToolsTab(false); } }))] })), errors && ((0, jsx_runtime_1.jsx)("div", __assign({ className: "text-error text-error-label mt-[1px]", "data-testid": "autocomplete-error" }, { children: errors.message })))] })));
741
899
  });
742
900
  exports.default = react_1.default.memo(AutoCompleteWithTabFilter);
743
901
  //# sourceMappingURL=AutoCompleteWithTabFilter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AutoCompleteWithTabFilter.js","sourceRoot":"","sources":["../src/AutoCompleteWithTabFilter.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AutoCompleteWithTabFilter.js","sourceRoot":"","sources":["../src/AutoCompleteWithTabFilter.tsx"],"names":[],"mappings":"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"}