kitunga-web 0.1.93 → 0.1.95

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.
@@ -17,6 +17,10 @@ export interface DropdownMenuProps {
17
17
  isOpen: boolean;
18
18
  onClose: () => void;
19
19
  triggerRef?: React.RefObject<HTMLElement | null>;
20
+ /** Elemento contra o qual o menu se posiciona (ex.: a bolha dona do
21
+ trigger). Sem ele a posição mede-se do próprio trigger. O
22
+ click-fora continua a ignorar só o trigger. */
23
+ anchorRef?: React.RefObject<HTMLElement | null>;
20
24
  items: DropdownMenuItem[];
21
25
  onSelect?: (itemId: string) => void;
22
26
  size?: 'sm' | 'md' | 'lg';
@@ -29,5 +33,5 @@ export interface DropdownMenuProps {
29
33
  boundaryRef?: React.RefObject<HTMLElement | null>;
30
34
  className?: string;
31
35
  }
32
- export default function DropdownMenu({ isOpen, onClose, triggerRef, items, onSelect, size, width, placementVertical, placementHorizontal, bordered, placementOffset, boundaryRef, className, }: DropdownMenuProps): import("react/jsx-runtime").JSX.Element | null;
36
+ export default function DropdownMenu({ isOpen, onClose, triggerRef, items, onSelect, size, width, placementVertical, placementHorizontal, bordered, placementOffset, boundaryRef, anchorRef, className, }: DropdownMenuProps): import("react/jsx-runtime").JSX.Element | null;
33
37
  //# sourceMappingURL=DropdownMenu.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownMenu.d.ts","sourceRoot":"","sources":["../../../../../src/features/overlays/components/dropdowns/DropdownMenu.tsx"],"names":[],"mappings":"AAMA,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6CAA6C;IAC7C,OAAO,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;IAC7C,mEAAmE;IACnE,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAChC;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IACjD,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iBAAiB,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC9C,mBAAmB,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IAChD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uFAAuF;IACvF,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EACnC,MAAM,EACN,OAAO,EACP,UAAU,EACV,KAAK,EACL,QAAQ,EACR,IAAW,EACX,KAAW,EACX,iBAA4B,EAC5B,mBAA6B,EAC7B,QAAe,EACf,eAAmB,EACnB,WAAW,EACX,SAAc,GACf,EAAE,iBAAiB,kDA4OnB"}
1
+ {"version":3,"file":"DropdownMenu.d.ts","sourceRoot":"","sources":["../../../../../src/features/overlays/components/dropdowns/DropdownMenu.tsx"],"names":[],"mappings":"AAMA,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6CAA6C;IAC7C,OAAO,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;IAC7C,mEAAmE;IACnE,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAChC;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IACjD;;sDAEkD;IAClD,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAChD,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iBAAiB,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC9C,mBAAmB,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IAChD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uFAAuF;IACvF,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EACnC,MAAM,EACN,OAAO,EACP,UAAU,EACV,KAAK,EACL,QAAQ,EACR,IAAW,EACX,KAAW,EACX,iBAA4B,EAC5B,mBAA6B,EAC7B,QAAe,EACf,eAAmB,EACnB,WAAW,EACX,SAAS,EACT,SAAc,GACf,EAAE,iBAAiB,kDA6OnB"}
@@ -3,7 +3,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import { useEffect, useLayoutEffect, useRef, useState } from 'react';
4
4
  import styles from './DropdownMenu.module.css';
5
5
  import SharedMenuItem from '../../../navigation/components/Menu/SharedMenuItem';
6
- export default function DropdownMenu({ isOpen, onClose, triggerRef, items, onSelect, size = 'md', width = 220, placementVertical = 'bottom', placementHorizontal = 'right', bordered = true, placementOffset = 8, boundaryRef, className = '', }) {
6
+ export default function DropdownMenu({ isOpen, onClose, triggerRef, items, onSelect, size = 'md', width = 220, placementVertical = 'bottom', placementHorizontal = 'right', bordered = true, placementOffset = 8, boundaryRef, anchorRef, className = '', }) {
7
7
  const dropdownRef = useRef(null);
8
8
  const [coords, setCoords] = useState(null);
9
9
  // Se ainda não temos coords, o dropdown renderiza escondido para medir a altura.
@@ -59,9 +59,11 @@ export default function DropdownMenu({ isOpen, onClose, triggerRef, items, onSel
59
59
  return spaceRight > spaceLeft ? 'left' : 'right';
60
60
  };
61
61
  const calcCoords = () => {
62
- if (!(triggerRef === null || triggerRef === void 0 ? void 0 : triggerRef.current))
62
+ var _a;
63
+ const target = (_a = anchorRef === null || anchorRef === void 0 ? void 0 : anchorRef.current) !== null && _a !== void 0 ? _a : triggerRef === null || triggerRef === void 0 ? void 0 : triggerRef.current;
64
+ if (!target)
63
65
  return null;
64
- const rect = triggerRef.current.getBoundingClientRect();
66
+ const rect = target.getBoundingClientRect();
65
67
  const dropdownWidth = width;
66
68
  const vDir = resolveVertical(rect);
67
69
  const hDir = resolveHorizontal(rect, dropdownWidth);
@@ -98,7 +100,7 @@ export default function DropdownMenu({ isOpen, onClose, triggerRef, items, onSel
98
100
  }
99
101
  setCoords(calcCoords());
100
102
  // eslint-disable-next-line react-hooks/exhaustive-deps
101
- }, [isOpen, triggerRef, size, width, placementVertical, placementHorizontal, placementOffset, boundaryRef, measuring]);
103
+ }, [isOpen, triggerRef, anchorRef, size, width, placementVertical, placementHorizontal, placementOffset, boundaryRef, measuring]);
102
104
  // Fechar ao clicar fora.
103
105
  useEffect(() => {
104
106
  if (!isOpen)
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownMenu.js","sourceRoot":"","sources":["../../../../../src/features/overlays/components/dropdowns/DropdownMenu.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DropdownMenu.js","sourceRoot":"","sources":["../../../../../src/features/overlays/components/dropdowns/DropdownMenu.tsx"],"names":[],"mappings":"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"}
@@ -91,7 +91,7 @@ export function GenericStepRenderer({ formData, errors, mode, fields, onFieldCha
91
91
  return (_jsx("div", { className: styles.stepContent, children: orderedRows.map((rowFields, rowIdx) => (_jsx("div", { className: styles.formRow, children: rowFields.map((field) => {
92
92
  var _a, _b, _c, _d, _e;
93
93
  const groupClass = `${styles.formGroup} ${field.width === "half" ? styles.formGroupHalf : ""}`.trim();
94
- return (_jsxs("div", { className: groupClass, children: [_jsxs("label", { htmlFor: field.key, className: field.required ? styles.requiredLabel : styles.optionalLabel, children: [_jsx("span", { children: field.label }), field.required && _jsx(Asterisk, { size: 12, className: styles.requiredIcon }), !field.required && _jsx("span", { className: styles.optionalText, children: optionalLabel })] }), field.type === "text" && (_jsx(TextInput, { id: field.key, ref: field.resetOnValidationError ? (el => { if (el)
94
+ return (_jsxs("div", { className: groupClass, children: [_jsxs("label", { htmlFor: field.key, className: field.required ? styles.requiredLabel : styles.optionalLabel, children: [_jsx("span", { children: field.label }), field.required && _jsx(Asterisk, { size: 14, className: styles.requiredIcon }), !field.required && _jsx("span", { className: styles.optionalText, children: optionalLabel })] }), field.type === "text" && (_jsx(TextInput, { id: field.key, ref: field.resetOnValidationError ? (el => { if (el)
95
95
  inputRefs.current[field.key] = el; }) : undefined, type: (_a = field.inputType) !== null && _a !== void 0 ? _a : "text", size: inputSize, value: getValue(field.key), onChange: (value) => handleFieldChange(field.key, value), className: errors[field.key] ? styles.inputError : "", placeholder: field.placeholder, readOnly: isReadOnly(field), autoComplete: (_b = field.autoComplete) !== null && _b !== void 0 ? _b : undefined, inputMode: field.inputMode, maxLength: field.maxLength, showPasswordToggle: field.inputType === "password", leftIcon: field.leftIcon })), field.type === "textarea" && (_jsx(TextareaInput, { id: field.key, size: inputSize, value: getValue(field.key), onChange: (value) => handleFieldChange(field.key, value), className: errors[field.key] ? styles.inputError : "", placeholder: field.placeholder, readOnly: isReadOnly(field), leftIcon: field.leftIcon })), field.type === "phone" && (_jsx(PhoneInput, { id: field.key, size: inputSize, value: getValue(field.key), onChange: (value) => handleFieldChange(field.key, value), className: errors[field.key] ? styles.inputError : "", placeholder: field.placeholder, readOnly: isReadOnly(field), leftIcon: field.leftIcon, countryCode: (() => {
96
96
  const c = getValue("country") || getValue("pais");
97
97
  return (c && c !== "N/A") ? c : userCountryCode;
@@ -44,7 +44,7 @@
44
44
 
45
45
  .requiredLabel span,
46
46
  .optionalLabel span:first-child {
47
- font-size: 0.875rem;
47
+ font-size: 0.95rem;
48
48
  font-weight: 500;
49
49
  color: #222833;
50
50
  }
@@ -55,7 +55,7 @@
55
55
  }
56
56
 
57
57
  .optionalText {
58
- font-size: 0.85rem;
58
+ font-size: 0.9rem;
59
59
  color: #6b7280;
60
60
  font-weight: 400;
61
61
  }
@@ -4,6 +4,10 @@ export interface Option {
4
4
  label: string;
5
5
  selectedLabel?: string;
6
6
  disabled?: boolean;
7
+ /** Ícone da opção (bandeira, avatar, glyph) — renderiza na linha
8
+ * do dropdown e, se a opção estiver seleccionada, também no
9
+ * trigger fechado (ganha ao leftIcon contextual). */
10
+ icon?: React.ReactNode;
7
11
  }
8
12
  export interface CustomSelectProps {
9
13
  id?: string;
@@ -23,6 +27,13 @@ export interface CustomSelectProps {
23
27
  collapsible?: boolean;
24
28
  dropdownMinWidth?: number;
25
29
  dropdownAlign?: 'left' | 'right';
30
+ /** Input de filtro fixo no topo do dropdown — para listas longas
31
+ * (ex.: países). Filtro accent-insensitive por label, selectedLabel
32
+ * e value (o "244" encontra "Angola (+244)"). */
33
+ searchable?: boolean;
34
+ searchPlaceholder?: string;
35
+ searchIcon?: React.ReactNode;
36
+ noResultsMessage?: string;
26
37
  }
27
38
  declare const CustomSelect: React.FC<CustomSelectProps>;
28
39
  export default CustomSelect;
@@ -1 +1 @@
1
- {"version":3,"file":"CustomSelect.d.ts","sourceRoot":"","sources":["../../../../../src/features/selects/components/Selects/CustomSelect.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAI3D,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7B,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CAClC;AAED,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAoI7C,CAAC;AAEF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"CustomSelect.d.ts","sourceRoot":"","sources":["../../../../../src/features/selects/components/Selects/CustomSelect.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAI3D,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;0DAEsD;IACtD,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7B,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACjC;;sDAEkD;IAClD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAiM7C,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -1,15 +1,35 @@
1
1
  'use client';
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { useState, useRef, useEffect } from 'react';
4
- import { ChevronDown, Check } from 'lucide-react';
4
+ import { ChevronDown, Check, Search } from 'lucide-react';
5
5
  import styles from './CustomSelect.module.css';
6
- const CustomSelect = ({ id, name, value, onChange, options, placeholder = 'Selecione uma opção', required = false, className = '', disabled = false, leftIcon, hasError = false, variant = 'default', size = 'md', valueBold = false, collapsible = false, dropdownMinWidth, dropdownAlign = 'right', }) => {
7
- var _a;
6
+ const CustomSelect = ({ id, name, value, onChange, options, placeholder = 'Selecione uma opção', required = false, className = '', disabled = false, leftIcon, hasError = false, variant = 'default', size = 'md', valueBold = false, collapsible = false, dropdownMinWidth, dropdownAlign = 'right', searchable = false, searchPlaceholder, searchIcon, noResultsMessage = 'Sem resultados', }) => {
7
+ var _a, _b;
8
8
  const [isOpen, setIsOpen] = useState(false);
9
+ const [search, setSearch] = useState('');
9
10
  const selectRef = useRef(null);
11
+ const searchInputRef = useRef(null);
10
12
  const selectedOption = value && value.trim() !== ''
11
13
  ? options.find(option => option.value === value) || null
12
14
  : null;
15
+ // O ícone do trigger: o da opção seleccionada (bandeira do país)
16
+ // ganha ao leftIcon contextual (Globe, Funnel…).
17
+ const displayIcon = (_a = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.icon) !== null && _a !== void 0 ? _a : leftIcon;
18
+ const normalize = (text) => text.normalize('NFD').replace(/[\u0300-\u036f]/g, '').toLowerCase();
19
+ const query = normalize(search.trim());
20
+ const visibleOptions = query
21
+ ? options.filter((option) => normalize(option.label).includes(query) ||
22
+ normalize(option.value).includes(query) ||
23
+ (option.selectedLabel ? normalize(option.selectedLabel).includes(query) : false))
24
+ : options;
25
+ // Ao abrir: foco no input de pesquisa. Ao fechar: a pesquisa morre.
26
+ useEffect(() => {
27
+ var _a;
28
+ if (isOpen && searchable)
29
+ (_a = searchInputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
30
+ if (!isOpen)
31
+ setSearch('');
32
+ }, [isOpen, searchable]);
13
33
  const toggleDropdown = () => {
14
34
  if (disabled)
15
35
  return;
@@ -33,21 +53,24 @@ const CustomSelect = ({ id, name, value, onChange, options, placeholder = 'Selec
33
53
  document.removeEventListener('mousedown', handleClickOutside);
34
54
  };
35
55
  }, []);
36
- return (_jsxs("div", { className: `${styles.customSelect} ${styles[size]} ${variant === 'flat' ? styles.flat : ''} ${className} ${isOpen ? styles.open : ''} ${hasError ? styles.error : ''} ${collapsible ? styles.collapsible : ''}`, ref: selectRef, children: [name && (_jsx("input", { type: "hidden", id: id, name: name, value: value || '', required: required })), _jsxs("div", { className: `${styles.selectedValue} ${disabled ? styles.disabled : ''} ${leftIcon ? styles.hasLeftIcon : ''}`, onClick: toggleDropdown, role: "button", tabIndex: disabled ? -1 : 0, onKeyDown: (e) => {
56
+ return (_jsxs("div", { className: `${styles.customSelect} ${styles[size]} ${variant === 'flat' ? styles.flat : ''} ${className} ${isOpen ? styles.open : ''} ${hasError ? styles.error : ''} ${collapsible ? styles.collapsible : ''}`, ref: selectRef, children: [name && (_jsx("input", { type: "hidden", id: id, name: name, value: value || '', required: required })), _jsxs("div", { className: `${styles.selectedValue} ${disabled ? styles.disabled : ''} ${displayIcon ? styles.hasLeftIcon : ''}`, onClick: toggleDropdown, role: "button", tabIndex: disabled ? -1 : 0, onKeyDown: (e) => {
37
57
  if (disabled)
38
58
  return;
39
59
  if (e.key === 'Enter' || e.key === ' ') {
40
60
  e.preventDefault();
41
61
  toggleDropdown();
42
62
  }
43
- }, children: [leftIcon && (_jsx("span", { className: styles.leftIcon, children: leftIcon })), _jsx("span", { className: `${styles.valueText} ${!value ? styles.placeholder : ''} ${valueBold ? styles.valueBold : ''}`.trim(), children: selectedOption ? (_a = selectedOption.selectedLabel) !== null && _a !== void 0 ? _a : selectedOption.label : placeholder }), _jsx(ChevronDown, { size: 16, className: `${styles.arrow} ${isOpen ? styles.rotate : ''}` })] }), isOpen && (_jsx("div", { className: `${styles.dropdown} ${dropdownAlign === 'left' ? styles.dropdownLeft : styles.dropdownRight}`, style: dropdownMinWidth ? { minWidth: `${dropdownMinWidth}px` } : undefined, children: _jsx("div", { className: styles.dropdownPanel, children: options.map((option) => (_jsxs("div", { className: `${styles.option} ${value === option.value ? styles.selected : ''} ${option.disabled ? styles.disabledOption : ''}`, onClick: () => handleSelect(option), onKeyDown: (e) => {
44
- if (option.disabled)
45
- return;
46
- if (e.key === 'Enter' || e.key === ' ') {
47
- e.preventDefault();
48
- handleSelect(option);
49
- }
50
- }, role: "option", "aria-selected": value === option.value, "aria-disabled": option.disabled ? true : undefined, tabIndex: option.disabled ? -1 : 0, children: [_jsx("span", { children: option.label }), value === option.value && (_jsx(Check, { size: 14, className: styles.checkIcon }))] }, option.value))) }) }))] }));
63
+ }, children: [displayIcon && (_jsx("span", { className: styles.leftIcon, children: displayIcon })), _jsx("span", { className: `${styles.valueText} ${!value ? styles.placeholder : ''} ${valueBold ? styles.valueBold : ''}`.trim(), children: selectedOption ? (_b = selectedOption.selectedLabel) !== null && _b !== void 0 ? _b : selectedOption.label : placeholder }), _jsx(ChevronDown, { size: 16, className: `${styles.arrow} ${isOpen ? styles.rotate : ''}` })] }), isOpen && (_jsx("div", { className: `${styles.dropdown} ${dropdownAlign === 'left' ? styles.dropdownLeft : styles.dropdownRight}`, style: dropdownMinWidth ? { minWidth: `${dropdownMinWidth}px` } : undefined, children: _jsxs("div", { className: styles.dropdownPanel, children: [searchable && (_jsxs("div", { className: styles.searchRow, children: [_jsx("span", { className: styles.searchIconWrap, children: searchIcon !== null && searchIcon !== void 0 ? searchIcon : _jsx(Search, { size: 14 }) }), _jsx("input", { ref: searchInputRef, type: "text", className: styles.searchInput, value: search, placeholder: searchPlaceholder, onChange: (e) => setSearch(e.target.value), onKeyDown: (e) => {
64
+ if (e.key === 'Enter')
65
+ e.preventDefault();
66
+ }, onClick: (e) => e.stopPropagation() })] })), _jsxs("div", { className: styles.dropdownList, role: "listbox", children: [visibleOptions.map((option) => (_jsxs("div", { className: `${styles.option} ${value === option.value ? styles.selected : ''} ${option.disabled ? styles.disabledOption : ''}`, onClick: () => handleSelect(option), onKeyDown: (e) => {
67
+ if (option.disabled)
68
+ return;
69
+ if (e.key === 'Enter' || e.key === ' ') {
70
+ e.preventDefault();
71
+ handleSelect(option);
72
+ }
73
+ }, role: "option", "aria-selected": value === option.value, "aria-disabled": option.disabled ? true : undefined, tabIndex: option.disabled ? -1 : 0, children: [_jsxs("span", { className: styles.optionText, children: [option.icon && (_jsx("span", { className: styles.optionIcon, children: option.icon })), _jsx("span", { children: option.label })] }), value === option.value && (_jsx(Check, { size: 14, className: styles.checkIcon }))] }, option.value))), visibleOptions.length === 0 && (_jsx("div", { className: styles.noResults, children: noResultsMessage }))] })] }) }))] }));
51
74
  };
52
75
  export default CustomSelect;
53
76
  //# sourceMappingURL=CustomSelect.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CustomSelect.js","sourceRoot":"","sources":["../../../../../src/features/selects/components/Selects/CustomSelect.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAc,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,MAAM,MAAM,2BAA2B,CAAC;AA6B/C,MAAM,YAAY,GAAgC,CAAC,EACjD,EAAE,EACF,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,OAAO,EACP,WAAW,GAAG,qBAAqB,EACnC,QAAQ,GAAG,KAAK,EAChB,SAAS,GAAG,EAAE,EACd,QAAQ,GAAG,KAAK,EAChB,QAAQ,EACR,QAAQ,GAAG,KAAK,EAChB,OAAO,GAAG,SAAS,EACnB,IAAI,GAAG,IAAI,EACX,SAAS,GAAG,KAAK,EACjB,WAAW,GAAG,KAAK,EACnB,gBAAgB,EAChB,aAAa,GAAG,OAAO,GACxB,EAAE,EAAE;;IACH,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,SAAS,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAE/C,MAAM,cAAc,GAAG,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;QACjD,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,KAAK,CAAC,IAAI,IAAI;QACxD,CAAC,CAAC,IAAI,CAAC;IAET,MAAM,cAAc,GAAG,GAAG,EAAE;QAC1B,IAAI,QAAQ;YAAE,OAAO;QACrB,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,CAAC,MAAc,EAAE,EAAE;QACtC,IAAI,MAAM,CAAC,QAAQ;YAAE,OAAO;QAC5B,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvB,SAAS,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC,CAAC;IAEF,mCAAmC;IACnC,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,kBAAkB,GAAG,CAAC,KAAiB,EAAE,EAAE;YAC/C,IAAI,SAAS,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAc,CAAC,EAAE,CAAC;gBAC3E,SAAS,CAAC,KAAK,CAAC,CAAC;YACnB,CAAC;QACH,CAAC,CAAC;QAEF,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;QAC3D,OAAO,GAAG,EAAE;YACV,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;QAChE,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAGP,OAAO,CACL,eACE,SAAS,EAAE,GAAG,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,SAAS,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,EAC/M,GAAG,EAAE,SAAS,aAEb,IAAI,IAAI,CACP,gBACE,IAAI,EAAC,QAAQ,EACb,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,IAAI,EAAE,EAClB,QAAQ,EAAE,QAAQ,GAClB,CACH,EAED,eACE,SAAS,EAAE,GAAG,MAAM,CAAC,aAAa,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,EAC7G,OAAO,EAAE,cAAc,EACvB,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAC3B,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;oBACf,IAAI,QAAQ;wBAAE,OAAO;oBACrB,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;wBACvC,CAAC,CAAC,cAAc,EAAE,CAAC;wBACnB,cAAc,EAAE,CAAC;oBACnB,CAAC;gBACH,CAAC,aAEA,QAAQ,IAAI,CACX,eAAM,SAAS,EAAE,MAAM,CAAC,QAAQ,YAC7B,QAAQ,GACJ,CACR,EACD,eACE,SAAS,EAAE,GAAG,MAAM,CAAC,SAAS,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EACnG,EAAE,CAAC,IAAI,EAAE,YAEV,cAAc,CAAC,CAAC,CAAC,MAAA,cAAc,CAAC,aAAa,mCAAI,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,GAC/E,EACP,KAAC,WAAW,IACV,IAAI,EAAE,EAAE,EACR,SAAS,EAAE,GAAG,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,GAC3D,IACE,EAEL,MAAM,IAAI,CACT,cACE,SAAS,EAAE,GAAG,MAAM,CAAC,QAAQ,IAAI,aAAa,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,EAAE,EACxG,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,gBAAgB,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,YAE3E,cAAK,SAAS,EAAE,MAAM,CAAC,aAAa,YACjC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CACvB,eAEE,SAAS,EAAE,GAAG,MAAM,CAAC,MAAM,IAAI,KAAK,KAAK,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EACxE,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,EAAE,EACpD,OAAO,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,EACnC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;4BACf,IAAI,MAAM,CAAC,QAAQ;gCAAE,OAAO;4BAC5B,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;gCACvC,CAAC,CAAC,cAAc,EAAE,CAAC;gCACnB,YAAY,CAAC,MAAM,CAAC,CAAC;4BACvB,CAAC;wBACH,CAAC,EACD,IAAI,EAAC,QAAQ,mBACE,KAAK,KAAK,MAAM,CAAC,KAAK,mBACtB,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EACjD,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAElC,yBAAO,MAAM,CAAC,KAAK,GAAQ,EAC1B,KAAK,KAAK,MAAM,CAAC,KAAK,IAAI,CACzB,KAAC,KAAK,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,GAAI,CACjD,KAnBI,MAAM,CAAC,KAAK,CAoBb,CACP,CAAC,GACE,GACF,CACP,IACG,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"CustomSelect.js","sourceRoot":"","sources":["../../../../../src/features/selects/components/Selects/CustomSelect.tsx"],"names":[],"mappings":"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"}
@@ -180,9 +180,65 @@
180
180
  border: 1px solid var(--border-divider);
181
181
  border-radius: var(--radius-sm);
182
182
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
183
+ overflow: hidden;
184
+ animation: fadeIn 0.15s ease-out;
185
+ }
186
+
187
+ /* A zona de scroll vive na lista — o searchRow fica pinned acima. */
188
+ .dropdownList {
183
189
  max-height: 200px;
184
190
  overflow-y: auto;
185
- animation: fadeIn 0.15s ease-out;
191
+ }
192
+
193
+ .searchRow {
194
+ display: flex;
195
+ align-items: center;
196
+ height: 40px;
197
+ padding: 0 var(--spacing-md);
198
+ border-bottom: 1px solid var(--border-divider);
199
+ }
200
+
201
+ .searchIconWrap {
202
+ display: inline-flex;
203
+ align-items: center;
204
+ color: var(--text-tertiary);
205
+ flex-shrink: 0;
206
+ margin-right: var(--spacing-xs);
207
+ }
208
+
209
+ .searchInput {
210
+ flex: 1;
211
+ min-width: 0;
212
+ border: none;
213
+ outline: none;
214
+ background: transparent;
215
+ font-family: inherit;
216
+ font-size: 0.9rem;
217
+ color: var(--text-primary);
218
+ }
219
+
220
+ .searchInput::placeholder {
221
+ color: var(--text-tertiary);
222
+ }
223
+
224
+ .optionText {
225
+ display: inline-flex;
226
+ align-items: center;
227
+ min-width: 0;
228
+ }
229
+
230
+ .optionIcon {
231
+ display: inline-flex;
232
+ align-items: center;
233
+ justify-content: center;
234
+ margin-right: 0.625rem;
235
+ flex-shrink: 0;
236
+ }
237
+
238
+ .noResults {
239
+ padding: var(--spacing-md) 1rem;
240
+ color: var(--text-tertiary);
241
+ font-size: 0.9rem;
186
242
  }
187
243
 
188
244
  .dropdown .option .placeholder,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kitunga-web",
3
- "version": "0.1.93",
3
+ "version": "0.1.95",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "repository": {
@@ -47,6 +47,15 @@
47
47
  "publishConfig": {
48
48
  "registry": "https://registry.npmjs.org"
49
49
  },
50
+ "scripts": {
51
+ "dev": "dotenv -e .env.local next dev",
52
+ "start": "dotenv -e .env.local next start",
53
+ "build": "next build",
54
+ "build:lib": "node ./scripts/build-library.mjs",
55
+ "prepublishOnly": "pnpm run build:lib",
56
+ "publish:lib": "pnpm publish --no-git-checks",
57
+ "lint": "eslint"
58
+ },
50
59
  "dependencies": {
51
60
  "dotenv-cli": "^11.0.0",
52
61
  "lucide-react": "^0.515.0",
@@ -68,13 +77,5 @@
68
77
  "axios": "^1.13.2",
69
78
  "react": ">=18",
70
79
  "react-dom": ">=18"
71
- },
72
- "scripts": {
73
- "dev": "dotenv -e .env.local next dev",
74
- "start": "dotenv -e .env.local next start",
75
- "build": "next build",
76
- "build:lib": "node ./scripts/build-library.mjs",
77
- "publish:lib": "pnpm publish --no-git-checks",
78
- "lint": "eslint"
79
80
  }
80
- }
81
+ }