Changelog
@vincisys/eyeson

Novidades

  • 6a74ffa: Add new components for the EyesOn Library Suite / Airshuttle Web menu integration: - `Kanban`: drag-and-drop kanban board built on `@dnd-kit`, with keyboard and touch support for moving items and reordering columns. `<Kanban columns={...} items={...} renderItem={...} />` covers the common case; `Kanban.Root`, `Kanban.Board`, `Kanban.Column`, `Kanban.ColumnHandle`, `Kanban.ColumnContent`, `Kanban.Item`, `Kanban.ItemHandle` and `Kanban.Overlay` are available for fully custom layouts.

Novidades

  • 1d00a8f: `DateTimePicker`: o campo de texto agora é seccionado (dia/mês/ano/hora/minuto), como no `DateField`/`DateTimeField` do MUI. Cada segmento é navegável por Tab e pelas setas ←/→, aceita edição direta por dígitos (com auto-avanço) e incremento/decremento com ↑/↓, permitindo digitar qualquer minuto (ex.: `10:13`) sem o arredondamento de `minuteStep` que antes só se aplicava à lista/relógio do popover. O ícone de calendário que abre o popover foi movido para o lado direito do campo.

Novidades

  • b7c3614: Adiciona o componente `Badge` para rótulos curtos de status, categoria ou contagem. Suporta as variantes `solid`, `soft` (padrão) e `outline`, tamanhos `sm`/`md`, qualquer `EdsSemanticColor`, ícone opcional (`icon`) e indicador de status em formato de ponto (`dot`).
  • 4a8f62c: `DataTable` agora envolve busca, tabela e paginação (incluindo o seletor de itens por página) em um único cartão branco conectado por padrão — bordas, cantos arredondados e divisórias entre as seções, em vez de blocos brancos soltos. Use a nova prop `card={false}` para voltar ao comportamento anterior, com cada seção renderizada separadamente.
  • 4a8f62c: Adiciona a prop `pageSize` ao `DataTable`, um seletor de itens por página renderizado junto aos controles de paginação (à esquerda), com fundo branco consistente com o restante do design system. Substitui a necessidade de implementar esse controle manualmente em cada aplicação consumidora.

Correções

  • 5d2e1fa: `DateTimePicker`: ao selecionar o minuto (na lista ou no relógio analógico), o popover agora fecha automaticamente com o valor escolhido, sem precisar clicar em **Confirmar**. **Confirmar** continua disponível para fechar sem alterar o minuto.

Novidades

  • 6596a40: Adiciona a prop `timeVariant` ao `DateTimePicker`, com um relógio analógico (arrastar ou tocar nos números) como novo estilo de seleção de horário, no mesmo padrão do `TimeClock` do MUI X Date Pickers já familiar aos usuários. **Atenção:** o padrão de `timeVariant` agora é `"clock"` (antes o único comportamento era o de colunas de hora/minuto). Quem quiser manter as colunas deve passar explicitamente `timeVariant="list"`.

Novidades

  • 765656d: Combobox: adiciona suporte à seleção múltipla (`multiple`), exibindo os itens selecionados como chips removíveis dentro do campo. Novas props `multiple`, `getRemoveItemLabel`; `value`, `defaultValue` e `onValueChange` passam a aceitar arrays quando `multiple` está ativo.

Novidades

  • 6e6156b: `IconButton` agora aceita duas novas props opcionais: - `tooltip`: exibe um tooltip com o texto informado ao passar o mouse ou focar no botão. - `hoverColor`: define uma cor (`EdsSemanticColor`) que sobrescreve `color` no `:hover`/`:focus-visible`, útil para dar destaque a ações como confirmar (verde) ou excluir (vermelho). Nenhuma prop existente muda de comportamento quando `tooltip`/`hoverColor` não são usadas.

