mirror of
https://github.com/dbeaver/cloudbeaver.git
synced 2026-09-24 16:04:36 +08:00
fix(core-sdk): CB-2420 empty resource key list compare
This commit is contained in:
@@ -374,6 +374,10 @@ export abstract class CachedMapResource<
|
||||
return this.isAliasEqual(param, key);
|
||||
}
|
||||
|
||||
if (ResourceKeyUtils.isEmpty(param) || ResourceKeyUtils.isEmpty(key)) {
|
||||
return ResourceKeyUtils.isEmpty(param) && ResourceKeyUtils.isEmpty(key);
|
||||
}
|
||||
|
||||
param = ResourceKeyUtils.mapKey(param, this.getKeyRef.bind(this));
|
||||
key = ResourceKeyUtils.mapKey(key, this.getKeyRef.bind(this));
|
||||
|
||||
|
||||
@@ -41,6 +41,7 @@ interface MapFnc {
|
||||
}
|
||||
|
||||
export interface ResourceKeyUtils {
|
||||
isEmpty: <TKey>(key: ResourceKey<TKey>) => boolean;
|
||||
hasMark: <TKey>(key: ResourceKey<TKey>, mark: any) => boolean;
|
||||
count: <TKey>(key: ResourceKey<TKey>) => number;
|
||||
first: <TKey>(key: ResourceKey<TKey>) => TKey;
|
||||
@@ -65,6 +66,16 @@ export interface ResourceKeyUtils {
|
||||
|
||||
// eslint-disable-next-line @typescript-eslint/no-redeclare
|
||||
export const ResourceKeyUtils: ResourceKeyUtils = {
|
||||
isEmpty<TKey>(
|
||||
key: ResourceKey<TKey>
|
||||
): boolean {
|
||||
if (isResourceKeyList(key)) {
|
||||
return key.list.length === 0;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
},
|
||||
|
||||
hasMark<TKey>(
|
||||
key: ResourceKey<TKey>,
|
||||
mark: any
|
||||
|
||||
Reference in New Issue
Block a user