diff --git a/packages/sanity/src/core/form/studio/inputs/client-adapters/reference.ts b/packages/sanity/src/core/form/studio/inputs/client-adapters/reference.ts index e8efc9f7856..d41bbb20050 100644 --- a/packages/sanity/src/core/form/studio/inputs/client-adapters/reference.ts +++ b/packages/sanity/src/core/form/studio/inputs/client-adapters/reference.ts @@ -1,6 +1,10 @@ import {type SanityClient} from '@sanity/client' import {DEFAULT_MAX_FIELD_DEPTH} from '@sanity/schema/_internal' -import {type ReferenceFilterSearchOptions, type ReferenceSchemaType} from '@sanity/types' +import { + type ReferenceFilterSearchOptions, + type ReferenceSchemaType, + type SanityDocumentLike, +} from '@sanity/types' import {combineLatest, type Observable, of} from 'rxjs' import {map, mergeMap, startWith, switchMap} from 'rxjs/operators' @@ -200,8 +204,10 @@ export function referenceSearch( maxDepth: options.maxFieldDepth || DEFAULT_MAX_FIELD_DEPTH, }) return search(textTerm, {includeDrafts: true}).pipe( - map(({hits}) => hits.map(({hit}) => hit)), - map(collate), + map(({hits}) => hits.map(({hit}) => hit) as unknown as CollatedHit[]), + map((collated: CollatedHit[]) => + collate(collated as unknown as SanityDocumentLike[]), + ), // pick the 100 best matches map((collated) => collated.slice(0, 100)), mergeMap((collated) => { diff --git a/packages/sanity/src/core/form/studio/inputs/crossDatasetReference/datastores/search.ts b/packages/sanity/src/core/form/studio/inputs/crossDatasetReference/datastores/search.ts index f588326d102..ea21c75c150 100644 --- a/packages/sanity/src/core/form/studio/inputs/crossDatasetReference/datastores/search.ts +++ b/packages/sanity/src/core/form/studio/inputs/crossDatasetReference/datastores/search.ts @@ -2,12 +2,13 @@ import {type SanityClient} from '@sanity/client' import { type CrossDatasetReferenceSchemaType, type ReferenceFilterSearchOptions, + type SanityDocumentLike, } from '@sanity/types' import {type Observable} from 'rxjs' import {map} from 'rxjs/operators' import {createSearch} from '../../../../../search' -import {collate} from '../../../../../util' +import {collate, type CollatedHit} from '../../../../../util' interface SearchHit { id: string @@ -31,7 +32,9 @@ export function search( isCrossDataset: true, }).pipe( map(({hits}) => hits.map(({hit}) => hit)), - map(collate), + map( + collate as (value: SanityDocumentLike[], index: number) => CollatedHit[], + ), map((collated) => collated.map((entry) => ({ id: entry.id, diff --git a/packages/sanity/src/core/studio/addonDataset/AddonDatasetProvider.tsx b/packages/sanity/src/core/studio/addonDataset/AddonDatasetProvider.tsx index ea23953a857..d3031d6bca9 100644 --- a/packages/sanity/src/core/studio/addonDataset/AddonDatasetProvider.tsx +++ b/packages/sanity/src/core/studio/addonDataset/AddonDatasetProvider.tsx @@ -1,5 +1,5 @@ import {type SanityClient} from '@sanity/client' -import {useCallback, useContext, useEffect, useMemo, useState} from 'react' +import {type ReactNode, useCallback, useContext, useEffect, useMemo, useState} from 'react' import {AddonDatasetContext} from 'sanity/_singletons' import {useClient} from '../../hooks' @@ -135,7 +135,14 @@ function AddonDatasetProviderInner(props: AddonDatasetSetupProviderProps) { return {children} } -export function AddonDatasetProvider(props: AddonDatasetSetupProviderProps) { +/** + * TODO add proper comment & check tags + * + * @internal + * @beta + * @hidden + */ +export function AddonDatasetProvider(props: AddonDatasetSetupProviderProps): ReactNode { const context = useContext(AddonDatasetContext) // Avoid mounting the provider if it's already provided by a parent if (context) return props.children diff --git a/packages/sanity/src/structure/components/paneItem/PaneItemPreview.tsx b/packages/sanity/src/structure/components/paneItem/PaneItemPreview.tsx index 080061ccff4..9895c85c301 100644 --- a/packages/sanity/src/structure/components/paneItem/PaneItemPreview.tsx +++ b/packages/sanity/src/structure/components/paneItem/PaneItemPreview.tsx @@ -77,7 +77,7 @@ export function PaneItemPreview(props: PaneItemPreviewProps) { return ( <> - {(version ?? draft ?? published)?._id} + {((version ?? draft ?? published) as SanityDocument)?._id}