react-core-ts 2.1.11 → 2.1.12

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.
@@ -121,46 +121,8 @@ var ExpandableAutoComplete = (0, react_1.forwardRef)(function (_a, ref) {
121
121
  var dropRef = (0, react_1.useRef)(null);
122
122
  var typeRef = (0, react_1.useRef)(0);
123
123
  (0, react_1.useImperativeHandle)(ref, function () { return inputRef.current; });
124
- var _10 = (0, react_1.useState)({
125
- top: 0,
126
- left: 0,
127
- width: 200,
128
- }), dropdownStyle = _10[0], setDropdownStyle = _10[1];
129
- var adjustDropdownPosition = function () {
130
- if (dropdownRef.current) {
131
- var inputRect = dropdownRef.current.getBoundingClientRect();
132
- var dropdownPosition_1 = {
133
- left: inputRect.left + window.scrollX,
134
- width: inputRect.width,
135
- top: 0,
136
- };
137
- // Check if there's enough space below the input for the dropdown
138
- var spaceBelow = window.innerHeight - inputRect.bottom;
139
- var spaceAbove = inputRect.top + window.scrollY;
140
- var dropdownHeight = 275; // Assume a fixed height or calculate based on content
141
- if (spaceBelow >= dropdownHeight) {
142
- dropdownPosition_1.top =
143
- inputRect.top + window.scrollY + inputRect.height;
144
- }
145
- else {
146
- dropdownHeight =
147
- dropdownHeight +
148
- ((filteredData === null || filteredData === void 0 ? void 0 : filteredData.length) > 0 && enableSelectAll && isMultiple
149
- ? 32
150
- : 0);
151
- dropdownPosition_1.top =
152
- inputRect.top + window.scrollY - dropdownHeight + 73;
153
- }
154
- setDropdownStyle(function (prev) {
155
- if (prev.top === dropdownPosition_1.top &&
156
- prev.left === dropdownPosition_1.left &&
157
- prev.width === dropdownPosition_1.width) {
158
- return prev;
159
- }
160
- return dropdownPosition_1;
161
- });
162
- }
163
- };
124
+ var _10 = (0, react_1.useState)(null), dropdownStyle = _10[0], setDropdownStyle = _10[1];
125
+ var isPositionCalculatedRef = (0, react_1.useRef)(false);
164
126
  var _11 = (0, autosuggestions_1.useSuggestions)(getData, data, dropOpen, async, paginationEnabled, initialLoad, inputValue, isMultiple, setNextPage, selectedItems, typeOnlyFetch
165
127
  // nextBlock
166
128
  ), suggestions = _11.suggestions, isLoading = _11.isLoading, handlePickSuggestions = _11.handlePickSuggestions;
@@ -336,22 +298,71 @@ var ExpandableAutoComplete = (0, react_1.forwardRef)(function (_a, ref) {
336
298
  isTreeDropdown,
337
299
  matchFromStart,
338
300
  ]);
339
- (0, react_1.useEffect)(function () {
301
+ var adjustDropdownPosition = (0, react_1.useCallback)(function () {
302
+ if (dropdownRef.current) {
303
+ var inputRect = dropdownRef.current.getBoundingClientRect();
304
+ var dropdownPosition_1 = {
305
+ left: inputRect.left + window.scrollX,
306
+ width: inputRect.width,
307
+ top: 0,
308
+ };
309
+ // Check if there's enough space below the input for the dropdown
310
+ var spaceBelow = window.innerHeight - inputRect.bottom;
311
+ var spaceAbove = inputRect.top + window.scrollY;
312
+ var dropdownHeight = 275; // Assume a fixed height or calculate based on content
313
+ if (spaceBelow >= dropdownHeight) {
314
+ dropdownPosition_1.top =
315
+ inputRect.top + window.scrollY + inputRect.height;
316
+ }
317
+ else {
318
+ dropdownHeight =
319
+ dropdownHeight +
320
+ ((filteredData === null || filteredData === void 0 ? void 0 : filteredData.length) > 0 && enableSelectAll && isMultiple
321
+ ? 32
322
+ : 0);
323
+ dropdownPosition_1.top =
324
+ inputRect.top + window.scrollY - dropdownHeight + 73;
325
+ }
326
+ setDropdownStyle(function (prev) {
327
+ if (prev &&
328
+ prev.top === dropdownPosition_1.top &&
329
+ prev.left === dropdownPosition_1.left &&
330
+ prev.width === dropdownPosition_1.width) {
331
+ return prev;
332
+ }
333
+ isPositionCalculatedRef.current = true;
334
+ return dropdownPosition_1;
335
+ });
336
+ }
337
+ }, [filteredData === null || filteredData === void 0 ? void 0 : filteredData.length, enableSelectAll, isMultiple]);
338
+ // Use useLayoutEffect to calculate position synchronously before paint to prevent flicker
339
+ (0, react_1.useLayoutEffect)(function () {
340
340
  if (!dropOpen) {
341
+ isPositionCalculatedRef.current = false;
342
+ setDropdownStyle(null);
341
343
  return;
342
344
  }
343
- window.addEventListener('resize', adjustDropdownPosition);
345
+ // Calculate position immediately when dropdown opens
346
+ isPositionCalculatedRef.current = false;
344
347
  adjustDropdownPosition();
345
- return function () {
346
- window.removeEventListener('resize', adjustDropdownPosition);
347
- };
348
348
  }, [
349
349
  dropOpen,
350
350
  selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length,
351
351
  filteredData === null || filteredData === void 0 ? void 0 : filteredData.length,
352
352
  enableSelectAll,
353
353
  isMultiple,
354
+ adjustDropdownPosition,
354
355
  ]);
356
+ // Separate effect for resize listener (only when dropdown is open)
357
+ (0, react_1.useEffect)(function () {
358
+ if (!dropOpen) {
359
+ return;
360
+ }
361
+ window.addEventListener('resize', adjustDropdownPosition);
362
+ return function () {
363
+ window.removeEventListener('resize', adjustDropdownPosition);
364
+ };
365
+ }, [dropOpen, adjustDropdownPosition]);
355
366
  (0, react_1.useEffect)(function () {
356
367
  // Handle keyboard navigation
357
368
  var handleKeyDown = function (e) {
@@ -542,9 +553,6 @@ var ExpandableAutoComplete = (0, react_1.forwardRef)(function (_a, ref) {
542
553
  var lineHeight = parseFloat(computedStyle.lineHeight) || 20;
543
554
  var singleLineThreshold = paddingTop + paddingBottom + borderTop + borderBottom + lineHeight + 20;
544
555
  var isSingle = el.scrollHeight <= singleLineThreshold;
545
- console.log(singleLineThreshold, 'singleLineThreshold');
546
- console.log(el.scrollHeight, 'el.scrollHeight');
547
- console.log(isSingle, 'isSingle');
548
556
  // Only update if value changed
549
557
  if (isExpandableSingleLineRef.current !== isSingle) {
550
558
  isExpandableSingleLineRef.current = isSingle;
@@ -573,7 +581,7 @@ var ExpandableAutoComplete = (0, react_1.forwardRef)(function (_a, ref) {
573
581
  // onBlur={handleBlur}
574
582
  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 ||
575
583
  type === 'custom_select' ||
576
- (type === 'auto_suggestion' && !expandable), disabled: disabled, "data-testid": "custom-autocomplete" }) })), (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: autoDropdown && !disabled && !readOnly && ((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: !dropOpen ? 'down' : 'up', uniqueId: "all-dropdow-arrow-icon", className: "all-dropdow-arrow-icon" }) }))) }), (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 1 && ((0, jsx_runtime_1.jsx)("div", __assign({ id: "expandable-clear-all", className: "qbs-clear-link qbs-text-right qbs-cursor-pointer qbs-text-xs absolute right-2 qbs-bottom-0 ".concat(autoDropdown && isExpandableSingleLine ? 'qbs-clear-with-auto-dropdown' : ''), onClick: handleClearSelected }, { children: "Clear all" }))), (0, jsx_runtime_1.jsx)(InputActions_1.default, { inputValue: inputValue, searchValue: searchValue, dropOpen: dropOpen, handleDropOpen: handleDropOpen, handleDropClose: handleDropClose, disabled: disabled, readOnly: readOnly, expandable: expandable, handleClear: handleClear, uniqueDropArrowId: "drop-arrow-expanded-list-icon", autoDropdown: autoDropdown }), dropOpen &&
584
+ (type === 'auto_suggestion' && !expandable), disabled: disabled, "data-testid": "custom-autocomplete" }) })), (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: autoDropdown && !disabled && !readOnly && ((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: !dropOpen ? 'down' : 'up', uniqueId: "all-dropdow-arrow-icon", className: "all-dropdow-arrow-icon" }) }))) }), (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 1 && ((0, jsx_runtime_1.jsx)("div", __assign({ id: "expandable-clear-all", className: "qbs-clear-link qbs-text-right qbs-cursor-pointer qbs-text-xs absolute right-2 qbs-bottom-0 ".concat(autoDropdown && isExpandableSingleLine ? 'qbs-clear-with-auto-dropdown' : ''), onClick: handleClearSelected }, { children: "Clear all" }))), (0, jsx_runtime_1.jsx)(InputActions_1.default, { inputValue: inputValue, searchValue: searchValue, dropOpen: dropOpen, handleDropOpen: handleDropOpen, handleDropClose: handleDropClose, disabled: disabled, readOnly: readOnly, expandable: expandable, handleClear: handleClear, uniqueDropArrowId: "drop-arrow-expanded-list-icon", autoDropdown: autoDropdown }), dropOpen && dropdownStyle &&
577
585
  react_dom_1.default.createPortal((0, jsx_runtime_1.jsxs)("ul", __assign({ ref: dropRef, style: __assign(__assign({}, dropdownStyle), { minHeight: 192 }), className: "qbs-autocomplete-suggestions qbs-autocomplete-suggestions-expandable", id: id
578
586
  ? "autocomplete-dropdown-".concat(id)
579
587
  : "autocomplete-dropdown-".concat(name) }, { children: [type === 'auto_suggestion' && !expandable && ((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, placeholder: "Type to search", autoComplete: "off" })] }))), (filteredData === null || filteredData === void 0 ? void 0 : filteredData.length) > 0 && enableSelectAll && isMultiple && ((0, jsx_runtime_1.jsx)("div", __assign({ id: "select-all", className: "qbs-select-all-link qbs-cursor-pointer qbs-text-xs", onClick: handleSelectAll }, { children: (0, jsx_runtime_1.jsxs)("div", __assign({ className: "qbs-autocomplete-listitem-container qbs-autocomplete-checkbox-container" }, { children: [(0, jsx_runtime_1.jsxs)("div", __assign({ className: "qbs-autocomplete-checkbox" }, { children: [(0, jsx_runtime_1.jsx)("input", { type: "checkbox", checked: selectAll, onChange: handleSelectAll, id: "qbs-checkbox-all" }), (0, jsx_runtime_1.jsx)("label", __assign({ htmlFor: "qbs-checkbox-all" }, { 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)("div", __assign({ className: "qbs-autocomplete-suggestions-item" }, { children: "Select All" }))] })) }))), (0, jsx_runtime_1.jsx)("div", __assign({ className: "qbs-autocomplete-suggestions-expandable-container" }, { children: (0, jsx_runtime_1.jsxs)("div", __assign({ className: "qbs-autocomplete-suggestions-sub qbs-autocomplete-suggestions-outer", ref: itemsRef }, { children: [(filteredData === null || filteredData === void 0 ? void 0 : filteredData.length) > 0 ? (filteredData.map(function (suggestion, idx) { return ((0, jsx_runtime_1.jsx)(DropdownList_1.default, { idx: idx, suggestion: suggestion, isSelected: isSelected, handleSuggestionClick: function () {
@@ -1 +1 @@
1
- {"version":3,"file":"ExpandableAutoComplete.js","sourceRoot":"","sources":["../src/ExpandableAutoComplete.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExpandableAutoComplete.js","sourceRoot":"","sources":["../src/ExpandableAutoComplete.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.11",
3
+ "version": "2.1.12",
4
4
  "description": "React Components",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -97,50 +97,12 @@ const ExpandableAutoComplete = forwardRef<
97
97
  const dropRef = useRef(null);
98
98
  const typeRef = useRef(0);
99
99
  useImperativeHandle(ref, () => inputRef.current);
100
- const [dropdownStyle, setDropdownStyle] = useState({
101
- top: 0,
102
- left: 0,
103
- width: 200,
104
- });
105
-
106
- const adjustDropdownPosition = () => {
107
- if (dropdownRef.current) {
108
- const inputRect = dropdownRef.current.getBoundingClientRect();
109
- const dropdownPosition = {
110
- left: inputRect.left + window.scrollX,
111
- width: inputRect.width,
112
- top: 0,
113
- };
114
- // Check if there's enough space below the input for the dropdown
115
- const spaceBelow = window.innerHeight - inputRect.bottom;
116
- const spaceAbove = inputRect.top + window.scrollY;
117
-
118
- let dropdownHeight = 275; // Assume a fixed height or calculate based on content
119
- if (spaceBelow >= dropdownHeight) {
120
- dropdownPosition.top =
121
- inputRect.top + window.scrollY + inputRect.height;
122
- } else {
123
- dropdownHeight =
124
- dropdownHeight +
125
- (filteredData?.length > 0 && enableSelectAll && isMultiple
126
- ? 32
127
- : 0);
128
- dropdownPosition.top =
129
- inputRect.top + window.scrollY - dropdownHeight + 73;
130
- }
131
-
132
- setDropdownStyle((prev) => {
133
- if (
134
- prev.top === dropdownPosition.top &&
135
- prev.left === dropdownPosition.left &&
136
- prev.width === dropdownPosition.width
137
- ) {
138
- return prev;
139
- }
140
- return dropdownPosition;
141
- });
142
- }
143
- };
100
+ const [dropdownStyle, setDropdownStyle] = useState<{
101
+ top: number;
102
+ left: number;
103
+ width: number;
104
+ } | null>(null);
105
+ const isPositionCalculatedRef = useRef(false);
144
106
 
145
107
  const { suggestions, isLoading, handlePickSuggestions } = useSuggestions(
146
108
  getData,
@@ -359,24 +321,78 @@ const ExpandableAutoComplete = forwardRef<
359
321
  matchFromStart,
360
322
  ]);
361
323
 
362
- useEffect(() => {
324
+ const adjustDropdownPosition = useCallback(() => {
325
+ if (dropdownRef.current) {
326
+ const inputRect = dropdownRef.current.getBoundingClientRect();
327
+ const dropdownPosition = {
328
+ left: inputRect.left + window.scrollX,
329
+ width: inputRect.width,
330
+ top: 0,
331
+ };
332
+ // Check if there's enough space below the input for the dropdown
333
+ const spaceBelow = window.innerHeight - inputRect.bottom;
334
+ const spaceAbove = inputRect.top + window.scrollY;
335
+
336
+ let dropdownHeight = 275; // Assume a fixed height or calculate based on content
337
+ if (spaceBelow >= dropdownHeight) {
338
+ dropdownPosition.top =
339
+ inputRect.top + window.scrollY + inputRect.height;
340
+ } else {
341
+ dropdownHeight =
342
+ dropdownHeight +
343
+ (filteredData?.length > 0 && enableSelectAll && isMultiple
344
+ ? 32
345
+ : 0);
346
+ dropdownPosition.top =
347
+ inputRect.top + window.scrollY - dropdownHeight + 73;
348
+ }
349
+
350
+ setDropdownStyle((prev) => {
351
+ if (
352
+ prev &&
353
+ prev.top === dropdownPosition.top &&
354
+ prev.left === dropdownPosition.left &&
355
+ prev.width === dropdownPosition.width
356
+ ) {
357
+ return prev;
358
+ }
359
+ isPositionCalculatedRef.current = true;
360
+ return dropdownPosition;
361
+ });
362
+ }
363
+ }, [filteredData?.length, enableSelectAll, isMultiple]);
364
+
365
+ // Use useLayoutEffect to calculate position synchronously before paint to prevent flicker
366
+ useLayoutEffect(() => {
363
367
  if (!dropOpen) {
368
+ isPositionCalculatedRef.current = false;
369
+ setDropdownStyle(null);
364
370
  return;
365
371
  }
366
- window.addEventListener('resize', adjustDropdownPosition);
372
+ // Calculate position immediately when dropdown opens
373
+ isPositionCalculatedRef.current = false;
367
374
  adjustDropdownPosition();
368
-
369
- return () => {
370
- window.removeEventListener('resize', adjustDropdownPosition);
371
- };
372
375
  }, [
373
376
  dropOpen,
374
377
  selectedItems?.length,
375
378
  filteredData?.length,
376
379
  enableSelectAll,
377
380
  isMultiple,
381
+ adjustDropdownPosition,
378
382
  ]);
379
383
 
384
+ // Separate effect for resize listener (only when dropdown is open)
385
+ useEffect(() => {
386
+ if (!dropOpen) {
387
+ return;
388
+ }
389
+ window.addEventListener('resize', adjustDropdownPosition);
390
+
391
+ return () => {
392
+ window.removeEventListener('resize', adjustDropdownPosition);
393
+ };
394
+ }, [dropOpen, adjustDropdownPosition]);
395
+
380
396
  useEffect(() => {
381
397
  // Handle keyboard navigation
382
398
  const handleKeyDown = (e: any) => {
@@ -596,9 +612,6 @@ const ExpandableAutoComplete = forwardRef<
596
612
  const singleLineThreshold = paddingTop + paddingBottom + borderTop + borderBottom + lineHeight + 20;
597
613
  const isSingle = el.scrollHeight <= singleLineThreshold;
598
614
 
599
- console.log(singleLineThreshold, 'singleLineThreshold')
600
- console.log(el.scrollHeight, 'el.scrollHeight')
601
- console.log(isSingle, 'isSingle')
602
615
  // Only update if value changed
603
616
  if (isExpandableSingleLineRef.current !== isSingle) {
604
617
  isExpandableSingleLineRef.current = isSingle;
@@ -768,7 +781,7 @@ const ExpandableAutoComplete = forwardRef<
768
781
 
769
782
  {/* Suggestions Dropdown */}
770
783
 
771
- {dropOpen &&
784
+ {dropOpen && dropdownStyle &&
772
785
  ReactDOM.createPortal(
773
786
  <ul
774
787
  ref={dropRef}