@motor-hero/ui-kit 0.22.1 → 0.23.1
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/components/multi-combobox.d.ts +35 -0
- package/dist/components/multi-combobox.d.ts.map +1 -0
- package/dist/index.cjs +297 -148
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +303 -155
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/components/multi-combobox.tsx +192 -0
- package/src/index.ts +2 -0
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { ComboboxOption } from "./combobox";
|
|
3
|
+
export interface MultiComboboxProps {
|
|
4
|
+
options: ComboboxOption[];
|
|
5
|
+
value: string[];
|
|
6
|
+
onChange: (value: string[]) => void;
|
|
7
|
+
/** Texto do gatilho quando nada está selecionado */
|
|
8
|
+
placeholder?: string;
|
|
9
|
+
/** Placeholder do campo de busca */
|
|
10
|
+
searchPlaceholder?: string;
|
|
11
|
+
/** Mensagem quando a busca não retorna nada */
|
|
12
|
+
emptyMessage?: string;
|
|
13
|
+
disabled?: boolean;
|
|
14
|
+
id?: string;
|
|
15
|
+
className?: string;
|
|
16
|
+
"aria-invalid"?: boolean | "true" | "false";
|
|
17
|
+
"aria-describedby"?: string;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Combobox de múltipla seleção com chips, acessível e responsivo.
|
|
21
|
+
*
|
|
22
|
+
* - Desktop: Popover não-modal + cmdk — o dropdown acompanha a largura do gatilho.
|
|
23
|
+
* Não-modal de propósito: dentro de um Dialog, um Popover modal trava
|
|
24
|
+
* `body { pointer-events: none }` e marca o resto do Dialog como aria-hidden,
|
|
25
|
+
* o que deixava a página/Dialog presos ao fechar com o picker aberto.
|
|
26
|
+
* - Mobile: Drawer (bottom sheet) + cmdk — evita os problemas de foco/clique de
|
|
27
|
+
* Popover dentro de modal no touch, então a busca funciona no celular.
|
|
28
|
+
*
|
|
29
|
+
* As opções selecionadas aparecem como chips dentro do gatilho; clicar numa
|
|
30
|
+
* opção da lista alterna a seleção (a lista permanece aberta) e o `×` de cada
|
|
31
|
+
* chip remove a opção. Aceita `aria-invalid`/`aria-describedby` (encaminhados
|
|
32
|
+
* pelo FormField em estado de erro) e fica com a borda vermelha quando inválido.
|
|
33
|
+
*/
|
|
34
|
+
export declare function MultiCombobox({ options, value, onChange, placeholder, searchPlaceholder, emptyMessage, disabled, id, className, "aria-invalid": ariaInvalid, "aria-describedby": ariaDescribedby, }: MultiComboboxProps): React.JSX.Element;
|
|
35
|
+
//# sourceMappingURL=multi-combobox.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multi-combobox.d.ts","sourceRoot":"","sources":["../../src/components/multi-combobox.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAEhD,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,cAAc,EAAE,CAAA;IACzB,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,CAAA;IACnC,oDAAoD;IACpD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,oCAAoC;IACpC,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,+CAA+C;IAC/C,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAA;IAC3C,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC5B;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,aAAa,CAAC,EAC5B,OAAO,EACP,KAAK,EACL,QAAQ,EACR,WAA4B,EAC5B,iBAA+B,EAC/B,YAA6C,EAC7C,QAAQ,EACR,EAAE,EACF,SAAS,EACT,cAAc,EAAE,WAAW,EAC3B,kBAAkB,EAAE,eAAe,GACpC,EAAE,kBAAkB,qBA0IpB"}
|