Novidades

  • 0ba2f60: DataTable: new `sorting`/`onSortingChange` props for server-side column sorting. Pass both to make sortable column headers clickable (cycles asc → desc → cleared) and receive the updated `SortingState` to refetch already-sorted data — the DataTable never reorders `data` locally (`manualSorting`). Omit both to keep the previous behavior (no sortable headers). Disable sorting on a specific column with `enableSorting: false` in its `columnDef`.

Novidades

  • 78a1f3a: DataTable: new `dividers` prop (`none` | `row` | `column` | `both`, default `row`) forwarded to the internal `Table`, matching the divider control already available on `Table` itself.

Novidades

  • 7f98eec: Table: darker header background by default, new `dividers` prop (`none` | `row` | `column` | `both`) to control row/column divider lines, and smaller default text size.

Novidades

  • 992ea42: Add `hideContent` to `Input` for masked fields (passwords) with a text toggle (`showContentText`/`hideContentText`, default "Mostrar"/"Ocultar"). Add `DataTable`, a columns-driven table built on `Table` and `@tanstack/react-table`: pass `columns` + `data` and it handles loading, empty state, server-side pagination (`pagination`/`onPageChange`) and search (`search`) for you. **Breaking:** removed the deprecated `floatingLabel` boolean prop (and the `InputLabelVariant`-style deprecated aliases) from `Input`, `Textarea`, `Select`, `Combobox`, `DatePicker` and `DateTimePicker`. Use `labelVariant="floating" | "outside"` instead — `floatingLabel={false}` becomes `labelVariant="outside"`.

Novidades

  • a60852a: Button, Dialog and fields closer to shadcn layout; FormDialog, Attachment, labelVariant outside, Roboto font, Card footer style.

Novidades

  • dde2233: Add `icon` prop to `Input` for a leading decorative icon (e.g. `Search` for a search field).

Novidades

  • Add `Card` and `DatePicker` components. - `Card`: compound component (`Header`, `Title`, `Description`, `Action`, `Content`, `Footer`). - `DatePicker`: field with a popover mini-calendar, supporting single date and range selection, multi-month layout (`numberOfMonths`) and preset shortcuts (`presets`).

Novidades

  • Add `Empty` component for placeholder states in lists, tables, and search results, with `sm`/`md`/`lg` sizes and an optional action slot.
  • Add `Text` typography component with heading/body/mono variants; heading variants require an explicit `as` prop to avoid silently excluding real section headings from the document outline.
  • Add `Dialog` compound component (`Dialog.Root`, `.Trigger`, `.Title`, `.Description`, `.Close`) with `sm`/`md`/`lg`/`xl` sizes and an `alertdialog` role for destructive/confirmation flows.
  • Add `Tabs` component with segmented and underline variants, `sm`/`md` sizes, horizontal scroll with edge fade, and drag-to-scroll support for overflowing tab lists.
  • Add `Table` compound component (`Table.Header`, `.Head`, `.Row`, `.Body`, `.Cell`, `.Footer`, `.CheckCell`, `.CheckHead`, `.ResizeHandle`) with row selection via `Checkbox`, sticky columns/header, and `auto`/`fixed` layouts.
  • Add `Calendar` component with month grid navigation, day events, and customizable event rendering.
  • Add `IconButton` component sharing `Button`'s size/variant/color system for icon-only actions.
  • Set `Inter` as the default typeface for the design system, self-hosted via `@fontsource-variable/inter`.

Correções

  • Consolidate field chrome (label, floating label, popup, list) shared across `Input`, `Select`, and `Combobox` into `lib/field-styles.ts`.
  • Improve accessibility of `Calendar` and `IconButton` (accessible names, keyboard focus styles).
  • Migrate the package to a pnpm monorepo with an Astro-based documentation site (`@vincisys/eyeson-docs`).
  • Consolidate per-component entry points (`Button.ts`, `Input.ts`, etc.) into a single `index.ts` export.

Novidades

  • Initial release with `Button`, `Input`, `Select`, `Combobox`, and `Checkbox`.