metadata
property to the List.Item.Detail
component, allowing you to add structured metadata. The metadata
property can be used together with markdown
, in which case the detail view will be split horizontally, with the markdown being displayed in the top half and the metadata displayed in the bottom half (similar to the File Search
, Clipboard History
or Search Contacts
commands). Alternatively, it can be used by itself, in which case the metadata will take up the entire height of the detail view.openExtensionPreferences
and openCommandPreferences
that allow you to open both extension and command preferences, for example, via an Action (EmptyView
not being displayed when it would be reused in a navigation stackTokenSet.isExpired()
now includes some buffer time to reduce the risk of performing requests with expired access tokensdefaultValue
and value
are set at the same time); this also fixes autoFocus
property not scrolling to the focused itemAction.OpenWith
trying to perform a state update without checking whether it’s still mounted (adjustContrast
would not be respected for colored TagPicker items.autoFocus
prop! (info
prop on form items to show additional information about an item, e.g. to explain what this field is used for.react-devtools
from devDependencies
for newly created extensions (so that you don't have to download a big dependency that you might not use){ value: string, tooltip: string }
, for icons { value: Image.ImageLike, tooltip: string }
, and for accessories you just add the new property tooltip
.Detail
component now renders animated gifs defined in markdown! 🎭npx @raycast/api <commandName>
Create Extension
command to add README.md
and CHANGELOG.md
filesundefined
for accessory valuesList.EmptyView
child to a List.Section
would treat it as a List.Item
metadata
to the Detail
component; this allows you to add structured metadata that is displayed on the right side in a detail view (similar to the Linear, Asana or Jira extensions). We support types such as labels, coloured tags, links, and separators. (accessories
property. (Previously you could only configure one accessoryTitle
and accesoryIcon
, both of which continue to work but have been marked deprecated.) Each item can be configured as text-only, icon-only, or icon + text. (EmptyView
that gives you control over the icon, title, description and optional actions to use when there are no items in a list. (Previously we would default to a “No results” view.) You can use the component to show a custom image and text when the search does not return results or the user is required to first perform some setup. ("dark" | "light"
) configured via Raycast appearance preferences is now globally accessible through environment.theme
<img>
tag).required
property in manifest preferences is now optional.isShowingDetail
propertydetail
property that allows you to display a detail view on the right-hand side of list items (Detail
view’s markdownClipboard.readText()
to read the last copied text from the system’s clipboard 📋type
to Form.DatePicker
📅 to control the date components asked from the userAction.SubmitForm
in a form’s Action PanelReact.memo
Form.Description
componentAction.CreateSnippet
and Action.CreateQuicklink
. Use them in your extensions to provide users an option to integrate deeper with Raycast, for example, by creating a Quicklink from a frequently visited website.Detail
viewActionPanel
can take.Form.PasswordField
that allows you to show secure text fields (Issue #319 and Form.Description
component that allows you to show a simple labelopen
method that gives you more flexibility for opening files, folders, and URLs with default apps or specified apps, often making using an external npm package unnecessary (the built-in open action use our method under the hood)—fix
flag to the lint
command (applies ESLint and prettier fixes)fix-lint
script; added prettier to devDependenciesonChange
callback behaviour to be consistent across all componentsdata
property not being treated as required for the dropdownOpen Support Directory
action to local dev extensionsprettier
checks to CLI lint
commandForm.TagPicker
OpenWithAction
can now be customiseddefault
exports are handled. This means that you should double check whether import
statements for certain npm packages need to be adjusted.
Example: import caniuse from "caniuse-api"
has to be changed to import * as caniuse from "caniuse-api"
because of the missing default
export of the built caniuse
library that has to run in a Node environment.searchBarPlaceholder
updates when using the list in a navigation stackisLoading
property in liststintColor
for icons in ActionPanel
and Form.Dropdown
getSelectedText
functionOpenWithAction
not working for some apps