Changelog

The pull requests in each Apsara release, newest first.

Each entry is a merged pull request. For the steps a breaking change needs, see Upgrading.

Unreleased

  • refactor: [select] use base ui value, label, and empty (#958)
  • feat: [drawer] add swipe area, keyboard handling, and indent (#956)
  • fix: [select] mark the selected item and allow item alignment (#952)
  • feat: [menu, context-menu] add checkbox, radio, and link items (#953)
  • feat: [toast, popover] add anchored toasts and popover arrow (#950)
  • fix: [indicator] use "Indicator" as the fallback aria-label (#982)
  • feat: [command] use base ui empty and status (#960)
  • fix: correct type tokens, input prefix heights and typography docs (#981)
  • fix: [select] pass searchValue to the autocomplete search input (#968)
  • fix: [combobox] filter items by inputValue and defaultInputValue (#967)
  • refactor: use base ui useControlled for controlled state (#966)
  • feat: [theme] add dir prop and pass nonce to base ui (#961)
  • feat: [combobox] add createItems for id-based values (#946)
  • feat: export the props type of every component (#965)
  • feat: [accordion, radio] add generic value types (#957)
  • feat: [slider] add label part, rename label to thumbLabel (#949)
  • feat: [icon-button] build on base ui button (#955)
  • fix: [docs] correct tooltip props and remove stale asChild (#963)
  • feat: add small base ui parts and remove a duplicate hook (#951)
  • fix: [data-view] hide select filters that have no options (#934)
  • feat: [data-view, data-table, filter-chip] move dates off dayjs (#919)
  • feat: [search] escape to clear, focus return, onClear event, type="search" (#932)
  • fix: [avatar] order-sensitive getAvatarColor hash, add palette option (#933)
  • fix: [docs] repoint the root README symlink to packages/react (#939)
  • fix: [accordion, dialog, drawer, tooltip, calendar, code-block] align typography with Figma (#937)
  • feat: [data-view] forward popup position props and Search leadingIcon (#931)
  • fix: [dialog, accordion] use regular font-size tokens for description and content (#935)
  • feat: [sidebar] add onPeekChange, fix inset peek background (#925)
  • feat: [announcement-bar] add dismissible support and accept node text (#930)
  • fix: [command, data-view] close keyboard and screen reader gaps (#929)
  • feat: [color-picker] make input editable, fix area ref and drag (#924)
  • fix: [code-block] stop adding a hidden line to maxLines (#927)
  • fix: [avatar] fix group overlap, remove disabled, forward props (#923)
  • fix: [badge] apply default variants and make children optional (#922)
  • feat: [container] add render prop (#921)
  • fix: [table] merge className in Table.SectionHeader (#926)
  • feat: [indicator] add pulse prop (#920)
  • refactor: [scroll-area] remove the no-op overscroll-behavior rule (#928)
  • feat: add Chip status colors, shared dismiss icon and exported ChipProps (#913)
  • feat: [editor] introduce rich text editor (#918)
  • fix: restrict FilterChip number column to numeric input (#912)
  • fix: [grid] keep `area` from being cleared by empty longhands (#902)
  • feat: improve Amount formatting capabilities (#871)
  • feat: add design-review Claude Code skill (#884)
  • feat: [flex] add inline prop for inline-flex (#915)
  • feat: CalendarPreview scale-aware selection (#898)
  • feat: CalendarPreview range selection (#897)
  • feat: CalendarPreview date picker composition (#896)
  • feat: CalendarPreview root and inline calendar (#895)

v1.7.0

  • feat: [theme] revamped Theme (#893)
  • feat: RFC calendar rewrite (CalendarPreview) (#890)

v1.6.0

  • feat: [data-view] lane per sort value in the timeline (#889)
  • feat: icon provider with lucide replacing radix icons (#883)
  • fix: interface polish — text-wrap, tabular numbers, concentric radius (#882)
  • feat: [kbd] add Kbd component, remove Command.Shortcut (#886)

v1.5.0

  • feat: RFC theme improvements (#880)
  • fix: preserve falsy select filter values in FilterChip (#888)
  • fix: datepicker to emit onErrorChange instead of built-in error UI (#881)
  • feat: PromptInput @-mention chips on a ProseMirror editor (#870)
  • feat: add data-slot attributes across the entire design system (#872)
  • fix: propagate dataview row selection state, add example (#869)
  • feat: [ci] add pkg.pr.new canary releases (#874)
  • feat: add Sidebar.Trigger, collapsible modes (icon/hidden/none), and peekOnHover; fix a11y roles and label truncation (#867)

v1.4.1

  • feat: ghost message bubbles, PromptInput focus, ChatPanel motion (#868)

v1.4.0

  • feat: dataview timeline component (#860)

v1.3.0

  • feat: add ChatPanel AI element (#866)
  • feat: add Chat AI element (#865)
  • feat: add Reasoning AI element (#864)
  • feat: add Message AI element component (#863)
  • feat: add PromptInput AI element (#862)
  • fix: code block border, and focus ring fixes (#861)

v1.2.0

  • feat: Base UI v1.6.0, remove tour-beta, deprecate DataTable (#859)
  • fix: [data-table] align defaultSort optionality across internal types and fix sort icon direction (#841)

v1.1.0

  • feat: guided tour component (#842)
  • feat: RFC Tour component (#839)
  • feat: Add AI skills for usage (#836)

v1.0.1

  • feat: add additional resets to normalize.css (#838)
  • feat: add Code Connect template mappings and publish workflow (#832)
  • feat: [spotlight-search] added spinner for loading state during loading state in spotlight search (#835)