react-core-ts 2.1.6 → 2.1.8

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.
@@ -80,26 +80,47 @@ var ModernAutoCompleteSuggections = function (_a) {
80
80
  var _p = (0, react_1.useState)(data !== null && data !== void 0 ? data : []), items = _p[0], setItems = _p[1];
81
81
  var _q = (0, react_1.useState)(false), isLoading = _q[0], setIsLoading = _q[1];
82
82
  var _r = (0, react_1.useState)(false), showDropdown = _r[0], setShowDropdown = _r[1];
83
- var _s = (0, react_1.useState)(false), isHovered = _s[0], setIsHovered = _s[1];
84
- var _t = (0, react_1.useState)({
83
+ var _s = (0, react_1.useState)(false), isFocused = _s[0], setIsFocused = _s[1];
84
+ var _t = (0, react_1.useState)(false), isHovered = _t[0], setIsHovered = _t[1];
85
+ var _u = (0, react_1.useState)({
85
86
  top: 0,
86
87
  left: 0,
87
88
  bottom: 0,
88
89
  right: 0,
89
- }), dropPosition = _t[0], setDropPosition = _t[1];
90
+ }), dropPosition = _u[0], setDropPosition = _u[1];
90
91
  var getDataRef = (0, react_1.useRef)(getData);
91
- var _u = (0, react_1.useState)(false), hasTyped = _u[0], setHasTyped = _u[1];
92
+ var _v = (0, react_1.useState)(false), hasTyped = _v[0], setHasTyped = _v[1];
92
93
  var inputRef = (0, react_1.useRef)(null);
93
94
  var adorementRef = (0, react_1.useRef)(null);
94
95
  var containerRef = (0, react_1.useRef)(null);
96
+ var isExternalUpdateRef = (0, react_1.useRef)(false);
97
+ var previousDebouncedValueRef = (0, react_1.useRef)('');
95
98
  // keep latest getData in a ref so we don't re-trigger effects on every render
96
99
  (0, react_1.useEffect)(function () {
97
100
  getDataRef.current = getData;
98
101
  }, [getData]);
99
- // Keep internal state in sync when used as a controlled component
100
102
  (0, react_1.useEffect)(function () {
101
103
  if (value !== undefined) {
102
- setInputValue(value);
104
+ var valueStr = String(value !== null && value !== void 0 ? value : '');
105
+ var inputValueStr = String(inputValue !== null && inputValue !== void 0 ? inputValue : '');
106
+ if (valueStr !== inputValueStr) {
107
+ if (hasTyped) {
108
+ var isExternalUpdate = !inputValueStr ||
109
+ (!valueStr.startsWith(inputValueStr) && !inputValueStr.startsWith(valueStr));
110
+ if (isExternalUpdate) {
111
+ isExternalUpdateRef.current = true;
112
+ setInputValue(valueStr);
113
+ setDebouncedInputValue(valueStr);
114
+ setHasTyped(false);
115
+ }
116
+ }
117
+ else {
118
+ // User hasn't typed yet, safe to sync from prop
119
+ isExternalUpdateRef.current = true;
120
+ setInputValue(valueStr);
121
+ setDebouncedInputValue(valueStr);
122
+ }
123
+ }
103
124
  }
104
125
  }, [value]);
105
126
  // Sync external data prop
@@ -169,14 +190,26 @@ var ModernAutoCompleteSuggections = function (_a) {
169
190
  cancelled = true;
170
191
  };
171
192
  }, [debouncedInputValue, data]);
172
- // Notify parent via onChange when debounced value changes
193
+ // Notify parent via onChange when debounced value changes (only from user input)
173
194
  (0, react_1.useEffect)(function () {
174
195
  if (!hasTyped)
175
196
  return;
176
197
  if (!onChange)
177
198
  return;
178
- onChange(debouncedInputValue);
179
- }, [debouncedInputValue, onChange]);
199
+ // Don't call onChange if the change came from external value prop update
200
+ if (isExternalUpdateRef.current) {
201
+ isExternalUpdateRef.current = false;
202
+ previousDebouncedValueRef.current = debouncedInputValue;
203
+ return;
204
+ }
205
+ var currentValue = debouncedInputValue.trim();
206
+ var previousValue = previousDebouncedValueRef.current.trim();
207
+ if (currentValue !== '' || previousValue !== '') {
208
+ onChange(debouncedInputValue);
209
+ }
210
+ // Update previous value ref
211
+ previousDebouncedValueRef.current = debouncedInputValue;
212
+ }, [debouncedInputValue, onChange, hasTyped]);
180
213
  // Group by desc field and compute counts
