diff --git a/packages/dev/s2-docs/pages/s2/RangeCalendar.mdx b/packages/dev/s2-docs/pages/s2/RangeCalendar.mdx
index 48d7eacb1c2..7b8fc8cbda5 100644
--- a/packages/dev/s2-docs/pages/s2/RangeCalendar.mdx
+++ b/packages/dev/s2-docs/pages/s2/RangeCalendar.mdx
@@ -27,7 +27,7 @@ export const tags = ['calendar'];
## Value
-Use the `value` or `defaultValue` prop to set the selected date range, using objects in the [@internationalized/date](../internationalized/date/) package. This library supports parsing date strings in multiple formats, manipulation across international calendar systems, time zones, etc.
+Use the `value` or `defaultValue` prop to set the selected date range, using objects in the [@internationalized/date](../internationalized/date/index.html) package. This library supports parsing date strings in multiple formats, manipulation across international calendar systems, time zones, etc.
```tsx render
"use client";
diff --git a/packages/dev/s2-docs/pages/s2/TimeField.mdx b/packages/dev/s2-docs/pages/s2/TimeField.mdx
index 700172a0871..1f86da27d77 100644
--- a/packages/dev/s2-docs/pages/s2/TimeField.mdx
+++ b/packages/dev/s2-docs/pages/s2/TimeField.mdx
@@ -21,7 +21,7 @@ export const tags = ['date', 'input'];
## Value
-Use the `value` or `defaultValue` prop to set the time value, using objects in the [@internationalized/date](../internationalized/date/) package. `TimeField` accepts plain [Time](../internationalized/date/Time.html), [CalendarDateTime](../internationalized/date/CalendarDateTime.html), or [ZonedDateTime](../internationalized/date/ZonedDate), but only displays the time.
+Use the `value` or `defaultValue` prop to set the time value, using objects in the [@internationalized/date](../internationalized/date/index.html) package. `TimeField` accepts plain [Time](../internationalized/date/Time.html), [CalendarDateTime](../internationalized/date/CalendarDateTime.html), or [ZonedDateTime](../internationalized/date/ZonedDate), but only displays the time.
```tsx render
"use client";
diff --git a/packages/dev/s2-docs/pages/s2/getting-started.mdx b/packages/dev/s2-docs/pages/s2/getting-started.mdx
index ad4a37f6e8c..87741997513 100644
--- a/packages/dev/s2-docs/pages/s2/getting-started.mdx
+++ b/packages/dev/s2-docs/pages/s2/getting-started.mdx
@@ -97,7 +97,7 @@ Then, configure your bundler to use the plugin:
- Note that plugin order is important: `unplugin-parcel-macros` must run before other plugins like Babel.
- You may also need to configure other tools such as TypeScript, Babel, ESLint, and Jest to support parsing import attributes. See [Usage with other tools](https://parceljs.org/features/macros/#usage-with-other-tools).
- See the [examples folder](https://github.com/adobe/react-spectrum/tree/main/examples) for working setups with various build tools.
-- For details on optimizing the output CSS, see [CSS Optimization](/s2/styling.html#css-optimization).
+- For details on optimizing the output CSS, see [CSS Optimization](styling.html#css-optimization).
## Setting up your app
diff --git a/packages/dev/s2-docs/pages/s2/index.mdx b/packages/dev/s2-docs/pages/s2/index.mdx
index 26d6fde438a..1262de7169b 100644
--- a/packages/dev/s2-docs/pages/s2/index.mdx
+++ b/packages/dev/s2-docs/pages/s2/index.mdx
@@ -10,78 +10,78 @@ export const section = 'Getting started';
A React implementation of Spectrum, Adobe's design system.
-[Getting started](/s2/getting-started.html) • [GitHub](https://github.com/adobe/react-spectrum)
+[Getting started](getting-started.html) • [GitHub](https://github.com/adobe/react-spectrum)
diff --git a/packages/dev/s2-docs/pages/s2/Migrating.mdx b/packages/dev/s2-docs/pages/s2/migrating.mdx
similarity index 100%
rename from packages/dev/s2-docs/pages/s2/Migrating.mdx
rename to packages/dev/s2-docs/pages/s2/migrating.mdx
diff --git a/packages/dev/s2-docs/pages/s2/release-notes.mdx b/packages/dev/s2-docs/pages/s2/release-notes.mdx
index 868bb66d70e..1f6cc33097d 100644
--- a/packages/dev/s2-docs/pages/s2/release-notes.mdx
+++ b/packages/dev/s2-docs/pages/s2/release-notes.mdx
@@ -12,12 +12,12 @@ export const tags = ['changelog', 'versions', 'updates'];
* [ActionButton](ActionButton.html): Add pending state
* [ColorSlider](ColorSlider.html): Fix `ColorLoupe` position in RTL locales
* [ComboBox](ComboBox.html): Support avatars and onAction
-* [CustomDialog](CustomDialog.html): Support custom widths
+* [CustomDialog](Dialog.html#custom-dialog): Support custom widths
* [Dialog](Dialog.html): Add XL size
* [Disclosure](Disclosure.html): Add animation to disclosure
* [InlineAlert](InlineAlert.html): Support heading-less Inline Alerts
* [Picker](Picker.html): Support multiple selection and avatars
-* [Tags](Tags.html): Fix Tag collapse calculation for removeable tags
+* [Tags](TagGroup.html): Fix Tag collapse calculation for removable tags
* [Tooltip](Tooltip.html): Prevent text overflow by default
* Allow placeholders in supported S2 components (e.g. ColorArea, ComboBox, NumberField, SearchField, TextArea, TextField)
* Apply `page.css` styles to the Shadow DOM
@@ -59,7 +59,7 @@ If you previously used `page.css` without a `Provider`, you'll need to add a `Pr
* [CardView](CardView.html): Fix ActionBar from not scrolling
* [ActionButton](ActionButton.html): Fix avatar-only ActionButtons to have square dimensions
-* [Tabs](Tabs.html): Improve selection indicator animation, fix collasped tabs
+* [Tabs](Tabs.html): Improve selection indicator animation, fix collapsed tabs
* [ProgressCircle](ProgressCircle.html): Add track outline in High Contrast Mode
* [Switch](Switch.html): Fix the toggle in RTL locales
* [TreeView](TreeView.html): Support async loading
@@ -76,7 +76,7 @@ If you previously used `page.css` without a `Provider`, you'll need to add a `Pr
### Updates
-* [Combobox](Combobox.html): Support for virtualization and async loading
+* [ComboBox](ComboBox.html): Support for virtualization and async loading
* [Dialog](Dialog.html): Update sizes
* [Picker](Picker.html): Support for virtualization and async loading
* [Popover](Popover.html): Add `triggerRef` prop
diff --git a/packages/dev/s2-docs/pages/s2/Styling.mdx b/packages/dev/s2-docs/pages/s2/styling.mdx
similarity index 100%
rename from packages/dev/s2-docs/pages/s2/Styling.mdx
rename to packages/dev/s2-docs/pages/s2/styling.mdx
diff --git a/packages/dev/s2-docs/src/ComponentCardView.tsx b/packages/dev/s2-docs/src/ComponentCardView.tsx
index da466183acb..b20e9700b83 100644
--- a/packages/dev/s2-docs/src/ComponentCardView.tsx
+++ b/packages/dev/s2-docs/src/ComponentCardView.tsx
@@ -85,8 +85,11 @@ export interface ComponentCardItem {
}
const componentIllustrations: Record
= {
+ 'Accordion': DisclosureGroupSvg,
'ActionButton': ActionButtonSvg,
+ 'ActionButtonGroup': ButtonGroupSvg, // TODO: get better illustration
'ActionGroup': ActionGroupSvg,
+ 'ActionMenu': MenuSvg,
'Badge': BadgeSvg,
'Breadcrumbs': BreadcrumbsSvg,
'Button': ButtonSvg,
@@ -121,6 +124,7 @@ const componentIllustrations: Record =
'Label': LabelSvg,
'LabeledValue': LabeledValueSvg,
'Link': LinkSvg,
+ 'LinkButton': ButtonSvg, // TODO: get better illustration
'ListBox': ListBoxSvg,
'ListView': ListViewSvg,
'Menu': MenuSvg,
@@ -140,6 +144,7 @@ const componentIllustrations: Record =
'StatusLight': StatusLightSvg,
'Switch': SwitchSvg,
'Table': TableSvg,
+ 'TableView': TableSvg,
'Tabs': TabsSvg,
'TagGroup': TagGroupSvg,
'TextArea': TextAreaSvg,
@@ -150,6 +155,7 @@ const componentIllustrations: Record =
'ToggleButtonGroup': ActionGroupSvg, // ToggleButtonGroup -> ActionGroup
'Tooltip': TooltipSvg,
'Tree': TreeSvg,
+ 'TreeView': TreeSvg,
'useFocus': useFocusSvg,
'useFocusRing': useFocusRingSvg,
'useFocusWithin': useFocusWithinSvg,
diff --git a/packages/react-aria-components/docs/FileTrigger.mdx b/packages/react-aria-components/docs/FileTrigger.mdx
index 4b42f2f4735..7743307537c 100644
--- a/packages/react-aria-components/docs/FileTrigger.mdx
+++ b/packages/react-aria-components/docs/FileTrigger.mdx
@@ -70,7 +70,7 @@ function Example(){
A file input can be created with an `` element, but this supports limited styling options and may not integrate well with the overall design of a website or application. To overcome this, `FileTrigger` extends the functionality of the standard file input element by working with a pressable child such as a `Button` to create accessible file inputs that can be styled as needed.
-* **Customizable** – Works with any pressable React Aria or React Spectrum component, and custom components built with [usePress](usePress.html).
+* **Customizable** – Works with any pressable React Aria or React Spectrum component, and custom components built with [usePress](https://react-spectrum.adobe.com/react-aria/usePress.html).
## Anatomy
diff --git a/packages/react-aria-components/docs/Form.mdx b/packages/react-aria-components/docs/Form.mdx
index 8c743b09f88..4b748a546b1 100644
--- a/packages/react-aria-components/docs/Form.mdx
+++ b/packages/react-aria-components/docs/Form.mdx
@@ -78,7 +78,7 @@ The HTML [<form>](https://developer.mozilla.org/en-US/docs/Web/HTML/Elemen
* **Accessible** – Uses a native `
```
-See the [Forms](forms.html) guide to learn more about form validation in React Aria, including client-side validation, and integration with other frameworks and libraries.
+See the [Forms](https://react-spectrum.adobe.com/react-aria/forms.html) guide to learn more about form validation in React Aria, including client-side validation, and integration with other frameworks and libraries.
### Validation behavior