@royaltics/ui 1.6.7 → 1.6.9
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Autocomplete.d.ts","sourceRoot":"","sources":["../../src/forms/Autocomplete.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyD,MAAM,OAAO,CAAC;AAO9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AA+BxD,MAAM,WAAW,iBAAkB,SAAQ,kBAAkB;IACzD,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,CAAC,IAAI,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,EAAE,CAAA;KAAE,KAAK,IAAI,CAAC;IACnD,YAAY,CAAC,EAAE,GAAG,EAAE,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;gNAME,iBAAiB,KAAG,GAAG,CAAC,OAAO;
|
|
1
|
+
{"version":3,"file":"Autocomplete.d.ts","sourceRoot":"","sources":["../../src/forms/Autocomplete.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyD,MAAM,OAAO,CAAC;AAO9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AA+BxD,MAAM,WAAW,iBAAkB,SAAQ,kBAAkB;IACzD,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,CAAC,IAAI,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,EAAE,CAAA;KAAE,KAAK,IAAI,CAAC;IACnD,YAAY,CAAC,EAAE,GAAG,EAAE,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;gNAME,iBAAiB,KAAG,GAAG,CAAC,OAAO;AA6OlC,wBAAkC"}
|
|
@@ -21,22 +21,27 @@ const classNamesProps = cvaMix("flex flex-wrap ", {
|
|
|
21
21
|
const Autocomplete = ({ id, lb, variant = 'fill', size = 'xs', width = 'full', className = '', style, tabIndex, readOnly = false, placeholder, error = false, onChange, api, keyText = 'names', keyValue = 'id', criteria, limit = 100, defaultValue }) => {
|
|
22
22
|
const [searchText, setSearchText] = useState('');
|
|
23
23
|
const [dropdownList, setDropdownList] = useState([]);
|
|
24
|
-
const [selectedItems, setSelectedItems] = useState(
|
|
24
|
+
const [selectedItems, setSelectedItems] = useState([]);
|
|
25
25
|
const [highlightedIndex, setHighlightedIndex] = useState(-1);
|
|
26
26
|
const [dropdownPos, setDropdownPos] = useState(null);
|
|
27
27
|
const { post } = useHttpState();
|
|
28
28
|
const debounceRef = useRef(null);
|
|
29
29
|
const inputRef = useRef(null);
|
|
30
30
|
const wrapperRef = useRef(null);
|
|
31
|
+
const isInitialized = useRef(false);
|
|
32
|
+
useEffect(() => {
|
|
33
|
+
if (!isInitialized.current && defaultValue) {
|
|
34
|
+
setSelectedItems(defaultValue);
|
|
35
|
+
isInitialized.current = true;
|
|
36
|
+
}
|
|
37
|
+
}, [defaultValue]);
|
|
31
38
|
const buildSearchPayload = useCallback((query) => {
|
|
32
|
-
console.log('🔵 buildSearchPayload recreated');
|
|
33
39
|
return {
|
|
34
40
|
search: query,
|
|
35
41
|
...(criteria || {})
|
|
36
42
|
};
|
|
37
43
|
}, [criteria]);
|
|
38
44
|
const updateDropdownPosition = useCallback(() => {
|
|
39
|
-
console.log('🔵 updateDropdownPosition recreated');
|
|
40
45
|
if (!wrapperRef.current)
|
|
41
46
|
return;
|
|
42
47
|
const rect = wrapperRef.current.getBoundingClientRect();
|
|
@@ -47,13 +52,11 @@ const Autocomplete = ({ id, lb, variant = 'fill', size = 'xs', width = 'full', c
|
|
|
47
52
|
});
|
|
48
53
|
}, []);
|
|
49
54
|
const closeDropdown = useCallback(() => {
|
|
50
|
-
console.log('🔵 closeDropdown recreated');
|
|
51
55
|
setDropdownList([]);
|
|
52
56
|
setDropdownPos(null);
|
|
53
57
|
setHighlightedIndex(-1);
|
|
54
58
|
}, []);
|
|
55
59
|
const requestSearch = useCallback((query) => {
|
|
56
|
-
console.log('🔵 requestSearch recreated');
|
|
57
60
|
post(`${api}/search?limit=${limit}`, {
|
|
58
61
|
data: buildSearchPayload(query),
|
|
59
62
|
onSuccess: (data) => {
|
|
@@ -61,17 +64,14 @@ const Autocomplete = ({ id, lb, variant = 'fill', size = 'xs', width = 'full', c
|
|
|
61
64
|
updateDropdownPosition();
|
|
62
65
|
}
|
|
63
66
|
});
|
|
64
|
-
}, [api, limit, buildSearchPayload
|
|
67
|
+
}, [api, limit, buildSearchPayload]);
|
|
65
68
|
useEffect(() => {
|
|
66
|
-
console.log('🟢 useEffect[searchText] ejecutado', { searchText, id });
|
|
67
69
|
if (debounceRef.current)
|
|
68
70
|
clearTimeout(debounceRef.current);
|
|
69
71
|
const trimmedText = searchText.trim();
|
|
70
72
|
const shouldSearch = Boolean(trimmedText) && Boolean(id);
|
|
71
73
|
if (shouldSearch) {
|
|
72
|
-
debounceRef.current = setTimeout(() =>
|
|
73
|
-
requestSearch(trimmedText);
|
|
74
|
-
}, SEARCH_DEBOUNCE_MS);
|
|
74
|
+
debounceRef.current = setTimeout(() => requestSearch(trimmedText), SEARCH_DEBOUNCE_MS);
|
|
75
75
|
}
|
|
76
76
|
else {
|
|
77
77
|
closeDropdown();
|
|
@@ -82,7 +82,6 @@ const Autocomplete = ({ id, lb, variant = 'fill', size = 'xs', width = 'full', c
|
|
|
82
82
|
};
|
|
83
83
|
}, [searchText]);
|
|
84
84
|
useEffect(() => {
|
|
85
|
-
console.log('🟢 useEffect[dropdownList] ejecutado', { dropdownListLength: dropdownList.length });
|
|
86
85
|
if (!dropdownList.length)
|
|
87
86
|
return;
|
|
88
87
|
updateDropdownPosition();
|
|
@@ -93,7 +92,11 @@ const Autocomplete = ({ id, lb, variant = 'fill', size = 'xs', width = 'full', c
|
|
|
93
92
|
window.removeEventListener('resize', handleWindowChange);
|
|
94
93
|
window.removeEventListener('scroll', handleWindowChange, true);
|
|
95
94
|
};
|
|
96
|
-
}, [dropdownList.length]);
|
|
95
|
+
}, [dropdownList.length]);
|
|
96
|
+
// Notify parent when selectedItems changes
|
|
97
|
+
useEffect(() => {
|
|
98
|
+
onChange?.({ [id]: selectedItems.map(item => item[keyValue]) });
|
|
99
|
+
}, [selectedItems]);
|
|
97
100
|
const getItemText = useCallback((item) => {
|
|
98
101
|
const value = item[keyText];
|
|
99
102
|
if (typeof value === 'string')
|
|
@@ -103,38 +106,26 @@ const Autocomplete = ({ id, lb, variant = 'fill', size = 'xs', width = 'full', c
|
|
|
103
106
|
return '';
|
|
104
107
|
}, [keyText]);
|
|
105
108
|
const handleSelect = useCallback((item) => {
|
|
106
|
-
console.log('🔵 handleSelect recreated');
|
|
107
109
|
const value = item[keyValue];
|
|
108
110
|
setSelectedItems(prevItems => {
|
|
109
|
-
console.log('🟡 handleSelect ejecutado', { value, prevItemsCount: prevItems.length });
|
|
110
|
-
// Check if already selected
|
|
111
111
|
if (prevItems.some(it => it[keyValue] === value))
|
|
112
112
|
return prevItems;
|
|
113
|
-
|
|
114
|
-
// Only send IDs to parent, not text labels
|
|
115
|
-
onChange?.({ [id]: newSelectedItems.map((item => item[keyValue])) });
|
|
116
|
-
return newSelectedItems;
|
|
113
|
+
return [...prevItems, item];
|
|
117
114
|
});
|
|
118
115
|
setSearchText('');
|
|
119
116
|
closeDropdown();
|
|
120
117
|
inputRef.current?.focus();
|
|
121
|
-
}, [keyValue
|
|
118
|
+
}, [keyValue]);
|
|
122
119
|
const handleRemove = useCallback((item) => {
|
|
123
|
-
console.log('🔵 handleRemove recreated');
|
|
124
120
|
const value = item[keyValue];
|
|
125
121
|
if (!isPrimitive(value))
|
|
126
122
|
return;
|
|
127
123
|
setSelectedItems(prevItems => {
|
|
128
|
-
|
|
129
|
-
const newSelectedItems = prevItems.filter(i => i[keyValue] !== value);
|
|
130
|
-
// Only send IDs to parent, not text labels
|
|
131
|
-
onChange?.({ [id]: newSelectedItems.map((item => item[keyValue])) });
|
|
132
|
-
return newSelectedItems;
|
|
124
|
+
return prevItems.filter(i => i[keyValue] !== value);
|
|
133
125
|
});
|
|
134
126
|
inputRef.current?.focus();
|
|
135
|
-
}, [keyValue
|
|
127
|
+
}, [keyValue]);
|
|
136
128
|
const handleKeyDown = useCallback((e) => {
|
|
137
|
-
console.log('🔵 handleKeyDown recreated');
|
|
138
129
|
if (dropdownList.length === 0)
|
|
139
130
|
return;
|
|
140
131
|
if (e.key === 'ArrowDown') {
|
|
@@ -155,7 +146,7 @@ const Autocomplete = ({ id, lb, variant = 'fill', size = 'xs', width = 'full', c
|
|
|
155
146
|
setSearchText('');
|
|
156
147
|
closeDropdown();
|
|
157
148
|
}
|
|
158
|
-
}, [dropdownList, highlightedIndex, handleSelect
|
|
149
|
+
}, [dropdownList, highlightedIndex, handleSelect]);
|
|
159
150
|
return (React.createElement(React.Fragment, null,
|
|
160
151
|
React.createElement("div", { ref: wrapperRef, className: cn("relative flex flex-col select-none max-w-full", width === 'full' ? 'w-full' : 'w-max', className), style: style },
|
|
161
152
|
lb && React.createElement("label", { className: 'pb-0.5' },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Autocomplete.js","sourceRoot":"","sources":["../../src/forms/Autocomplete.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,YAAY,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAUpD,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAE/B,MAAM,WAAW,GAAG,CAAC,KAAc,EAA4B,EAAE,CAAC,CAC9D,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,CACzD,CAAC;AAGF,MAAM,eAAe,GAAG,MAAM,CAAC,iBAAiB,EAC5C;IACI,IAAI,EAAE,QAAQ,CAAC,IAAI;IACnB,OAAO,EAAE;QACL,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,cAAc;KAC1B;CACJ,EACD;IACI,IAAI,EAAE,IAAI;IACV,KAAK,EAAE,MAAM;IACb,OAAO,EAAE,MAAM;CAClB,CACJ,CAAC;AAaF,MAAM,YAAY,GAAG,CAAC,EAClB,EAAE,EAAE,EAAE,EAAE,OAAO,GAAG,MAAM,EAAE,IAAI,GAAG,IAAI,EAAE,KAAK,GAAG,MAAM,EAAE,SAAS,GAAG,EAAE,EAAE,KAAK,EAC5E,QAAQ,EAAE,QAAQ,GAAG,KAAK,EAAE,WAAW,EAAE,KAAK,GAAG,KAAK,EAAE,QAAQ,EAChE,GAAG,EAAE,OAAO,GAAG,OAAO,EAAE,QAAQ,GAAG,IAAI,EAAE,QAAQ,EAAE,KAAK,GAAG,GAAG,EAAE,YAAY,EAC5D,EAAe,EAAE;IAEjC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAS,EAAE,CAAC,CAAC;IACzD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAQ,EAAE,CAAC,CAAC;IAC5D,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAQ,
|
|
1
|
+
{"version":3,"file":"Autocomplete.js","sourceRoot":"","sources":["../../src/forms/Autocomplete.tsx"],"names":[],"mappings":"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"}
|