{"version":3,"file":"memoize.cjs","names":[],"sources":["../../../../src/core/utils/memoize/memoize.ts"],"sourcesContent":["export function memoize<T extends (...args: any[]) => any>(\n  func: T\n): (...args: Parameters<T>) => ReturnType<T> {\n  const cache = new Map<string, ReturnType<T>>();\n\n  return (...args: Parameters<T>): ReturnType<T> => {\n    const key = JSON.stringify(args);\n    if (cache.has(key)) {\n      return cache.get(key) as ReturnType<T>;\n    }\n\n    const result = func(...args);\n    cache.set(key, result);\n    return result;\n  };\n}\n"],"mappings":";;AAAA,SAAgB,QACd,MAC2C;CAC3C,MAAM,wBAAQ,IAAI,IAA2B;CAE7C,QAAQ,GAAG,SAAuC;EAChD,MAAM,MAAM,KAAK,UAAU,IAAI;EAC/B,IAAI,MAAM,IAAI,GAAG,GACf,OAAO,MAAM,IAAI,GAAG;EAGtB,MAAM,SAAS,KAAK,GAAG,IAAI;EAC3B,MAAM,IAAI,KAAK,MAAM;EACrB,OAAO;CACT;AACF"}