@xsolla/xui-autocomplete 0.89.0 → 0.90.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/native/index.js +49 -174
- package/native/index.js.map +1 -1
- package/native/index.mjs +32 -157
- package/native/index.mjs.map +1 -1
- package/package.json +5 -4
- package/web/index.js +49 -180
- package/web/index.js.map +1 -1
- package/web/index.mjs +35 -166
- package/web/index.mjs.map +1 -1
package/native/index.js
CHANGED
|
@@ -35,7 +35,7 @@ __export(index_exports, {
|
|
|
35
35
|
module.exports = __toCommonJS(index_exports);
|
|
36
36
|
|
|
37
37
|
// src/Autocomplete.tsx
|
|
38
|
-
var
|
|
38
|
+
var import_react3 = require("react");
|
|
39
39
|
|
|
40
40
|
// ../primitives-native/src/Box.tsx
|
|
41
41
|
var import_react_native = require("react-native");
|
|
@@ -238,41 +238,10 @@ var Text = ({
|
|
|
238
238
|
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react_native2.Text, { style, testID: id, accessibilityRole, children });
|
|
239
239
|
};
|
|
240
240
|
|
|
241
|
-
// ../primitives-native/src/Spinner.tsx
|
|
242
|
-
var import_react_native3 = require("react-native");
|
|
243
|
-
var import_jsx_runtime3 = require("react/jsx-runtime");
|
|
244
|
-
var Spinner = ({
|
|
245
|
-
color,
|
|
246
|
-
size,
|
|
247
|
-
role,
|
|
248
|
-
"aria-label": ariaLabel,
|
|
249
|
-
"aria-live": ariaLive,
|
|
250
|
-
testID
|
|
251
|
-
}) => {
|
|
252
|
-
return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
253
|
-
import_react_native3.View,
|
|
254
|
-
{
|
|
255
|
-
accessible: true,
|
|
256
|
-
accessibilityRole: role === "status" ? "none" : void 0,
|
|
257
|
-
accessibilityLabel: ariaLabel,
|
|
258
|
-
accessibilityLiveRegion: ariaLive === "polite" ? "polite" : ariaLive === "assertive" ? "assertive" : "none",
|
|
259
|
-
testID,
|
|
260
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
261
|
-
import_react_native3.ActivityIndicator,
|
|
262
|
-
{
|
|
263
|
-
color,
|
|
264
|
-
size: typeof size === "number" ? size : "small"
|
|
265
|
-
}
|
|
266
|
-
)
|
|
267
|
-
}
|
|
268
|
-
);
|
|
269
|
-
};
|
|
270
|
-
Spinner.displayName = "Spinner";
|
|
271
|
-
|
|
272
241
|
// ../primitives-native/src/Icon.tsx
|
|
273
242
|
var import_react = __toESM(require("react"));
|
|
274
|
-
var
|
|
275
|
-
var
|
|
243
|
+
var import_react_native3 = require("react-native");
|
|
244
|
+
var import_jsx_runtime3 = require("react/jsx-runtime");
|
|
276
245
|
var Icon = ({ children, color, size }) => {
|
|
277
246
|
const style = {
|
|
278
247
|
width: typeof size === "number" ? size : void 0,
|
|
@@ -290,17 +259,13 @@ var Icon = ({ children, color, size }) => {
|
|
|
290
259
|
}
|
|
291
260
|
return child;
|
|
292
261
|
});
|
|
293
|
-
return /* @__PURE__ */ (0,
|
|
262
|
+
return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_react_native3.View, { style, children: childrenWithProps });
|
|
294
263
|
};
|
|
295
264
|
|
|
296
|
-
// ../primitives-native/src/Divider.tsx
|
|
297
|
-
var import_react_native5 = require("react-native");
|
|
298
|
-
var import_jsx_runtime5 = require("react/jsx-runtime");
|
|
299
|
-
|
|
300
265
|
// ../primitives-native/src/Input.tsx
|
|
301
266
|
var import_react2 = require("react");
|
|
302
|
-
var
|
|
303
|
-
var
|
|
267
|
+
var import_react_native4 = require("react-native");
|
|
268
|
+
var import_jsx_runtime4 = require("react/jsx-runtime");
|
|
304
269
|
var keyboardTypeMap = {
|
|
305
270
|
text: "default",
|
|
306
271
|
number: "numeric",
|
|
@@ -373,8 +338,8 @@ var InputPrimitive = (0, import_react2.forwardRef)(
|
|
|
373
338
|
};
|
|
374
339
|
const keyboardType = inputMode ? inputModeToKeyboardType[inputMode] || "default" : type ? keyboardTypeMap[type] || "default" : "default";
|
|
375
340
|
const textContentType = autoComplete ? autoCompleteToTextContentType[autoComplete] : void 0;
|
|
376
|
-
return /* @__PURE__ */ (0,
|
|
377
|
-
|
|
341
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
342
|
+
import_react_native4.TextInput,
|
|
378
343
|
{
|
|
379
344
|
ref,
|
|
380
345
|
value,
|
|
@@ -420,101 +385,11 @@ var InputPrimitive = (0, import_react2.forwardRef)(
|
|
|
420
385
|
);
|
|
421
386
|
InputPrimitive.displayName = "InputPrimitive";
|
|
422
387
|
|
|
423
|
-
// ../primitives-native/src/TextArea.tsx
|
|
424
|
-
var import_react3 = require("react");
|
|
425
|
-
var import_react_native7 = require("react-native");
|
|
426
|
-
var import_jsx_runtime7 = require("react/jsx-runtime");
|
|
427
|
-
var TextAreaPrimitive = (0, import_react3.forwardRef)(
|
|
428
|
-
({
|
|
429
|
-
value,
|
|
430
|
-
placeholder,
|
|
431
|
-
onChange,
|
|
432
|
-
onChangeText,
|
|
433
|
-
onFocus,
|
|
434
|
-
onBlur,
|
|
435
|
-
onKeyDown,
|
|
436
|
-
disabled,
|
|
437
|
-
style,
|
|
438
|
-
color,
|
|
439
|
-
fontSize,
|
|
440
|
-
placeholderTextColor,
|
|
441
|
-
maxLength,
|
|
442
|
-
rows,
|
|
443
|
-
id,
|
|
444
|
-
"aria-describedby": ariaDescribedBy,
|
|
445
|
-
"aria-label": ariaLabel,
|
|
446
|
-
"aria-disabled": ariaDisabled,
|
|
447
|
-
"data-testid": dataTestId
|
|
448
|
-
}, ref) => {
|
|
449
|
-
const handleChangeText = (text) => {
|
|
450
|
-
onChangeText?.(text);
|
|
451
|
-
if (onChange) {
|
|
452
|
-
const syntheticEvent = {
|
|
453
|
-
target: { value: text },
|
|
454
|
-
currentTarget: { value: text },
|
|
455
|
-
type: "change",
|
|
456
|
-
nativeEvent: { text },
|
|
457
|
-
preventDefault: () => {
|
|
458
|
-
},
|
|
459
|
-
stopPropagation: () => {
|
|
460
|
-
},
|
|
461
|
-
isTrusted: false
|
|
462
|
-
};
|
|
463
|
-
onChange(syntheticEvent);
|
|
464
|
-
}
|
|
465
|
-
};
|
|
466
|
-
return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
|
|
467
|
-
import_react_native7.TextInput,
|
|
468
|
-
{
|
|
469
|
-
ref,
|
|
470
|
-
value,
|
|
471
|
-
placeholder,
|
|
472
|
-
onChangeText: handleChangeText,
|
|
473
|
-
onFocus,
|
|
474
|
-
onBlur,
|
|
475
|
-
onKeyPress: (e) => {
|
|
476
|
-
if (onKeyDown) {
|
|
477
|
-
onKeyDown({
|
|
478
|
-
key: e.nativeEvent.key,
|
|
479
|
-
preventDefault: () => {
|
|
480
|
-
}
|
|
481
|
-
});
|
|
482
|
-
}
|
|
483
|
-
},
|
|
484
|
-
editable: !disabled,
|
|
485
|
-
multiline: true,
|
|
486
|
-
numberOfLines: rows || 4,
|
|
487
|
-
style: [
|
|
488
|
-
{
|
|
489
|
-
color,
|
|
490
|
-
fontSize: typeof fontSize === "number" ? fontSize : void 0,
|
|
491
|
-
flex: 1,
|
|
492
|
-
padding: 0,
|
|
493
|
-
textAlignVertical: "top",
|
|
494
|
-
textAlign: style?.textAlign || "left"
|
|
495
|
-
},
|
|
496
|
-
style
|
|
497
|
-
],
|
|
498
|
-
placeholderTextColor,
|
|
499
|
-
maxLength,
|
|
500
|
-
testID: dataTestId || id,
|
|
501
|
-
accessibilityLabel: ariaLabel,
|
|
502
|
-
accessibilityHint: ariaDescribedBy,
|
|
503
|
-
accessibilityState: {
|
|
504
|
-
disabled: disabled || ariaDisabled
|
|
505
|
-
},
|
|
506
|
-
accessible: true
|
|
507
|
-
}
|
|
508
|
-
);
|
|
509
|
-
}
|
|
510
|
-
);
|
|
511
|
-
TextAreaPrimitive.displayName = "TextAreaPrimitive";
|
|
512
|
-
|
|
513
388
|
// src/Autocomplete.tsx
|
|
514
389
|
var import_xui_core = require("@xsolla/xui-core");
|
|
515
390
|
var import_xui_spinner = require("@xsolla/xui-spinner");
|
|
516
|
-
var
|
|
517
|
-
var SearchIcon = () => /* @__PURE__ */ (0,
|
|
391
|
+
var import_jsx_runtime5 = require("react/jsx-runtime");
|
|
392
|
+
var SearchIcon = () => /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
|
|
518
393
|
"svg",
|
|
519
394
|
{
|
|
520
395
|
width: "100%",
|
|
@@ -523,7 +398,7 @@ var SearchIcon = () => /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
|
|
|
523
398
|
fill: "none",
|
|
524
399
|
xmlns: "http://www.w3.org/2000/svg",
|
|
525
400
|
children: [
|
|
526
|
-
/* @__PURE__ */ (0,
|
|
401
|
+
/* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
527
402
|
"path",
|
|
528
403
|
{
|
|
529
404
|
d: "M8.25 14.25C11.5637 14.25 14.25 11.5637 14.25 8.25C14.25 4.93629 11.5637 2.25 8.25 2.25C4.93629 2.25 2.25 4.93629 2.25 8.25C2.25 11.5637 4.93629 14.25 8.25 14.25Z",
|
|
@@ -533,7 +408,7 @@ var SearchIcon = () => /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
|
|
|
533
408
|
strokeLinejoin: "round"
|
|
534
409
|
}
|
|
535
410
|
),
|
|
536
|
-
/* @__PURE__ */ (0,
|
|
411
|
+
/* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
537
412
|
"path",
|
|
538
413
|
{
|
|
539
414
|
d: "M15.75 15.75L12.4875 12.4875",
|
|
@@ -546,7 +421,7 @@ var SearchIcon = () => /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
|
|
|
546
421
|
]
|
|
547
422
|
}
|
|
548
423
|
);
|
|
549
|
-
var ChevronDown = () => /* @__PURE__ */ (0,
|
|
424
|
+
var ChevronDown = () => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
550
425
|
"svg",
|
|
551
426
|
{
|
|
552
427
|
width: "100%",
|
|
@@ -554,7 +429,7 @@ var ChevronDown = () => /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
|
554
429
|
viewBox: "0 0 18 18",
|
|
555
430
|
fill: "none",
|
|
556
431
|
xmlns: "http://www.w3.org/2000/svg",
|
|
557
|
-
children: /* @__PURE__ */ (0,
|
|
432
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
558
433
|
"path",
|
|
559
434
|
{
|
|
560
435
|
d: "M4.5 6.75L9 11.25L13.5 6.75",
|
|
@@ -566,7 +441,7 @@ var ChevronDown = () => /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
|
566
441
|
)
|
|
567
442
|
}
|
|
568
443
|
);
|
|
569
|
-
var ChevronUp = () => /* @__PURE__ */ (0,
|
|
444
|
+
var ChevronUp = () => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
570
445
|
"svg",
|
|
571
446
|
{
|
|
572
447
|
width: "100%",
|
|
@@ -574,7 +449,7 @@ var ChevronUp = () => /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
|
574
449
|
viewBox: "0 0 18 18",
|
|
575
450
|
fill: "none",
|
|
576
451
|
xmlns: "http://www.w3.org/2000/svg",
|
|
577
|
-
children: /* @__PURE__ */ (0,
|
|
452
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
578
453
|
"path",
|
|
579
454
|
{
|
|
580
455
|
d: "M13.5 11.25L9 6.75L4.5 11.25",
|
|
@@ -586,7 +461,7 @@ var ChevronUp = () => /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
|
586
461
|
)
|
|
587
462
|
}
|
|
588
463
|
);
|
|
589
|
-
var CloseIcon = () => /* @__PURE__ */ (0,
|
|
464
|
+
var CloseIcon = () => /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
|
|
590
465
|
"svg",
|
|
591
466
|
{
|
|
592
467
|
width: "100%",
|
|
@@ -595,7 +470,7 @@ var CloseIcon = () => /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
|
|
|
595
470
|
fill: "none",
|
|
596
471
|
xmlns: "http://www.w3.org/2000/svg",
|
|
597
472
|
children: [
|
|
598
|
-
/* @__PURE__ */ (0,
|
|
473
|
+
/* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
599
474
|
"path",
|
|
600
475
|
{
|
|
601
476
|
d: "M13.5 4.5L4.5 13.5",
|
|
@@ -605,7 +480,7 @@ var CloseIcon = () => /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
|
|
|
605
480
|
strokeLinejoin: "round"
|
|
606
481
|
}
|
|
607
482
|
),
|
|
608
|
-
/* @__PURE__ */ (0,
|
|
483
|
+
/* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
609
484
|
"path",
|
|
610
485
|
{
|
|
611
486
|
d: "M4.5 4.5L13.5 13.5",
|
|
@@ -645,7 +520,7 @@ var Autocomplete = ({
|
|
|
645
520
|
state: externalState,
|
|
646
521
|
label,
|
|
647
522
|
errorLabel,
|
|
648
|
-
iconLeft = /* @__PURE__ */ (0,
|
|
523
|
+
iconLeft = /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(SearchIcon, {}),
|
|
649
524
|
chevronRight = true,
|
|
650
525
|
filled = true,
|
|
651
526
|
maxHeight = 250,
|
|
@@ -653,11 +528,11 @@ var Autocomplete = ({
|
|
|
653
528
|
emptyMessage = "No results found"
|
|
654
529
|
}) => {
|
|
655
530
|
const { theme } = (0, import_xui_core.useDesignSystem)();
|
|
656
|
-
const [internalValue, setInternalValue] = (0,
|
|
657
|
-
const [isFocused, setIsFocused] = (0,
|
|
658
|
-
const [activeIndex, setActiveIndex] = (0,
|
|
659
|
-
const containerRef = (0,
|
|
660
|
-
const inputRef = (0,
|
|
531
|
+
const [internalValue, setInternalValue] = (0, import_react3.useState)(propValue || "");
|
|
532
|
+
const [isFocused, setIsFocused] = (0, import_react3.useState)(false);
|
|
533
|
+
const [activeIndex, setActiveIndex] = (0, import_react3.useState)(-1);
|
|
534
|
+
const containerRef = (0, import_react3.useRef)(null);
|
|
535
|
+
const inputRef = (0, import_react3.useRef)(null);
|
|
661
536
|
const value = propValue !== void 0 ? propValue : internalValue;
|
|
662
537
|
const state = externalState || (isFocused ? "focus" : "default");
|
|
663
538
|
const isDisable = state === "disable";
|
|
@@ -673,12 +548,12 @@ var Autocomplete = ({
|
|
|
673
548
|
}));
|
|
674
549
|
const hasOptions = normalizedOptions.length > 0;
|
|
675
550
|
const showDropdown = isFocus && (hasOptions || isLoading || value.length > 0);
|
|
676
|
-
(0,
|
|
551
|
+
(0, import_react3.useEffect)(() => {
|
|
677
552
|
if (!showDropdown) {
|
|
678
553
|
setActiveIndex(-1);
|
|
679
554
|
}
|
|
680
555
|
}, [showDropdown]);
|
|
681
|
-
(0,
|
|
556
|
+
(0, import_react3.useEffect)(() => {
|
|
682
557
|
const handleClickOutside = (event) => {
|
|
683
558
|
if (containerRef.current && !containerRef.current.contains(event.target)) {
|
|
684
559
|
setIsFocused(false);
|
|
@@ -691,7 +566,7 @@ var Autocomplete = ({
|
|
|
691
566
|
document.removeEventListener("mousedown", handleClickOutside);
|
|
692
567
|
};
|
|
693
568
|
}, [isFocused]);
|
|
694
|
-
(0,
|
|
569
|
+
(0, import_react3.useEffect)(() => {
|
|
695
570
|
const handleEscape = (event) => {
|
|
696
571
|
if (event.key === "Escape" && isFocused) {
|
|
697
572
|
setIsFocused(false);
|
|
@@ -711,7 +586,7 @@ var Autocomplete = ({
|
|
|
711
586
|
setActiveIndex(-1);
|
|
712
587
|
}
|
|
713
588
|
};
|
|
714
|
-
const handleSelect = (0,
|
|
589
|
+
const handleSelect = (0, import_react3.useCallback)(
|
|
715
590
|
(option) => {
|
|
716
591
|
setInternalValue(option.label);
|
|
717
592
|
setIsFocused(false);
|
|
@@ -792,7 +667,7 @@ var Autocomplete = ({
|
|
|
792
667
|
}
|
|
793
668
|
return "transparent";
|
|
794
669
|
};
|
|
795
|
-
return /* @__PURE__ */ (0,
|
|
670
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
|
|
796
671
|
Box,
|
|
797
672
|
{
|
|
798
673
|
ref: containerRef,
|
|
@@ -801,7 +676,7 @@ var Autocomplete = ({
|
|
|
801
676
|
width: "100%",
|
|
802
677
|
position: "relative",
|
|
803
678
|
children: [
|
|
804
|
-
label && /* @__PURE__ */ (0,
|
|
679
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
805
680
|
Text,
|
|
806
681
|
{
|
|
807
682
|
color: theme.colors.content.secondary,
|
|
@@ -811,7 +686,7 @@ var Autocomplete = ({
|
|
|
811
686
|
children: label
|
|
812
687
|
}
|
|
813
688
|
),
|
|
814
|
-
/* @__PURE__ */ (0,
|
|
689
|
+
/* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
|
|
815
690
|
Box,
|
|
816
691
|
{
|
|
817
692
|
backgroundColor,
|
|
@@ -829,8 +704,8 @@ var Autocomplete = ({
|
|
|
829
704
|
borderColor: inputColors.borderHover
|
|
830
705
|
} : void 0,
|
|
831
706
|
children: [
|
|
832
|
-
iconLeft && /* @__PURE__ */ (0,
|
|
833
|
-
/* @__PURE__ */ (0,
|
|
707
|
+
iconLeft && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(Box, { alignItems: "center", justifyContent: "center", children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(Icon, { size: sizeStyles.iconSize, color: iconColor, children: iconLeft }) }),
|
|
708
|
+
/* @__PURE__ */ (0, import_jsx_runtime5.jsx)(Box, { flex: 1, height: "100%", justifyContent: "center", children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
834
709
|
InputPrimitive,
|
|
835
710
|
{
|
|
836
711
|
ref: inputRef,
|
|
@@ -850,9 +725,9 @@ var Autocomplete = ({
|
|
|
850
725
|
"aria-activedescendant": activeIndex >= 0 ? `autocomplete-option-${normalizedOptions[activeIndex]?.id}` : void 0
|
|
851
726
|
}
|
|
852
727
|
) }),
|
|
853
|
-
/* @__PURE__ */ (0,
|
|
854
|
-
value.length > 0 && !isDisable && /* @__PURE__ */ (0,
|
|
855
|
-
chevronRight && /* @__PURE__ */ (0,
|
|
728
|
+
/* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(Box, { flexDirection: "row", alignItems: "center", gap: 4, children: [
|
|
729
|
+
value.length > 0 && !isDisable && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(Box, { onPress: handleClear, padding: 2, children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(Icon, { size: sizeStyles.iconSize - 2, color: iconColor, children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(CloseIcon, {}) }) }),
|
|
730
|
+
chevronRight && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
856
731
|
Box,
|
|
857
732
|
{
|
|
858
733
|
alignItems: "center",
|
|
@@ -868,14 +743,14 @@ var Autocomplete = ({
|
|
|
868
743
|
}
|
|
869
744
|
},
|
|
870
745
|
style: { cursor: isDisable ? "not-allowed" : "pointer" },
|
|
871
|
-
children: /* @__PURE__ */ (0,
|
|
746
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(Icon, { size: sizeStyles.iconSize, color: iconColor, children: isFocus ? /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(ChevronUp, {}) : /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(ChevronDown, {}) })
|
|
872
747
|
}
|
|
873
748
|
)
|
|
874
749
|
] })
|
|
875
750
|
]
|
|
876
751
|
}
|
|
877
752
|
),
|
|
878
|
-
showDropdown && /* @__PURE__ */ (0,
|
|
753
|
+
showDropdown && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
879
754
|
Box,
|
|
880
755
|
{
|
|
881
756
|
position: "absolute",
|
|
@@ -897,14 +772,14 @@ var Autocomplete = ({
|
|
|
897
772
|
id: "autocomplete-listbox",
|
|
898
773
|
role: "listbox",
|
|
899
774
|
"aria-label": "Autocomplete suggestions",
|
|
900
|
-
children: isLoading ? /* @__PURE__ */ (0,
|
|
775
|
+
children: isLoading ? /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
901
776
|
Box,
|
|
902
777
|
{
|
|
903
778
|
padding: 16,
|
|
904
779
|
alignItems: "center",
|
|
905
780
|
justifyContent: "center",
|
|
906
781
|
minHeight: 60,
|
|
907
|
-
children: /* @__PURE__ */ (0,
|
|
782
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
908
783
|
import_xui_spinner.Spinner,
|
|
909
784
|
{
|
|
910
785
|
size: "md",
|
|
@@ -912,7 +787,7 @@ var Autocomplete = ({
|
|
|
912
787
|
}
|
|
913
788
|
)
|
|
914
789
|
}
|
|
915
|
-
) : hasOptions ? normalizedOptions.map((option, index) => /* @__PURE__ */ (0,
|
|
790
|
+
) : hasOptions ? normalizedOptions.map((option, index) => /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
|
|
916
791
|
Box,
|
|
917
792
|
{
|
|
918
793
|
id: `autocomplete-option-${option.id}`,
|
|
@@ -933,14 +808,14 @@ var Autocomplete = ({
|
|
|
933
808
|
opacity: option.disabled ? 0.5 : 1
|
|
934
809
|
},
|
|
935
810
|
children: [
|
|
936
|
-
option.icon && /* @__PURE__ */ (0,
|
|
811
|
+
option.icon && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
937
812
|
Box,
|
|
938
813
|
{
|
|
939
814
|
width: menuSizeStyles.iconSize,
|
|
940
815
|
marginTop: option.description ? 2 : 0,
|
|
941
816
|
alignItems: "center",
|
|
942
817
|
justifyContent: "center",
|
|
943
|
-
children: /* @__PURE__ */ (0,
|
|
818
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
944
819
|
Icon,
|
|
945
820
|
{
|
|
946
821
|
size: menuSizeStyles.iconSize,
|
|
@@ -950,8 +825,8 @@ var Autocomplete = ({
|
|
|
950
825
|
)
|
|
951
826
|
}
|
|
952
827
|
),
|
|
953
|
-
/* @__PURE__ */ (0,
|
|
954
|
-
/* @__PURE__ */ (0,
|
|
828
|
+
/* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(Box, { flex: 1, flexDirection: "column", gap: 2, children: [
|
|
829
|
+
/* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
955
830
|
Text,
|
|
956
831
|
{
|
|
957
832
|
color: option.disabled ? theme.colors.control.input.textDisable : theme.colors.content.primary,
|
|
@@ -961,7 +836,7 @@ var Autocomplete = ({
|
|
|
961
836
|
children: option.label
|
|
962
837
|
}
|
|
963
838
|
),
|
|
964
|
-
option.description && /* @__PURE__ */ (0,
|
|
839
|
+
option.description && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
965
840
|
Text,
|
|
966
841
|
{
|
|
967
842
|
color: theme.colors.content.tertiary,
|
|
@@ -974,7 +849,7 @@ var Autocomplete = ({
|
|
|
974
849
|
]
|
|
975
850
|
},
|
|
976
851
|
option.id
|
|
977
|
-
)) : /* @__PURE__ */ (0,
|
|
852
|
+
)) : /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(Box, { padding: 16, alignItems: "center", children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
978
853
|
Text,
|
|
979
854
|
{
|
|
980
855
|
color: theme.colors.content.tertiary,
|
|
@@ -984,7 +859,7 @@ var Autocomplete = ({
|
|
|
984
859
|
) })
|
|
985
860
|
}
|
|
986
861
|
),
|
|
987
|
-
isError && errorLabel && /* @__PURE__ */ (0,
|
|
862
|
+
isError && errorLabel && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
988
863
|
Text,
|
|
989
864
|
{
|
|
990
865
|
color: theme.colors.content.alert.primary,
|