@vincisys/eyeson 0.9.0 → 0.10.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.
@@ -7,7 +7,8 @@ export type ComboboxOption = {
7
7
  label: string;
8
8
  value: string;
9
9
  };
10
- export type ComboboxProps<T = ComboboxOption> = {
10
+ type ComboboxValueType<T, Multiple extends boolean | undefined> = Multiple extends true ? T[] : T;
11
+ export type ComboboxProps<T = ComboboxOption, Multiple extends boolean | undefined = false> = {
11
12
  /** Texto do label acima do campo. */
12
13
  label?: string;
13
14
  /**
@@ -42,22 +43,38 @@ export type ComboboxProps<T = ComboboxOption> = {
42
43
  id?: string;
43
44
  /** `name` nativo do input, útil para submissão de formulários. */
44
45
  name?: string;
45
- /** Item atualmente selecionado (modo controlado). */
46
- value?: T | null;
47
- /** Item selecionado na montagem (modo não-controlado). */
48
- defaultValue?: T | null;
49
- /** Callback chamado quando o item selecionado muda. */
50
- onValueChange?: (value: T | null) => void;
46
+ /**
47
+ * Habilita a seleção de múltiplos itens, exibindo os selecionados como
48
+ * chips removíveis dentro do campo.
49
+ * @default false
50
+ */
51
+ multiple?: Multiple;
52
+ /** Item(ns) atualmente selecionado(s) (modo controlado). Array quando `multiple`. */
53
+ value?: ComboboxValueType<T, Multiple> | null;
54
+ /** Item(ns) selecionado(s) na montagem (modo não-controlado). Array quando `multiple`. */
55
+ defaultValue?: ComboboxValueType<T, Multiple> | null;
56
+ /** Callback chamado quando a seleção muda. */
57
+ onValueChange?: (value: ComboboxValueType<T, Multiple> | (Multiple extends true ? never : null)) => void;
58
+ /** Rótulo acessível do botão de remover um chip (modo `multiple`). Aceita o item removido para compor a mensagem. */
59
+ getRemoveItemLabel?: (item: T) => string;
51
60
  /** Retorna o texto exibido no input para um dado item. */
52
61
  getItemLabel?: (item: T) => string;
53
62
  /** Retorna o valor único que identifica um item. */
54
63
  getItemValue?: (item: T) => string;
55
- /** Renderização customizada de cada item na lista. */
64
+ /** Renderização customizada de cada item na lista do dropdown. */
56
65
  renderItem?: (item: T) => ReactNode;
66
+ /**
67
+ * Renderização customizada do conteúdo de cada chip (modo `multiple`).
68
+ * Independente de `renderItem`, já que o chip é compacto e pode não
69
+ * comportar o mesmo conteúdo usado na lista. Sem essa prop, usa o label
70
+ * resolvido do item (`getItemLabel` ou `item.label`).
71
+ */
72
+ renderChip?: (item: T) => ReactNode;
57
73
  /** Classe CSS extra aplicada ao elemento raiz. */
58
74
  className?: string;
59
75
  /** Props extras repassadas ao `<input>` nativo. */
60
76
  inputProps?: Omit<ComponentProps<'input'>, 'className' | 'disabled' | 'id' | 'name' | 'placeholder' | 'readOnly' | 'required'>;
61
77
  };
62
- export default function Combobox<T = ComboboxOption>({ label, labelVariant, items, placeholder, disabled, required, fluid, state, size, supportingText, errorMessage, emptyMessage, readOnly, id, name, value, defaultValue, onValueChange, getItemLabel, getItemValue, renderItem, className, inputProps, }: ComboboxProps<T>): import("react").JSX.Element;
78
+ export default function Combobox<T = ComboboxOption, Multiple extends boolean | undefined = false>({ label, labelVariant, items, placeholder, disabled, required, fluid, state, size, supportingText, errorMessage, emptyMessage, readOnly, id, name, multiple, value, defaultValue, onValueChange, getItemLabel, getItemValue, getRemoveItemLabel, renderItem, renderChip, className, inputProps, }: ComboboxProps<T, Multiple>): import("react").JSX.Element;
79
+ export {};
63
80
  //# sourceMappingURL=Combobox.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Combobox.d.ts","sourceRoot":"","sources":["../../../src/components/ComboBox/Combobox.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAS,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACnE,OAAO,EAiBN,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACd,MAAM,wBAAwB,CAAC;AAGhC,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;AAC5D,MAAM,MAAM,YAAY,GAAG,SAAS,CAAC;AACrC,MAAM,MAAM,oBAAoB,GAAG,iBAAiB,CAAC;AAYrD,MAAM,MAAM,cAAc,GAAG;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,aAAa,CAAC,CAAC,GAAG,cAAc,IAAI;IAC/C,qCAAqC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,YAAY,CAAC,EAAE,oBAAoB,CAAC;IACpC,+CAA+C;IAC/C,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;IACpB,yDAAyD;IACzD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uDAAuD;IACvD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,8BAA8B;IAC9B,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,wEAAwE;IACxE,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,+DAA+D;IAC/D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,2DAA2D;IAC3D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,+DAA+D;IAC/D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gFAAgF;IAChF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+DAA+D;IAC/D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kEAAkE;IAClE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,KAAK,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IACjB,0DAA0D;IAC1D,YAAY,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IACxB,uDAAuD;IACvD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,KAAK,IAAI,CAAC;IAC1C,0DAA0D;IAC1D,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC;IACnC,oDAAoD;IACpD,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC;IACnC,sDAAsD;IACtD,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,SAAS,CAAC;IACpC,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mDAAmD;IACnD,UAAU,CAAC,EAAE,IAAI,CAChB,cAAc,CAAC,OAAO,CAAC,EACrB,WAAW,GACX,UAAU,GACV,IAAI,GACJ,MAAM,GACN,aAAa,GACb,UAAU,GACV,UAAU,CACZ,CAAC;CACF,CAAC;AAMF,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,CAAC,GAAG,cAAc,EAAE,EACpD,KAAe,EACf,YAAY,EACZ,KAAK,EACL,WAAmC,EACnC,QAAgB,EAChB,QAAgB,EAChB,KAAa,EACb,KAAiB,EACjB,IAAW,EACX,cAAmB,EACnB,YAA2C,EAC3C,YAAkC,EAClC,QAAgB,EAChB,EAAE,EACF,IAAI,EACJ,KAAK,EACL,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,SAAS,EACT,UAAU,GACV,EAAE,aAAa,CAAC,CAAC,CAAC,+BAmMlB"}
1
+ {"version":3,"file":"Combobox.d.ts","sourceRoot":"","sources":["../../../src/components/ComboBox/Combobox.tsx"],"names":[],"mappings":"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"}