diff --git a/packages/admin-ui/src/lib/core/src/extension/register-route-component.ts b/packages/admin-ui/src/lib/core/src/extension/register-route-component.ts index b3f3a8e8ba..df36938b75 100644 --- a/packages/admin-ui/src/lib/core/src/extension/register-route-component.ts +++ b/packages/admin-ui/src/lib/core/src/extension/register-route-component.ts @@ -86,6 +86,19 @@ export function registerRouteComponent< const breadcrumbSubject$ = new BehaviorSubject(options.breadcrumb ?? ''); const titleSubject$ = new BehaviorSubject(options.title); + if (getBreadcrumbs != null && (query == null || entityKey == null)) { + console.error( + [ + `[${ + options.path ?? 'custom' + } route] When using the "getBreadcrumbs" option, the "query" and "entityKey" options must also be provided.`, + ``, + `Alternatively, use the "breadcrumb" option instead, or use the "PageMetadataService" inside your Angular component`, + `or the "usePageMetadata" React hook to set the breadcrumb.`, + ].join('\n'), + ); + } + const resolveFn: | ResolveFn<{ entity: Observable[Field] | null>; @@ -118,7 +131,7 @@ export function registerRouteComponent< data: { breadcrumb: breadcrumbSubject$, ...(options.routeConfig?.data ?? {}), - ...(getBreadcrumbs + ...(getBreadcrumbs && query && entityKey ? { breadcrumb: data => data.detail.entity.pipe(map((entity: any) => getBreadcrumbs(entity))),