grafana_bak/public/app/features/templating/fieldAccessorCache.ts
2025-04-01 10:38:02 +09:00

17 lines
373 B
TypeScript

import { property } from 'lodash';
interface FieldAccessorCache {
[key: string]: (obj: object) => any;
}
let fieldAccessorCache: FieldAccessorCache = {};
export function getFieldAccessor(fieldPath: string) {
const accessor = fieldAccessorCache[fieldPath];
if (accessor) {
return accessor;
}
return (fieldAccessorCache[fieldPath] = property(fieldPath));
}