react-core-ts 2.0.24 → 3.0.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.
@@ -0,0 +1,74 @@
1
+ import React from 'react';
2
+ import { FieldErrors } from 'react-hook-form';
3
+ type SuggestionItem = {
4
+ name: string;
5
+ [key: string]: any;
6
+ };
7
+ type ModernAutoCompleteSuggectionsProps = {
8
+ name: string;
9
+ label?: string;
10
+ id?: string;
11
+ placeholder?: string;
12
+ /** Controlled value for the input (optional). */
13
+ value?: string;
14
+ /** Called whenever the user types (only the raw text, no selection). */
15
+ onChange?: (value: string) => void;
16
+ /**
17
+ * Optional static list of items. Each item should have at least `name`.
18
+ */
19
+ data?: SuggestionItem[];
20
+ /**
21
+ * Async/source function that returns items for a search text.
22
+ */
23
+ getData?: (key?: string) => Promise<SuggestionItem[]> | SuggestionItem[];
24
+ /**
25
+ * Field that holds an explicit count per item (fallback: duplicates count).
26
+ * Similar to desc, this allows customizing which field contains the count.
27
+ * e.g. "count", "total", "quantity".
28
+ */
29
+ countField?: string;
30
+ /**
31
+ * Whether the API provides count in the data. If true, uses countField value directly.
32
+ * If false, groups items and counts duplicates.
33
+ */
34
+ countProvided?: boolean;
35
+ /** Use modern label styling (floating label). */
36
+ isModern?: boolean;
37
+ /** Mark field as required. */
38
+ required?: boolean;
39
+ /** Input size. */
40
+ size?: 'xs' | 'sm' | 'md' | 'lg' | 'xxs';
41
+ /** Disable the input. */
42
+ disabled?: boolean;
43
+ /** Custom className. */
44
+ className?: string;
45
+ /** Render dropdown inside component container (false = use Portal). */
46
+ insideOpen?: boolean;
47
+ /** Form validation errors. */
48
+ errors?: FieldErrors;
49
+ /** Label title for error messages. */
50
+ labelTitle?: string;
51
+ /** Field name that contains the display text (default: 'name'). */
52
+ desc?: string;
53
+ /** Field name that contains the unique identifier (default: 'id'). */
54
+ descId?: string;
55
+ };
56
+ /**
57
+ * Simple suggestion item:
58
+ * - No tooltip
59
+ * - No truncation
60
+ * - Text wraps to next line when long
61
+ */
62
+ declare const SuggestionItem: React.FC<{
63
+ name: string;
64
+ count: number;
65
+ showCount: boolean;
66
+ }>;
67
+ /**
68
+ * Read‑only suggestion helper:
69
+ * - User types freely in the input (no item click / selection)
70
+ * - Below the field we show unique names
71
+ * - If a name is duplicated, show: "Name (count)"
72
+ */
73
+ declare const ModernAutoCompleteSuggections: React.FC<ModernAutoCompleteSuggectionsProps>;
74
+ export default ModernAutoCompleteSuggections;
@@ -0,0 +1,379 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
49
+ var __importDefault = (this && this.__importDefault) || function (mod) {
50
+ return (mod && mod.__esModule) ? mod : { "default": mod };
51
+ };
52
+ Object.defineProperty(exports, "__esModule", { value: true });
53
+ var jsx_runtime_1 = require("react/jsx-runtime");
54
+ // NOTE: This file was renamed from ReactAutoCompleteNameCount.tsx
55
+ // The implementation is unchanged; only the filename and exported component name differ.
56
+ var react_1 = require("react");
57
+ var Spinner_1 = __importDefault(require("./components/loader/Spinner"));
58
+ var portal_1 = __importDefault(require("./components/portal"));
59
+ var customIcons_1 = __importDefault(require("./components/customIcons"));
60
+ /**
61
+ * Simple suggestion item:
62
+ * - No tooltip
63
+ * - No truncation
64
+ * - Text wraps to next line when long
65
+ */
66
+ var SuggestionItem = function (_a) {
67
+ var name = _a.name, count = _a.count, showCount = _a.showCount;
68
+ return ((0, jsx_runtime_1.jsxs)("div", __assign({ className: "py-0.5 flex items-center justify-between gap-2 group relative" }, { children: [(0, jsx_runtime_1.jsx)("span", __assign({ className: "flex-1 whitespace-normal break-words" }, { children: name })), showCount && ((0, jsx_runtime_1.jsx)("span", __assign({ className: "ml-2 suggection-count flex items-center justify-center min-w-[20px] h-5 px-1.5 rounded-full bg-orange-500 text-white text-[10px] font-medium flex-shrink-0" }, { children: count })))] })));
69
+ };
70
+ /**
71
+ * Read‑only suggestion helper:
72
+ * - User types freely in the input (no item click / selection)
73
+ * - Below the field we show unique names
74
+ * - If a name is duplicated, show: "Name (count)"
75
+ */
76
+ var ModernAutoCompleteSuggections = function (_a) {
77
+ var name = _a.name, label = _a.label, id = _a.id, placeholder = _a.placeholder, data = _a.data, getData = _a.getData, value = _a.value, onChange = _a.onChange, _b = _a.countField, countField = _b === void 0 ? 'count' : _b, _c = _a.countProvided, countProvided = _c === void 0 ? false : _c, _d = _a.isModern, isModern = _d === void 0 ? true : _d, _e = _a.required, required = _e === void 0 ? false : _e, _f = _a.size, size = _f === void 0 ? 'md' : _f, _g = _a.disabled, disabled = _g === void 0 ? false : _g, propsClassName = _a.className, _h = _a.insideOpen, insideOpen = _h === void 0 ? false : _h, errors = _a.errors, labelTitle = _a.labelTitle, _j = _a.desc, desc = _j === void 0 ? 'name' : _j, _k = _a.descId, descId = _k === void 0 ? 'id' : _k;
78
+ var _l = (0, react_1.useState)(value !== null && value !== void 0 ? value : ''), inputValue = _l[0], setInputValue = _l[1];
79
+ var _m = (0, react_1.useState)(data !== null && data !== void 0 ? data : []), items = _m[0], setItems = _m[1];
80
+ var _o = (0, react_1.useState)(false), isLoading = _o[0], setIsLoading = _o[1];
81
+ var _p = (0, react_1.useState)(false), showDropdown = _p[0], setShowDropdown = _p[1];
82
+ var _q = (0, react_1.useState)(false), isHovered = _q[0], setIsHovered = _q[1];
83
+ var _r = (0, react_1.useState)({
84
+ top: 0,
85
+ left: 0,
86
+ bottom: 0,
87
+ right: 0,
88
+ }), dropPosition = _r[0], setDropPosition = _r[1];
89
+ var getDataRef = (0, react_1.useRef)(getData);
90
+ var _s = (0, react_1.useState)(false), hasTyped = _s[0], setHasTyped = _s[1];
91
+ var inputRef = (0, react_1.useRef)(null);
92
+ var adorementRef = (0, react_1.useRef)(null);
93
+ var containerRef = (0, react_1.useRef)(null);
94
+ // keep latest getData in a ref so we don't re-trigger effects on every render
95
+ (0, react_1.useEffect)(function () {
96
+ getDataRef.current = getData;
97
+ }, [getData]);
98
+ // Keep internal state in sync when used as a controlled component
99
+ (0, react_1.useEffect)(function () {
100
+ if (value !== undefined) {
101
+ setInputValue(value);
102
+ }
103
+ }, [value]);
104
+ // Sync external data prop
105
+ (0, react_1.useEffect)(function () {
106
+ if (data) {
107
+ setItems(data);
108
+ }
109
+ }, [data]);
110
+ // Load from getData only when user types some text (no initial preload)
111
+ (0, react_1.useEffect)(function () {
112
+ // Do not call API until the user has actually typed at least once
113
+ if (!hasTyped)
114
+ return;
115
+ var cancelled = false;
116
+ var query = inputValue.trim();
117
+ if (!getDataRef.current || query === '') {
118
+ // Clear items when input is cleared so dropdown also clears
119
+ if (!cancelled) {
120
+ setItems(data !== null && data !== void 0 ? data : []);
121
+ setIsLoading(false);
122
+ }
123
+ return;
124
+ }
125
+ var run = function () { return __awaiter(void 0, void 0, void 0, function () {
126
+ var res, error_1;
127
+ var _a;
128
+ return __generator(this, function (_b) {
129
+ switch (_b.label) {
130
+ case 0:
131
+ setIsLoading(true);
132
+ _b.label = 1;
133
+ case 1:
134
+ _b.trys.push([1, 3, 4, 5]);
135
+ return [4 /*yield*/, ((_a = getDataRef.current) === null || _a === void 0 ? void 0 : _a.call(getDataRef, query))];
136
+ case 2:
137
+ res = _b.sent();
138
+ if (!cancelled && Array.isArray(res)) {
139
+ setItems(res);
140
+ }
141
+ return [3 /*break*/, 5];
142
+ case 3:
143
+ error_1 = _b.sent();
144
+ return [3 /*break*/, 5];
145
+ case 4:
146
+ if (!cancelled) {
147
+ setIsLoading(false);
148
+ }
149
+ return [7 /*endfinally*/];
150
+ case 5: return [2 /*return*/];
151
+ }
152
+ });
153
+ }); };
154
+ run();
155
+ return function () {
156
+ cancelled = true;
157
+ };
158
+ }, [inputValue, hasTyped, data]);
159
+ // Group by desc field and compute counts
160
+ var grouped = (0, react_1.useMemo)(function () {
161
+ var map = new Map();
162
+ items.forEach(function (item) {
163
+ var n = item === null || item === void 0 ? void 0 : item[desc];
164
+ if (!n)
165
+ return;
166
+ if (countProvided) {
167
+ // API provides count - use it directly
168
+ var apiCount = item === null || item === void 0 ? void 0 : item[countField];
169
+ var countValue = typeof apiCount === 'number' ? apiCount : typeof apiCount === 'string' ? Number(apiCount) : 0;
170
+ var existing = map.get(n);
171
+ if (existing) {
172
+ // Sum counts for items with same name
173
+ existing.count += countValue;
174
+ }
175
+ else {
176
+ map.set(n, { name: n, count: countValue });
177
+ }
178
+ }
179
+ else {
180
+ // API doesn't provide count - group and count duplicates
181
+ var existing = map.get(n);
182
+ if (existing) {
183
+ existing.count += 1;
184
+ }
185
+ else {
186
+ map.set(n, { name: n, count: 0 });
187
+ }
188
+ }
189
+ });
190
+ return Array.from(map.values());
191
+ }, [items, countField, desc, countProvided]);
192
+ // Filter based on what user typed
193
+ var visible = (0, react_1.useMemo)(function () {
194
+ var term = inputValue.trim().toLowerCase();
195
+ if (!term || !hasTyped)
196
+ return [];
197
+ return grouped.filter(function (g) { return g.name.toLowerCase().includes(term); });
198
+ }, [grouped, inputValue, hasTyped]);
199
+ // Update dropdown visibility based on visible items
200
+ (0, react_1.useEffect)(function () {
201
+ setShowDropdown(visible.length > 0);
202
+ }, [visible.length]);
203
+ // Handle click outside to close dropdown
204
+ var handleClickOutside = function (event) {
205
+ if (containerRef.current &&
206
+ !containerRef.current.contains(event.target)) {
207
+ setShowDropdown(false);
208
+ }
209
+ };
210
+ // Handle scroll to close dropdown
211
+ var handleScroll = function () {
212
+ setShowDropdown(false);
213
+ };
214
+ // Attach event listeners for click outside and scroll
215
+ (0, react_1.useEffect)(function () {
216
+ if (showDropdown) {
217
+ document.addEventListener('click', handleClickOutside);
218
+ window.addEventListener('scroll', handleScroll);
219
+ var mainElement_1 = document.querySelector('main');
220
+ mainElement_1 === null || mainElement_1 === void 0 ? void 0 : mainElement_1.addEventListener('scroll', handleScroll);
221
+ var gridElements_1 = document.querySelectorAll('.k-grid-content, .overflow-auto, .overflow-y-auto, .overflow-x-auto');
222
+ gridElements_1.forEach(function (gridElement) {
223
+ gridElement.addEventListener('scroll', handleScroll);
224
+ });
225
+ return function () {
226
+ document.removeEventListener('click', handleClickOutside);
227
+ window.removeEventListener('scroll', handleScroll);
228
+ mainElement_1 === null || mainElement_1 === void 0 ? void 0 : mainElement_1.removeEventListener('scroll', handleScroll);
229
+ gridElements_1.forEach(function (gridElement) {
230
+ gridElement.removeEventListener('scroll', handleScroll);
231
+ });
232
+ };
233
+ }
234
+ }, [showDropdown]);
235
+ var checkIsEmptyField = function () {
236
+ var _a;
237
+ if (inputValue === undefined)
238
+ return true;
239
+ else
240
+ return ((_a = inputValue === null || inputValue === void 0 ? void 0 : inputValue.toString().length) !== null && _a !== void 0 ? _a : 0) <= 0 ? true : false;
241
+ };
242
+ var getHeight = function () {
243
+ switch (size) {
244
+ case 'sm':
245
+ return ' h-[34px] ';
246
+ default:
247
+ return ' ';
248
+ }
249
+ };
250
+ var getErrors = function (err) {
251
+ var _a, _b, _c, _d;
252
+ var errMsg = '';
253
+ if (err.message) {
254
+ errMsg = err === null || err === void 0 ? void 0 : err.message;
255
+ }
256
+ else if ((_a = err === null || err === void 0 ? void 0 : err.id) === null || _a === void 0 ? void 0 : _a.message) {
257
+ errMsg = (_b = err === null || err === void 0 ? void 0 : err.id) === null || _b === void 0 ? void 0 : _b.message;
258
+ }
259
+ else if ((_c = err === null || err === void 0 ? void 0 : err.name) === null || _c === void 0 ? void 0 : _c.message) {
260
+ errMsg = (_d = err === null || err === void 0 ? void 0 : err.name) === null || _d === void 0 ? void 0 : _d.message;
261
+ }
262
+ return errMsg;
263
+ };
264
+ var handleError = function (data) {
265
+ var _a;
266
+ if (getErrors(data[name]) === 'required' ||
267
+ getErrors(data[name]) === 'Required') {
268
+ return "".concat(label !== null && label !== void 0 ? label : labelTitle, " is ").concat(getErrors(data[name]));
269
+ }
270
+ else {
271
+ return (_a = getErrors(data[name])) !== null && _a !== void 0 ? _a : '';
272
+ }
273
+ };
274
+ var generateClassName = function (type) {
275
+ var className = propsClassName || '';
276
+ switch (type) {
277
+ case 'input':
278
+ className += " block text-common text-input-text font-normal px-3.5 w-full text-sm text-gray-900 bg-transparent border appearance-none peer h-10 rounded-[4px] disabled:text-input-disabled bg-white disabled:bg-disabled ".concat(label && isModern
279
+ ? 'placeholder-transparent'
280
+ : 'focus:placeholder-grey-secondary placeholder-input-label', " focus:placeholder-grey-secondary");
281
+ if (errors && errors[name]) {
282
+ className +=
283
+ ' border-[#FDA29B] focus:border-error-[#FDA29B] focus:ring-[#FDA29B] focus:ring-3 focus:outline-[#FDA29B] input-outline';
284
+ }
285
+ else {
286
+ className +=
287
+ ' text-grey-dark border-input-light focus:border-blue-navy focus:outline-none focus:ring-0';
288
+ }
289
+ className += getHeight();
290
+ break;
291
+ case 'label':
292
+ className += " flex modern-input-label-truncate peer-focus:modern-input-peer-focus-label-size \n ".concat(disabled
293
+ ? 'cursor-pointer'
294
+ : 'cursor-text peer-focus:cursor-pointer', " ").concat(disabled && !checkIsEmptyField()
295
+ ? 'disabled-input-label-bg'
296
+ : !disabled || !checkIsEmptyField()
297
+ ? 'active-input-label-bg'
298
+ : '', " absolute duration-300 transform -translate-y-4 top-2 z-1 origin-[0] px-0 peer-placeholder-shown:-translate-y-1/2 peer-placeholder-shown:top-1/2 peer-focus:top-2 peer-focus:-translate-y-4 start-[14px] rtl:peer-focus:translate-x-1/4 rtl:peer-focus:left-auto ").concat(disabled
299
+ ? 'cursor-pointer'
300
+ : 'cursor-text peer-focus:cursor-pointer', "\n ").concat(checkIsEmptyField()
301
+ ? 'modern-input-label-size'
302
+ : 'modern-input-peer-focus-label-size');
303
+ if (errors && errors[name]) {
304
+ className += ' text-error-light ';
305
+ }
306
+ else {
307
+ className += ' text-grey-dark peer-focus:text-blue-navy';
308
+ }
309
+ break;
310
+ case 'message':
311
+ className = ' text-error-icon ';
312
+ break;
313
+ case 'adorement':
314
+ className += ' absolute right-0 adorement gap-1 flex items-center ';
315
+ break;
316
+ default:
317
+ break;
318
+ }
319
+ return className;
320
+ };
321
+ var getInnerWidth = function () {
322
+ var innerwidth = adorementRef.current
323
+ ? adorementRef.current.offsetWidth
324
+ : 0;
325
+ return innerwidth;
326
+ };
327
+ var onLabelClick = function () {
328
+ var _a;
329
+ if (!disabled) {
330
+ (_a = inputRef === null || inputRef === void 0 ? void 0 : inputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
331
+ }
332
+ };
333
+ var getDropPosition = function () {
334
+ if (!insideOpen && (inputRef === null || inputRef === void 0 ? void 0 : inputRef.current)) {
335
+ var dropdownHeight = 200; // Assume the height of the dropdown is 200px, adjust as needed
336
+ var inputRect = inputRef.current.getBoundingClientRect();
337
+ var spaceBelow = window.innerHeight - inputRect.bottom;
338
+ var spaceAbove = inputRect.top;
339
+ var top_1;
340
+ var bottom = void 0;
341
+ if (spaceBelow < dropdownHeight && spaceAbove > dropdownHeight) {
342
+ // Show above if not enough space below
343
+ bottom = window.innerHeight - inputRect.top + 2;
344
+ }
345
+ else {
346
+ // Show below (default)
347
+ top_1 = inputRect.bottom + 2;
348
+ }
349
+ setDropPosition({
350
+ position: 'fixed',
351
+ left: inputRect.left,
352
+ top: top_1,
353
+ bottom: bottom,
354
+ width: inputRect.width,
355
+ });
356
+ }
357
+ return undefined;
358
+ };
359
+ // Calculate dropdown position when it opens
360
+ (0, react_1.useEffect)(function () {
361
+ if (showDropdown && !insideOpen) {
362
+ window.addEventListener('resize', getDropPosition);
363
+ getDropPosition();
364
+ return function () {
365
+ window.removeEventListener('resize', getDropPosition);
366
+ };
367
+ }
368
+ }, [showDropdown, insideOpen]);
369
+ 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, onChange: function (e) {
370
+ var val = e.target.value;
371
+ setInputValue(val);
372
+ setHasTyped(true);
373
+ onChange === null || onChange === void 0 ? void 0 : onChange(val);
374
+ }, onBlur: function () { }, placeholder: placeholder, autoComplete: "off", "data-testid": "custom-autocomplete-suggestions", "aria-describedby": id, style: {
375
+ paddingRight: getInnerWidth(),
376
+ }, 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" }) })))] })) }))] }))] })), showDropdown && visible.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: visible.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 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: visible.map(function (g) { return ((0, jsx_runtime_1.jsx)("div", __assign({ className: "px-3.5 text-[11px] text-gray-700" }, { children: (0, jsx_runtime_1.jsx)(SuggestionItem, { name: g.name, count: g.count, showCount: g.count > -1 }) }), g.name)); }) })) })) })) }))] })));
377
+ };
378
+ exports.default = ModernAutoCompleteSuggections;
379
+ //# sourceMappingURL=ReactAutoCompleteSuggections.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReactAutoCompleteSuggections.js","sourceRoot":"","sources":["../src/ReactAutoCompleteSuggections.tsx"],"names":[],"mappings":"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"}