Skip to content

chore: Audit subpath exports#9850

Merged
devongovett merged 10 commits intomainfrom
audit-exports
Mar 27, 2026
Merged

chore: Audit subpath exports#9850
devongovett merged 10 commits intomainfrom
audit-exports

Conversation

@devongovett
Copy link
Copy Markdown
Member

Making some private things public, etc.

API diff vs main

@rspbot
Copy link
Copy Markdown

rspbot commented Mar 27, 2026

@rspbot
Copy link
Copy Markdown

rspbot commented Mar 27, 2026

## API Changes

react-aria-components

/react-aria-components:I18nProviderProps

+I18nProviderProps {
+  children: ReactNode
+  locale?: string
+}

/react-aria-components:Locale

+Locale {
+  direction: Direction
+  locale: string
+}

/react-aria-components:Filter

+Filter {
+  contains: (string, string) => boolean
+  endsWith: (string, string) => boolean
+  startsWith: (string, string) => boolean
+}

/react-aria-components:CollectionProps

+CollectionProps <T> {
+  addIdAndValue?: boolean
+  children?: ReactNode | (T) => ReactNode
+  dependencies?: ReadonlyArray<any>
+  idScope?: Key
+  items?: Iterable<T>
+}

/react-aria-components:Placement

+Placement {
+  P: undefined
+}

/react-aria-components:VisuallyHiddenProps

+VisuallyHiddenProps {
+  children?: ReactNode
+  className?: string | undefined
+  elementType?: string | JSXElementConstructor<any> = 'div'
+  id?: string | undefined
+  isFocusable?: boolean
+  role?: AriaRole | undefined
+  style?: CSSProperties | undefined
+  tabIndex?: number | undefined
+}

/react-aria-components:ListDataOptions

+ListDataOptions <T> {
+  filter?: (T, string) => boolean
+  getKey?: (T) => Key
+  initialFilterText?: string
+  initialItems?: Array<T>
+  initialSelectedKeys?: 'all' | Iterable<Key>
+}

/react-aria-components:TreeDataOptions

+TreeDataOptions <T extends {}> {
+  getChildren?: ({}) => Array<{}>
+  getKey?: ({}) => Key
+  initialItems?: Array<{}>
+  initialSelectedKeys?: Iterable<Key>
+}

/react-aria-components:AsyncListOptions

+AsyncListOptions <C, T> {
+  getKey?: (T) => Key
+  initialFilterText?: string
+  initialSelectedKeys?: Iterable<Key>
+  initialSortDescriptor?: SortDescriptor
+  load: AsyncListLoadFunction<T, C>
+  sort?: AsyncListLoadFunction<T, C, (AsyncListLoadOptions<T, C> & {
+    sortDescriptor: SortDescriptor
+})>
+}

/react-aria-components:AsyncListLoadFunction

+AsyncListLoadFunction {
+  A: undefined
+}

/react-aria-components:AsyncListLoadOptions

+AsyncListLoadOptions <C, T> {
+  cursor?: C
+  filterText?: string
+  items: Array<T>
+  loadingState?: LoadingState
+  selectedKeys: Selection
+  signal: AbortSignal
+  sortDescriptor?: SortDescriptor
+}

/react-aria-components:AsyncListStateUpdate

+AsyncListStateUpdate <C, T> {
+  cursor?: C
+  filterText?: string
+  items: Iterable<T>
+  selectedKeys?: Iterable<Key>
+  sortDescriptor?: SortDescriptor
+}

@react-spectrum/s2

/@react-spectrum/s2:ComboBoxSection

 ComboBoxSection <T extends {}> {
   aria-label?: string
   children?: ReactNode | (T) => ReactElement
-  className?: string
+  className?: string = 'react-aria-ListBoxSection'
   dependencies?: ReadonlyArray<any>
   id?: Key
   items?: Iterable<T>
+  render?: DOMRenderFunction<keyof React.JSX.IntrinsicElements, undefined>
   style?: CSSProperties
   value?: T
 }

/@react-spectrum/s2:ComboBoxSectionProps

 ComboBoxSectionProps <T extends {}> {
   aria-label?: string
   children?: ReactNode | (T) => ReactElement
-  className?: string
+  className?: string = 'react-aria-ListBoxSection'
   dependencies?: ReadonlyArray<any>
   id?: Key
   items?: Iterable<T>
+  render?: DOMRenderFunction<keyof React.JSX.IntrinsicElements, undefined>
   style?: CSSProperties
   value?: T
 }

/@react-spectrum/s2:SortDirection

+SortDirection {
+  S: undefined
+}

/@react-spectrum/s2:ListOptions

+ListOptions <T> {
+  filter?: (T, string) => boolean
+  getKey?: (T) => Key
+  initialFilterText?: string
+  initialItems?: Array<T>
+  initialSelectedKeys?: 'all' | Iterable<Key>
+}

/@react-spectrum/s2:TreeOptions

+TreeOptions <T extends {}> {
+  getChildren?: ({}) => Array<{}>
+  getKey?: ({}) => Key
+  initialItems?: Array<{}>
+  initialSelectedKeys?: Iterable<Key>
+}

/@react-spectrum/s2:AsyncListOptions

+AsyncListOptions <C, T> {
+  getKey?: (T) => Key
+  initialFilterText?: string
+  initialSelectedKeys?: Iterable<Key>
+  initialSortDescriptor?: SortDescriptor
+  load: AsyncListLoadFunction<T, C>
+  sort?: AsyncListLoadFunction<T, C, (AsyncListLoadOptions<T, C> & {
+    sortDescriptor: SortDescriptor
+})>
+}

/@react-spectrum/s2:AsyncListLoadFunction

+AsyncListLoadFunction {
+  A: undefined
+}

/@react-spectrum/s2:AsyncListLoadOptions

+AsyncListLoadOptions <C, T> {
+  cursor?: C
+  filterText?: string
+  items: Array<T>
+  loadingState?: LoadingState
+  selectedKeys: Selection
+  signal: AbortSignal
+  sortDescriptor?: SortDescriptor
+}

/@react-spectrum/s2:AsyncListStateUpdate

+AsyncListStateUpdate <C, T> {
+  cursor?: C
+  filterText?: string
+  items: Iterable<T>
+  selectedKeys?: Iterable<Key>
+  sortDescriptor?: SortDescriptor
+}

@snowystinger
Copy link
Copy Markdown
Member

I'm a little confused why RAC Sections aren't exported on any subpath

@devongovett
Copy link
Copy Markdown
Member Author

Section was deprecated and replaced with individual ones like ListBoxSection

@snowystinger
Copy link
Copy Markdown
Member

of course, right, 👍🏻

@devongovett devongovett added this pull request to the merge queue Mar 27, 2026
Merged via the queue into main with commit 0e69a1b Mar 27, 2026
29 checks passed
@devongovett devongovett deleted the audit-exports branch March 27, 2026 17:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants