react-core-ts 1.5.7 → 1.6.0
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.
- package/dist/AutoCompleteWithSelectedList.js +12 -9
- package/dist/AutoCompleteWithSelectedList.js.map +1 -1
- package/dist/ReactAutoCompleteDropdown.d.ts +47 -0
- package/dist/ReactAutoCompleteDropdown.js +620 -0
- package/dist/ReactAutoCompleteDropdown.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/docs/App.tsx +17 -1
- package/package.json +1 -1
- package/src/AutoCompleteWithSelectedList.tsx +73 -61
- package/src/ReactAutoCompleteDropdown.tsx +892 -0
- package/src/index.tsx +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReactAutoCompleteDropdown.js","sourceRoot":"","sources":["../src/ReactAutoCompleteDropdown.tsx"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -13,3 +13,4 @@ export { default as ModernTextField } from './ReactTextField';
|
|
|
13
13
|
export { deepEqual } from './utilities/deepEqual';
|
|
14
14
|
export { default as ExpandableToolTip } from './utilities/expandableTootltip';
|
|
15
15
|
export { default as ToolTip } from './utilities/tooltip';
|
|
16
|
+
export { default as ModernAutoCompleteDropdown } from './ReactAutoCompleteDropdown';
|
package/dist/index.js
CHANGED
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.ToolTip = exports.ExpandableToolTip = exports.deepEqual = exports.ModernTextField = exports.ModernTextArea = exports.ModernRadio = exports.ModernOtpInput = exports.ModernCheckBox = exports.ModernAutoComplete = exports.ExpandableAutoComplete = exports.AutoCompleteWithTreeStructure = exports.AutoCompleteWithSelectedList = exports.CustomAutoComplete = exports.AutoComplete = void 0;
|
|
6
|
+
exports.ModernAutoCompleteDropdown = exports.ToolTip = exports.ExpandableToolTip = exports.deepEqual = exports.ModernTextField = exports.ModernTextArea = exports.ModernRadio = exports.ModernOtpInput = exports.ModernCheckBox = exports.ModernAutoComplete = exports.ExpandableAutoComplete = exports.AutoCompleteWithTreeStructure = exports.AutoCompleteWithSelectedList = exports.CustomAutoComplete = exports.AutoComplete = void 0;
|
|
7
7
|
require("./styles/global.css");
|
|
8
8
|
var AutoComplete_1 = require("./AutoComplete");
|
|
9
9
|
Object.defineProperty(exports, "AutoComplete", { enumerable: true, get: function () { return __importDefault(AutoComplete_1).default; } });
|
|
@@ -32,4 +32,6 @@ var expandableTootltip_1 = require("./utilities/expandableTootltip");
|
|
|
32
32
|
Object.defineProperty(exports, "ExpandableToolTip", { enumerable: true, get: function () { return __importDefault(expandableTootltip_1).default; } });
|
|
33
33
|
var tooltip_1 = require("./utilities/tooltip");
|
|
34
34
|
Object.defineProperty(exports, "ToolTip", { enumerable: true, get: function () { return __importDefault(tooltip_1).default; } });
|
|
35
|
+
var ReactAutoCompleteDropdown_1 = require("./ReactAutoCompleteDropdown");
|
|
36
|
+
Object.defineProperty(exports, "ModernAutoCompleteDropdown", { enumerable: true, get: function () { return __importDefault(ReactAutoCompleteDropdown_1).default; } });
|
|
35
37
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":";;;;;;AAAA,+BAA6B;AAE7B,+CAGwB;AAFtB,6HAAA,OAAO,OAAgB;AACvB,mIAAA,OAAO,OAAsB;AAE/B,+EAAyF;AAAhF,6JAAA,OAAO,OAAgC;AAChD,iFAA2F;AAAlF,+JAAA,OAAO,OAAiC;AAEjD,mEAA6E;AAApE,iJAAA,OAAO,OAA0B;AAC1C,yDAAoE;AAA3D,wIAAA,OAAO,OAAsB;AACtC,iDAA4D;AAAnD,gIAAA,OAAO,OAAkB;AAClC,iDAA4D;AAAnD,gIAAA,OAAO,OAAkB;AAClC,uDAA4D;AAAnD,gIAAA,OAAO,OAAe;AAC/B,iDAA4D;AAAnD,gIAAA,OAAO,OAAkB;AAClC,mDAA8D;AAArD,kIAAA,OAAO,OAAmB;AACnC,mDAAkD;AAAzC,sGAAA,SAAS,OAAA;AAClB,qEAA8E;AAArE,wIAAA,OAAO,OAAqB;AACrC,+CAAyD;AAAhD,mHAAA,OAAO,OAAW"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":";;;;;;AAAA,+BAA6B;AAE7B,+CAGwB;AAFtB,6HAAA,OAAO,OAAgB;AACvB,mIAAA,OAAO,OAAsB;AAE/B,+EAAyF;AAAhF,6JAAA,OAAO,OAAgC;AAChD,iFAA2F;AAAlF,+JAAA,OAAO,OAAiC;AAEjD,mEAA6E;AAApE,iJAAA,OAAO,OAA0B;AAC1C,yDAAoE;AAA3D,wIAAA,OAAO,OAAsB;AACtC,iDAA4D;AAAnD,gIAAA,OAAO,OAAkB;AAClC,iDAA4D;AAAnD,gIAAA,OAAO,OAAkB;AAClC,uDAA4D;AAAnD,gIAAA,OAAO,OAAe;AAC/B,iDAA4D;AAAnD,gIAAA,OAAO,OAAkB;AAClC,mDAA8D;AAArD,kIAAA,OAAO,OAAmB;AACnC,mDAAkD;AAAzC,sGAAA,SAAS,OAAA;AAClB,qEAA8E;AAArE,wIAAA,OAAO,OAAqB;AACrC,+CAAyD;AAAhD,mHAAA,OAAO,OAAW;AAC3B,yEAAoF;AAA3E,wJAAA,OAAO,OAA8B"}
|
package/docs/App.tsx
CHANGED
|
@@ -6,6 +6,7 @@ import {
|
|
|
6
6
|
AutoCompleteWithTreeStructure,
|
|
7
7
|
ExpandableAutoComplete,
|
|
8
8
|
ModernAutoComplete,
|
|
9
|
+
ModernAutoCompleteDropdown,
|
|
9
10
|
} from '../src/index';
|
|
10
11
|
import ModernTextArea from '../src/ReactTextArea';
|
|
11
12
|
import TextField from '../src/ReactTextField';
|
|
@@ -36,7 +37,7 @@ export default function App() {
|
|
|
36
37
|
const getDatas = (keyName?: string) => {
|
|
37
38
|
return fetch(
|
|
38
39
|
keyName
|
|
39
|
-
? `https://jsonplaceholder.typicode.com/posts?title_like=${keyName}`
|
|
40
|
+
? `https://jsonplaceholder.typicode.com/posts?title_like=${keyName === '*' ? '' : keyName}`
|
|
40
41
|
: `https://jsonplaceholder.typicode.com/posts`
|
|
41
42
|
)
|
|
42
43
|
.then((res) => res.json())
|
|
@@ -103,6 +104,21 @@ export default function App() {
|
|
|
103
104
|
onChange={(e) => console.log(e, 'onchange')}
|
|
104
105
|
/>
|
|
105
106
|
</div>
|
|
107
|
+
|
|
108
|
+
<div style={{ width: 300 }}>
|
|
109
|
+
<ModernAutoCompleteDropdown
|
|
110
|
+
name="sample"
|
|
111
|
+
label="TextField"
|
|
112
|
+
id="id"
|
|
113
|
+
type="auto_complete"
|
|
114
|
+
placeholder="TextField"
|
|
115
|
+
required
|
|
116
|
+
getData={getDatas}
|
|
117
|
+
onChange={(e) => console.log(e, 'onchange')}
|
|
118
|
+
/>
|
|
119
|
+
</div>
|
|
120
|
+
|
|
121
|
+
|
|
106
122
|
<div className="autocomplete-section">
|
|
107
123
|
<h2>Expandable Auto Suggestion</h2>
|
|
108
124
|
<p>
|
package/package.json
CHANGED
|
@@ -1,4 +1,11 @@
|
|
|
1
|
-
import React, {
|
|
1
|
+
import React, {
|
|
2
|
+
forwardRef,
|
|
3
|
+
useCallback,
|
|
4
|
+
useEffect,
|
|
5
|
+
useImperativeHandle,
|
|
6
|
+
useRef,
|
|
7
|
+
useState,
|
|
8
|
+
} from 'react';
|
|
2
9
|
import ReactDOM from 'react-dom';
|
|
3
10
|
|
|
4
11
|
import { AutoSuggestionInputProps, TabPops, ValueProps } from './commontypes';
|
|
@@ -60,7 +67,7 @@ const AutoCompleteWithSelectedList = forwardRef<
|
|
|
60
67
|
selectedLabel = '',
|
|
61
68
|
viewMode = false,
|
|
62
69
|
handleUpdateParent,
|
|
63
|
-
shortCode = ''
|
|
70
|
+
shortCode = '',
|
|
64
71
|
},
|
|
65
72
|
ref
|
|
66
73
|
) => {
|
|
@@ -100,7 +107,7 @@ const AutoCompleteWithSelectedList = forwardRef<
|
|
|
100
107
|
|
|
101
108
|
let originalOverflow = '';
|
|
102
109
|
let hasScrollbar = false;
|
|
103
|
-
|
|
110
|
+
|
|
104
111
|
const adjustDropdownPosition = () => {
|
|
105
112
|
if (dropdownRef.current) {
|
|
106
113
|
const inputRect = dropdownRef.current.getBoundingClientRect();
|
|
@@ -114,7 +121,7 @@ const AutoCompleteWithSelectedList = forwardRef<
|
|
|
114
121
|
const spaceAbove = inputRect.top + window.scrollY;
|
|
115
122
|
|
|
116
123
|
let dropdownHeight = viewMode ? 160 : 300; // Assume a fixed height or calculate based on content
|
|
117
|
-
const defaultHeight = 184
|
|
124
|
+
const defaultHeight = 184;
|
|
118
125
|
|
|
119
126
|
if (countOnly) {
|
|
120
127
|
if (dropdownSelectedRef?.current)
|
|
@@ -128,22 +135,22 @@ const AutoCompleteWithSelectedList = forwardRef<
|
|
|
128
135
|
dropdownPosition.top =
|
|
129
136
|
inputRect.top + window.scrollY + inputRect.height;
|
|
130
137
|
|
|
131
|
-
setSelHeight(defaultHeight)
|
|
138
|
+
setSelHeight(defaultHeight);
|
|
132
139
|
} else if (spaceAbove >= dropdownHeight) {
|
|
133
140
|
dropLevelRef.current = 'top';
|
|
134
141
|
dropdownPosition.top =
|
|
135
142
|
inputRect.top + window.scrollY - dropdownHeight + 73 + topMargin;
|
|
136
143
|
|
|
137
|
-
setSelHeight(defaultHeight)
|
|
144
|
+
setSelHeight(defaultHeight);
|
|
138
145
|
} else {
|
|
139
146
|
dropLevelRef.current = 'bottom';
|
|
140
147
|
dropdownPosition.top =
|
|
141
148
|
inputRect.top + window.scrollY + inputRect.height;
|
|
142
149
|
|
|
143
|
-
if(itemsRef?.current) {
|
|
144
|
-
const totalH = showAllSelected ? 148 : defaultHeight
|
|
145
|
-
const selH =
|
|
146
|
-
setSelHeight(selH < 50 ? 50 : selH
|
|
150
|
+
if (itemsRef?.current) {
|
|
151
|
+
const totalH = showAllSelected ? 148 : defaultHeight;
|
|
152
|
+
const selH = totalH - (dropdownHeight - spaceBelow);
|
|
153
|
+
setSelHeight(selH < 50 ? 50 : selH);
|
|
147
154
|
}
|
|
148
155
|
}
|
|
149
156
|
// setDropdownStyle({
|
|
@@ -183,28 +190,31 @@ const AutoCompleteWithSelectedList = forwardRef<
|
|
|
183
190
|
);
|
|
184
191
|
|
|
185
192
|
// Handling the selection of a suggestion
|
|
186
|
-
const handleSuggestionClick = useCallback(
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
193
|
+
const handleSuggestionClick = useCallback(
|
|
194
|
+
(suggestion: ValueProps, idx: number) => {
|
|
195
|
+
if (isMultiple) {
|
|
196
|
+
setFocusedIndex(idx);
|
|
197
|
+
setSelectedItems((prev) => {
|
|
198
|
+
const isAdded =
|
|
199
|
+
prev && prev.length > 0
|
|
200
|
+
? prev.some((item) => item[descId] === suggestion[descId])
|
|
201
|
+
: false;
|
|
202
|
+
if (isAdded) {
|
|
203
|
+
return prev.filter((item) => item[descId] !== suggestion[descId]);
|
|
204
|
+
} else {
|
|
205
|
+
return [...prev, suggestion];
|
|
206
|
+
}
|
|
207
|
+
});
|
|
208
|
+
} else {
|
|
209
|
+
setFocusedIndex(idx);
|
|
210
|
+
setInputValue(suggestion[desc]);
|
|
211
|
+
setSearchValue('');
|
|
212
|
+
onChange(suggestion);
|
|
213
|
+
setDropOpen(false);
|
|
214
|
+
}
|
|
215
|
+
},
|
|
216
|
+
[]
|
|
217
|
+
);
|
|
208
218
|
|
|
209
219
|
// Adding debounce to avoid making API calls on every keystroke
|
|
210
220
|
const debouncedUpdate = useCallback(
|
|
@@ -311,7 +321,6 @@ const AutoCompleteWithSelectedList = forwardRef<
|
|
|
311
321
|
setTimeout(() => {
|
|
312
322
|
adjustDropdownPosition();
|
|
313
323
|
}, 200);
|
|
314
|
-
|
|
315
324
|
}, [selectedItems]);
|
|
316
325
|
|
|
317
326
|
useEffect(() => {
|
|
@@ -332,13 +341,13 @@ const AutoCompleteWithSelectedList = forwardRef<
|
|
|
332
341
|
// const observer = new MutationObserver(() => {
|
|
333
342
|
// adjustDropdownPosition();
|
|
334
343
|
// });
|
|
335
|
-
|
|
344
|
+
|
|
336
345
|
// observer.observe(document.body, {
|
|
337
346
|
// childList: true,
|
|
338
347
|
// subtree: true,
|
|
339
348
|
// attributes: true,
|
|
340
349
|
// });
|
|
341
|
-
|
|
350
|
+
|
|
342
351
|
document.addEventListener('mousedown', handleClickOutside as any);
|
|
343
352
|
window.addEventListener('scroll', handleClickOutside as any);
|
|
344
353
|
|
|
@@ -379,9 +388,7 @@ const AutoCompleteWithSelectedList = forwardRef<
|
|
|
379
388
|
true
|
|
380
389
|
);
|
|
381
390
|
|
|
382
|
-
|
|
383
391
|
useEffect(() => {
|
|
384
|
-
|
|
385
392
|
// Handle keyboard navigation
|
|
386
393
|
const handleKeyDown = (e: any) => {
|
|
387
394
|
if (!dropOpen) return;
|
|
@@ -389,52 +396,57 @@ const AutoCompleteWithSelectedList = forwardRef<
|
|
|
389
396
|
const atBottom = focusedIndex === filteredData.length - 1;
|
|
390
397
|
const atTop = focusedIndex === 0;
|
|
391
398
|
switch (e.key) {
|
|
392
|
-
case
|
|
399
|
+
case 'ArrowDown':
|
|
393
400
|
e.preventDefault();
|
|
394
401
|
if (itemsRef.current) {
|
|
395
402
|
if (!atBottom) {
|
|
396
|
-
|
|
403
|
+
itemsRef.current.scrollTop +=
|
|
404
|
+
itemRefs.current[focusedIndex]?.offsetHeight || 50;
|
|
397
405
|
} else {
|
|
398
|
-
|
|
406
|
+
itemsRef.current.scrollTop = 0;
|
|
399
407
|
}
|
|
400
408
|
}
|
|
401
409
|
setFocusedIndex((prev) => (prev + 1) % filteredData?.length);
|
|
402
410
|
break;
|
|
403
|
-
|
|
404
|
-
case
|
|
411
|
+
|
|
412
|
+
case 'ArrowUp':
|
|
405
413
|
e.preventDefault();
|
|
406
414
|
if (itemsRef.current) {
|
|
407
415
|
if (!atTop) {
|
|
408
|
-
|
|
416
|
+
itemsRef.current.scrollTop -=
|
|
417
|
+
itemRefs.current[focusedIndex]?.offsetHeight || 50;
|
|
409
418
|
} else {
|
|
410
|
-
|
|
419
|
+
itemsRef.current.scrollTop = 0;
|
|
411
420
|
}
|
|
412
421
|
}
|
|
413
|
-
setFocusedIndex(
|
|
422
|
+
setFocusedIndex(
|
|
423
|
+
(prev) => (prev - 1 + filteredData?.length) % filteredData?.length
|
|
424
|
+
);
|
|
414
425
|
break;
|
|
415
|
-
|
|
416
|
-
case
|
|
426
|
+
|
|
427
|
+
case 'Enter':
|
|
417
428
|
e.preventDefault();
|
|
418
|
-
|
|
429
|
+
if (filteredData && filteredData.length > 0)
|
|
430
|
+
handleSuggestionClick(filteredData[focusedIndex], focusedIndex);
|
|
419
431
|
break;
|
|
420
|
-
|
|
421
|
-
case
|
|
432
|
+
|
|
433
|
+
case 'Escape':
|
|
422
434
|
e.preventDefault();
|
|
423
435
|
setDropOpen(false);
|
|
424
436
|
break;
|
|
425
|
-
|
|
437
|
+
|
|
426
438
|
default:
|
|
427
439
|
break;
|
|
428
440
|
}
|
|
429
441
|
};
|
|
430
|
-
|
|
431
|
-
window.addEventListener(
|
|
432
|
-
|
|
442
|
+
|
|
443
|
+
window.addEventListener('keydown', handleKeyDown);
|
|
444
|
+
|
|
433
445
|
return () => {
|
|
434
|
-
window.removeEventListener(
|
|
446
|
+
window.removeEventListener('keydown', handleKeyDown);
|
|
435
447
|
};
|
|
436
448
|
}, [filteredData, dropOpen, isLoading, focusedIndex]);
|
|
437
|
-
|
|
449
|
+
|
|
438
450
|
const isSelected = (
|
|
439
451
|
item: ValueProps,
|
|
440
452
|
selectedItems: ValueProps[] | string
|
|
@@ -503,7 +515,7 @@ const AutoCompleteWithSelectedList = forwardRef<
|
|
|
503
515
|
hasScrollbar = document.body.scrollHeight > window.innerHeight;
|
|
504
516
|
if (!originalOverflow && !hasScrollbar) {
|
|
505
517
|
originalOverflow = document.body.style.overflow;
|
|
506
|
-
document.body.style.overflow = 'hidden';
|
|
518
|
+
document.body.style.overflow = 'hidden';
|
|
507
519
|
}
|
|
508
520
|
|
|
509
521
|
setVisible(false);
|
|
@@ -516,7 +528,7 @@ const AutoCompleteWithSelectedList = forwardRef<
|
|
|
516
528
|
if (!hasScrollbar) {
|
|
517
529
|
document.body.style.overflow = originalOverflow || '';
|
|
518
530
|
}
|
|
519
|
-
originalOverflow = '';
|
|
531
|
+
originalOverflow = '';
|
|
520
532
|
}, 200);
|
|
521
533
|
};
|
|
522
534
|
|
|
@@ -537,9 +549,9 @@ const AutoCompleteWithSelectedList = forwardRef<
|
|
|
537
549
|
};
|
|
538
550
|
|
|
539
551
|
const getSelectedRowLimit = () => {
|
|
540
|
-
let maxHeight = 36
|
|
541
|
-
if(selItemRef?.current && selItemRef?.current.clientWidth < 300) {
|
|
542
|
-
maxHeight = 24
|
|
552
|
+
let maxHeight = 36;
|
|
553
|
+
if (selItemRef?.current && selItemRef?.current.clientWidth < 300) {
|
|
554
|
+
maxHeight = 24;
|
|
543
555
|
}
|
|
544
556
|
|
|
545
557
|
return selectedRowLimit * maxHeight + 5;
|