diff --git a/src/Umbraco.Web.UI.Client/libs/extensions-api/registry/extension.registry.ts b/src/Umbraco.Web.UI.Client/libs/extensions-api/registry/extension.registry.ts index c380dc602e..c1279b91f7 100644 --- a/src/Umbraco.Web.UI.Client/libs/extensions-api/registry/extension.registry.ts +++ b/src/Umbraco.Web.UI.Client/libs/extensions-api/registry/extension.registry.ts @@ -47,7 +47,7 @@ export class UmbExtensionRegistry { const nextData = this._kinds .getValue() .filter( - (k) => k.matchType !== (kind as ManifestKind).matchType && k.matchKind !== (kind as ManifestKind).matchKind + (k) => !(k.matchType === (kind as ManifestKind).matchType && k.matchKind === (kind as ManifestKind).matchKind) ); nextData.push(kind as ManifestKind); this._kinds.next(nextData); @@ -125,7 +125,10 @@ export class UmbExtensionRegistry { T extends ManifestBase = SpecificManifestTypeOrManifestBase >(type: Key, alias: string) { return combineLatest([ - this.extensions.pipe(map((exts) => exts.find((ext) => ext.type === type && ext.alias === alias))), + this.extensions.pipe( + map((exts) => exts.find((ext) => ext.type === type && ext.alias === alias)), + distinctUntilChanged(extensionSingleMemoization) + ), this._kindsOfType(type), ]).pipe( map(([ext, kinds]) => {