181
214
  var grouped = (0, react_1.useMemo)(function () {
182
215
  var map = new Map();
@@ -224,9 +257,22 @@ var ModernAutoCompleteSuggections = function (_a) {
224
257
  return visible;
225
258
  }, [hasTyped, items.length, grouped, visible]);
226
259
  // Update dropdown visibility based on visible items from typing
260
+ // Only auto-update when user has typed; otherwise let onFocus handle it
261
+ (0, react_1.useEffect)(function () {
262
+ if (hasTyped) {
263
+ setShowDropdown(visible.length > 0);
264
+ }
265
+ }, [visible.length, hasTyped]);
266
+ // Show dropdown when data loads and input is focused (prevents flicker)
227
267
  (0, react_1.useEffect)(function () {
228
- setShowDropdown(visible.length > 0);
229
- }, [visible.length]);
268
+ if (isFocused && !hasTyped && effectiveVisible.length > 0) {
269
+ // Calculate position before showing dropdown to prevent flicker
270
+ if (!insideOpen && (inputRef === null || inputRef === void 0 ? void 0 : inputRef.current)) {
271
+ getDropPosition();
272
+ }
273
+ setShowDropdown(true);
274
+ }
275
+ }, [isFocused, hasTyped, effectiveVisible.length, insideOpen]);
230
276
  // Handle click outside to close dropdown
231
277
  var handleClickOutside = function (event) {
232
278
  if (containerRef.current &&
@@ -396,16 +442,24 @@ var ModernAutoCompleteSuggections = function (_a) {
396
442
  };
397
443
  }
398
444
  }, [showDropdown, insideOpen]);
399
- return ((0, jsx_runtime_1.jsxs)("div", __assign({ ref: containerRef, className: "flex flex-col gap-1 autocomplete-with-suggection ".concat(propsClassName || '') }, { 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), " "] }))), (0, jsx_runtime_1.jsxs)("div", __assign({ className: "flex relative w-full" }, { children: [(0, jsx_runtime_1.jsxs)("div", __assign({ className: "relative w-full", onMouseEnter: function () { }, onMouseLeave: function () { } }, { children: [(0, jsx_runtime_1.jsx)("input", { type: "text", id: id ? "custom-autocomplete-".concat(id) : "custom-autocomplete-".concat(name), name: name, value: inputValue ? inputValue : '', ref: inputRef, disabled: disabled, onFocus: function () {
445
+ return ((0, jsx_runtime_1.jsxs)("div", __assign({ ref: containerRef, className: "flex flex-col gap-1 autocomplete-with-suggection ".concat(propsClassName || '', " ").concat(effectiveVisible.length > 0 ? 'suggection-warning-container' : '') }, { 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), " "] }))), (0, jsx_runtime_1.jsxs)("div", __assign({ className: "flex relative w-full" }, { children: [(0, jsx_runtime_1.jsxs)("div", __assign({ className: "relative w-full", onMouseEnter: function () { }, onMouseLeave: function () { } }, { children: [(0, jsx_runtime_1.jsx)("input", { type: "text", id: id ? "custom-autocomplete-".concat(id) : "custom-autocomplete-".concat(name), name: name, value: inputValue ? inputValue : '', ref: inputRef, disabled: disabled, onFocus: function () {
446
+ setIsFocused(true);
447
+ // Calculate position before showing dropdown to prevent flicker
448
+ if (!insideOpen && (inputRef === null || inputRef === void 0 ? void 0 : inputRef.current)) {
449
+ getDropPosition();
450
+ }
400
451
  // show suggestions when the field gains focus.
401
452
  if (!disabled && effectiveVisible.length > 0) {
402
453
  setShowDropdown(true);
403
454
  }
455
+ }, onBlur: function () {
456
+ setIsFocused(false);
404
457
  }, onChange: function (e) {
405
458
  var val = e.target.value;
459
+ isExternalUpdateRef.current = false;
406
460
  setInputValue(val);
407
461
  setHasTyped(true);
408
- }, onBlur: function () { }, placeholder: placeholder, autoComplete: "off", "data-testid": "custom-autocomplete-suggestions", "aria-describedby": id, style: {
462
+ }, placeholder: placeholder, autoComplete: "off", "data-testid": "custom-autocomplete-suggestions", "aria-describedby": id, style: {
409
463
  paddingRight: getInnerWidth(),
410
464
  }, className: " ".concat(generateClassName('input')) }), isModern && ((0, jsx_runtime_1.jsxs)("label", __assign({ htmlFor: id !== null && id !== void 0 ? id : name, onClick: function () { return onLabelClick(); }, className: generateClassName('label') }, { children: [label ? (0, jsx_runtime_1.jsx)("span", __assign({ className: "truncate" }, { children: label })) : '', required ? (0, jsx_runtime_1.jsx)("span", __assign({ className: "text-error" }, { children: " *" })) : (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, {})] })))] })), (0, jsx_runtime_1.jsx)("div", __assign({ className: "flex items-center justify-center" }, { children: (0, jsx_runtime_1.jsxs)("div", __assign({ ref: adorementRef, className: "".concat(generateClassName('adorement'), " qbs-autocomplete-adorement custom-dorpdown-adorement mr-[1px] ").concat(isLoading ? 'bg-white' : '') }, { children: [isLoading && (0, jsx_runtime_1.jsx)(Spinner_1.default, {}), errors && errors[name] && ((0, jsx_runtime_1.jsx)("div", __assign({ className: " text-error-label relative cursor-pointer ".concat(generateClassName('message')), onMouseEnter: function () { return setIsHovered(true); }, onMouseLeave: function () { return setIsHovered(false); } }, { children: (0, jsx_runtime_1.jsx)(customIcons_1.default, { name: "alert", type: "medium" }) }))), showWarningIcon && effectiveVisible.length > 0 && ((0, jsx_runtime_1.jsx)("div", __assign({ className: "text-warning-label relative mr-1 ".concat(generateClassName('warning')) }, { children: (0, jsx_runtime_1.jsx)(customIcons_1.default, { name: "alert", type: "medium" }) })))] })) }))] }))] })), showDropdown && effectiveVisible.length > 0 && ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: insideOpen ? ((0, jsx_runtime_1.jsx)("div", __assign({ className: "suggection-list" }, { children: (0, jsx_runtime_1.jsx)("div", __assign({ className: "bg-white border border-grey-light shadow-gray-300 shadow-md rounded-sm max-h-40 overflow-auto text-[11px] text-gray-700 px-3.5 py-1.5" }, { children: effectiveVisible.map(function (g) { return ((0, jsx_runtime_1.jsx)(SuggestionItem, { name: g.name, count: g.count, showCount: g.count > 0 }, g.name)); }) })) }))) : ((0, jsx_runtime_1.jsx)(portal_1.default, { children: (0, jsx_runtime_1.jsx)("div", __assign({ className: "autocomplete-suggections autosuggection-list suggection-list bg-white shadow-gray-300 shadow-md border border-grey-light z-50", style: dropPosition }, { children: (0, jsx_runtime_1.jsx)("div", __assign({ className: "h-auto max-h-40 overflow-auto w-full py-1.5" }, { children: effectiveVisible.map(function (g) { return ((0, jsx_runtime_1.jsx)("div", __assign({ className: "px-3.5 text-gray-700 suggection-item" }, { children: (0, jsx_runtime_1.jsx)(SuggestionItem, { name: g.name, count: g.count, showCount: g.count > 0 }) }), g.name)); }) })) })) })) }))] })));
