diff --git a/packages/plugin-search/src/Search/ui/ReindexButton/index.client.tsx b/packages/plugin-search/src/Search/ui/ReindexButton/index.client.tsx index 9e660aee344..56aa99ef4cf 100644 --- a/packages/plugin-search/src/Search/ui/ReindexButton/index.client.tsx +++ b/packages/plugin-search/src/Search/ui/ReindexButton/index.client.tsx @@ -25,11 +25,14 @@ export const ReindexButtonClient: React.FC = ({ searchCollections, searchSlug, }) => { - const apiBasePath = useConfig().config.routes.api const { closeModal, openModal } = useModal() + + const { config } = useConfig() + const { i18n: { t }, } = useTranslation() + const locale = useLocale() const router = useRouter() @@ -47,15 +50,16 @@ export const ReindexButtonClient: React.FC = ({ closeConfirmModal() setLoading(true) - const basePath = apiBasePath.endsWith('/') ? apiBasePath.slice(0, -1) : apiBasePath - try { - const endpointRes = await fetch(`${basePath}/${searchSlug}/reindex?locale=${locale.code}`, { - body: JSON.stringify({ - collections: reindexCollections, - }), - method: 'POST', - }) + const endpointRes = await fetch( + `${config.routes.api}/${searchSlug}/reindex?locale=${locale.code}`, + { + body: JSON.stringify({ + collections: reindexCollections, + }), + method: 'POST', + }, + ) const { message } = (await endpointRes.json()) as { message: string } @@ -65,13 +69,13 @@ export const ReindexButtonClient: React.FC = ({ toast.success(message) router.refresh() } - } catch (err: unknown) { + } catch (_err: unknown) { // swallow error, toast shown above } finally { setReindexCollections([]) setLoading(false) } - }, [closeConfirmModal, isLoading, reindexCollections, router, searchSlug, locale, apiBasePath]) + }, [closeConfirmModal, isLoading, reindexCollections, router, searchSlug, locale, config]) const handleShowConfirmModal = useCallback( (collections: string | string[] = searchCollections) => { diff --git a/packages/plugin-search/src/index.ts b/packages/plugin-search/src/index.ts index 6c7db8a2824..a43939d1c62 100644 --- a/packages/plugin-search/src/index.ts +++ b/packages/plugin-search/src/index.ts @@ -37,7 +37,6 @@ export const searchPlugin = const pluginConfig: SearchPluginConfigWithLocales = { // write any config defaults here - apiBasePath: config.routes?.api, deleteDrafts: true, labels, locales, diff --git a/packages/plugin-search/src/types.ts b/packages/plugin-search/src/types.ts index 0e1e6185f4f..bdd8036ec92 100644 --- a/packages/plugin-search/src/types.ts +++ b/packages/plugin-search/src/types.ts @@ -31,6 +31,12 @@ export type BeforeSync = (args: { export type FieldsOverride = (args: { defaultFields: Field[] }) => Field[] export type SearchPluginConfig = { + /** + * @deprecated + * This plugin gets the api route from the config directly and does not need to be passed in. + * As long as you have `routes.api` set in your Payload config, the plugin will use that. + * This property will be removed in the next major version. + */ apiBasePath?: string beforeSync?: BeforeSync collections?: string[]