Skip to content

Releases: pacocoursey/cmdk

v1.0.0

08 Mar 02:03
40611e5
Compare
Choose a tag to compare

This is a major version release as it contains breaking changes.

Breaking Changes

You will need to update your code to account for these changes before upgrading to cmdk@1.0.0.

value is now case sensitive 3dae25d

The value prop you pass to Command.Item and receive in onSelect is now case sensitive. But while the value is no longer lowercased, it is still trimmed.

Command.List is now required (CommandList in shadcn) 54aa261

Rendering the Command.List part (CommandList if using shadcn) is now mandatory. Otherwise, you should expect to see an error like this:

TypeError: undefined is not iterable (cannot read property Symbol(Symbol.iterator))

The fix:

// Before
<Command label="Command Menu">
	<Command.Input />
	<Command.Item />
	{/* ... */}
</Command>
// After
<Command label="Command Menu">
	<Command.Input />

	<Command.List>
		<Command.Item />
		{/* ... */}
	</Command.List>
</Command>

Update [aria-disabled] and [aria-selected] CSS selectors c57e6b7

The aria-disabled and aria-selected props will now be set to false, instead of being undefined. If you previously used CSS selectors based on attribute presence, you will now need to use the attribute value.

/* Before */
[aria-disabled] {}
:not([aria-disabled]) {}

/* After */
[aria-disabled="true"] {}
[aria-disabled="false"] {}

What's Changed

  • Added support for rendering Command.List in a portal in 54aa261
  • Fixed Command.Empty not appearing on first render in be4388e
  • Fixed ESM support via new exports field by @SoYoung210 in #141
  • Added disablePointerSelection prop to Command to disable item selection via pointer, like Raycast by @joaom00 in #116
  • Fix excessive re-renders when using forceMount by @joaom00 in #143
  • Fixed to only scroll the selected item into view on first render and via keyboard by @joaom00 in #135
  • Bumped @radix-ui/react-dialog version by @wmcheung in #194
  • Fixed item sort not working correctly by @pengx17 in #182
  • Added keywords prop to the Command.Item component by @itaikeren in #158
  • Added asChild prop to all component parts by @joaom00 in #138
  • Fix suggestions list and loading progressbar labels by @afercia in #204
  • Allow keyboard navigation even when text input is not focused by @glocore in #61
  • Fix DOM error with quotes in the search query by @yjl9903 in #223

New Contributors

Full Changelog: v0.2.1...v1.0.0

v0.2.1

30 Jan 03:10
05199cb
Compare
Choose a tag to compare

Been a whileβ€”this is a hefty release. Sorry for the delay.

What's New

  • Bring in local dependency of command-score with vastly improved filtering performance by default by @pacocoursey in #130
  • Add defaultValue prop to <Command /> by @revogabe in #123
  • Add forceMount prop to <Command.Item /> and <Command.Group /> by @MildTomato in #101
  • Adds overlayClassName and contentClassName props to <Command.Dialog />: by @joaom00 in #114
  • Add data-disabled to <Command.Item /> by @joaom00 in #122
  • Add aria-activedescendant in <Command.Input /> by @joaom00 in #108
  • Use offsetHeight to calculate list height by @joaom00 in #121
  • Add option for disabling vim bindings by @bkrausz in #168

What's Fixed

  • Fixed a bug where using controlled item values would accidentally become uncontrolled if there are no results by @joaom00 in #109
  • Fixed items on mobile are now correctly selected on tap by @joaom00 in #113
  • Fixed a bug where focus would jump back to the first item instead of respecting the controlled value @joaom00 in #112
  • Fixed the props for the <Command.Loading /> to indicate it spreads onto a div element by @0xcadams in #154
  • Fixed pressing [Enter] to select an item while in the middle of an IME composition by @hajimism in #166
  • Fixes a bug where backspacing would not properly reveal items that didn't have their value explicitly set by @WITS in #176

Docs

Internal

New Contributors

Full Changelog: v0.2.0...v0.2.1

v0.2.0

02 Mar 01:25
Compare
Choose a tag to compare

What's Changed

  • Add "data-selected" attribute to Item Component by @Saintpreston in #80
  • Fix Playwright Tests by @thomaswang in #81
  • refactor(pages/index): remove unnecessary fragment by @nicholaschiang in #86
  • fix: documentation typo for GroupProps by @pondorasti in #91
  • feat: export individual components to allow for tree shaking by @Pagebakers in #96

New Contributors

Full Changelog: v0.1.21...v0.2.0

v0.1.21

16 Dec 15:24
6ad8a86
Compare
Choose a tag to compare

What's Changed

  • prune: yarn.lock; docs(website): pnpm; chore: enforce pnpm by @JeromeFitz in #39
  • Update hook name in README by @caumeira in #41
  • remove dollar sign from code snippet by @kuldar in #44
  • fix(keybinds): last fn respects disabled items by @thiskevinwang in #47
  • fix: Upgrade radix-ui/react-dialog to v1 by @pacocoursey in #48
  • arrow keys wrap around by @Kilian in #57
  • Allow setting a container for Radix.Portal by @Kilian in #58
  • fix: attempt to prevent exceeding ResizeObserver loop limit by @Simek in #65
  • fix: call onValueChange after filtering the list by @Andarist in #70

New Contributors

Full Changelog: v0.1.19...v0.1.21

v0.1.19

17 Aug 18:54
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.1.18...v0.1.19

v0.1.18

09 Aug 21:21
Compare
Choose a tag to compare

What's Changed

  • Use [hidden] on group instead of changing render structure by @pacocoursey in #27

Full Changelog: https://github.com/pacocoursey/cmdk/commits/v0.1.18

v0.1.17

09 Aug 14:10
Compare
Choose a tag to compare
  • fix: className is now correctly forwarded to all items and groups