411
465
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ReactAutoCompleteSuggections.js","sourceRoot":"","sources":["../src/ReactAutoCompleteSuggections.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ReactAutoCompleteSuggections.js","sourceRoot":"","sources":["../src/ReactAutoCompleteSuggections.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.6",
3
+ "version": "2.1.8",
4
4
  "description": "React Components",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -123,6 +123,7 @@ const ModernAutoCompleteSuggections: React.FC<
123
123
  const [items, setItems] = useState<SuggestionItem[]>(data ?? []);
124
124
  const [isLoading, setIsLoading] = useState(false);
125
125
  const [showDropdown, setShowDropdown] = useState(false);
126
+ const [isFocused, setIsFocused] = useState(false);
126
127
  const [isHovered, setIsHovered] = useState<boolean>(false);
127
128
  const [dropPosition, setDropPosition] = useState<any>({
128
129
  top: 0,
@@ -135,16 +136,38 @@ const ModernAutoCompleteSuggections: React.FC<
135
136
  const inputRef = useRef<HTMLInputElement>(null);
136
137
  const adorementRef = useRef<HTMLDivElement>(null);
137
138
  const containerRef = useRef<HTMLDivElement>(null);
139
+ const isExternalUpdateRef = useRef(false);
140
+ const previousDebouncedValueRef = useRef<string>('');
138
141
 
139
142
  // keep latest getData in a ref so we don't re-trigger effects on every render
140
143
  useEffect(() => {
141
144
  getDataRef.current = getData;
142
145
  }, [getData]);
143
146
 
144
- // Keep internal state in sync when used as a controlled component
145
147
  useEffect(() => {
146
148
  if (value !== undefined) {
147
- setInputValue(value);
149
+ const valueStr = String(value ?? '');
150
+ const inputValueStr = String(inputValue ?? '');
151
+
152
+ if (valueStr !== inputValueStr) {
153
+ if (hasTyped) {
154
+
155
+ const isExternalUpdate = !inputValueStr ||
156
+ (!valueStr.startsWith(inputValueStr) && !inputValueStr.startsWith(valueStr));
157
+
158
+ if (isExternalUpdate) {
159
+ isExternalUpdateRef.current = true;
160
+ setInputValue(valueStr);
161
+ setDebouncedInputValue(valueStr);
162
+ setHasTyped(false);
163
+ }
164
+ } else {
165
+ // User hasn't typed yet, safe to sync from prop
166
+ isExternalUpdateRef.current = true;
167
+ setInputValue(valueStr);
168
+ setDebouncedInputValue(valueStr);
169
+ }
170
+ }
148
171
  }
149
172
  }, [value]);
150
173
 
@@ -207,12 +230,27 @@ const ModernAutoCompleteSuggections: React.FC<
207
230
  };
208
231
  }, [debouncedInputValue, data]);
