element-plus
Version:
A Component Library for Vue 3
1 lines • 1.09 kB
Source Map (JSON)
{"version":3,"file":"use-cache.mjs","sources":["../../../../../../../packages/components/virtual-list/src/hooks/use-cache.ts"],"sourcesContent":["import { computed, getCurrentInstance } from 'vue'\nimport { memoize } from 'lodash-unified'\nimport memoOne from 'memoize-one'\n\nimport type { VirtualizedProps } from '../props'\n\nexport const useCache = <T>() => {\n const vm = getCurrentInstance()!\n\n const props = vm.proxy!.$props as VirtualizedProps\n\n return computed(() => {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const _getItemStyleCache = (_: any, __: any, ___: any) =>\n ({}) as Record<string, T>\n return props.perfMode\n ? memoize(_getItemStyleCache)\n : memoOne(_getItemStyleCache)\n })\n}\n"],"names":[],"mappings":";;;;AAMO,MAAM,WAAW,MAAS;AAC/B,EAAA,MAAM,KAAK,kBAAA,EAAmB;AAE9B,EAAA,MAAM,KAAA,GAAQ,GAAG,KAAA,CAAO,MAAA;AAExB,EAAA,OAAO,SAAS,MAAM;AAEpB,IAAA,MAAM,kBAAA,GAAqB,CAAC,CAAA,EAAQ,EAAA,EAAS,SAC1C,EAAC,CAAA;AACJ,IAAA,OAAO,MAAM,QAAA,GACT,OAAA,CAAQ,kBAAkB,CAAA,GAC1B,QAAQ,kBAAkB,CAAA;AAAA,EAChC,CAAC,CAAA;AACH;;;;"}