209
232
 
210
- // Notify parent via onChange when debounced value changes
233
+ // Notify parent via onChange when debounced value changes (only from user input)
211
234
  useEffect(() => {
212
235
  if (!hasTyped) return;
213
236
  if (!onChange) return;
214
- onChange(debouncedInputValue);
215
- }, [debouncedInputValue, onChange]);
237
+ // Don't call onChange if the change came from external value prop update
238
+ if (isExternalUpdateRef.current) {
239
+ isExternalUpdateRef.current = false;
240
+ previousDebouncedValueRef.current = debouncedInputValue;
241
+ return;
242
+ }
243
+
244
+ const currentValue = debouncedInputValue.trim();
245
+ const previousValue = previousDebouncedValueRef.current.trim();
246
+
247
+ if (currentValue !== '' || previousValue !== '') {
248
+ onChange(debouncedInputValue);
249
+ }
250
+
251
+ // Update previous value ref
252
+ previousDebouncedValueRef.current = debouncedInputValue;
253
+ }, [debouncedInputValue, onChange, hasTyped]);
216
254
 
217
255
  // Group by desc field and compute counts
218
256
  const grouped = useMemo(() => {
@@ -263,9 +301,23 @@ const ModernAutoCompleteSuggections: React.FC<
263
301
  }, [hasTyped, items.length, grouped, visible]);
264
302
 
265
303
  // Update dropdown visibility based on visible items from typing
304
+ // Only auto-update when user has typed; otherwise let onFocus handle it
266
305
  useEffect(() => {
267
- setShowDropdown(visible.length > 0);
268
- }, [visible.length]);
306
+ if (hasTyped) {
307
+ setShowDropdown(visible.length > 0);
308
+ }
309
+ }, [visible.length, hasTyped]);
310
+
311
+ // Show dropdown when data loads and input is focused (prevents flicker)
312
+ useEffect(() => {
313
+ if (isFocused && !hasTyped && effectiveVisible.length > 0) {
314
+ // Calculate position before showing dropdown to prevent flicker
315
+ if (!insideOpen && inputRef?.current) {
316
+ getDropPosition();
317
+ }
318
+ setShowDropdown(true);
319
+ }
320
+ }, [isFocused, hasTyped, effectiveVisible.length, insideOpen]);
269
321
 
270
322
  // Handle click outside to close dropdown
271
323
  const handleClickOutside = (event: MouseEvent) => {
@@ -468,7 +520,7 @@ const ModernAutoCompleteSuggections: React.FC<
468
520
  return (
469
521
  <div
470
522
  ref={containerRef}
471
- className={`flex flex-col gap-1 autocomplete-with-suggection ${propsClassName || ''}`}
523
+ className={`flex flex-col gap-1 autocomplete-with-suggection ${propsClassName || ''} ${effectiveVisible.length > 0 ? 'suggection-warning-container' : ''}`}
472
524
  >
473
525
  {label && !isModern && (
474
526
  <div className="mb-3">
@@ -498,17 +550,25 @@ const ModernAutoCompleteSuggections: React.FC<
498
550
  ref={inputRef}
499
551
  disabled={disabled}
500
552
  onFocus={() => {
553
+ setIsFocused(true);
554
+ // Calculate position before showing dropdown to prevent flicker
555
+ if (!insideOpen && inputRef?.current) {
556
+ getDropPosition();
557
+ }
501
558
  // show suggestions when the field gains focus.
502
559
  if (!disabled && effectiveVisible.length > 0) {
503
560
  setShowDropdown(true);
504
561
  }
505
562
  }}
563
+ onBlur={() => {
564
+ setIsFocused(false);
565
+ }}
506
566
  onChange={(e) => {
507
567
  const val = e.target.value;
568
+ isExternalUpdateRef.current = false;
508
569
  setInputValue(val);
509
570
  setHasTyped(true);
510
571
  }}
511
- onBlur={() => {}}
512
572
  placeholder={placeholder}
513
573
  autoComplete="off"
514
574
  data-testid="custom-autocomplete-suggestions"