{"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,KAA4B;AAE9C,SAAQ,GAAG,SAAuC;EAChD,MAAM,MAAM,KAAK,UAAU,KAAK;AAChC,MAAI,MAAM,IAAI,IAAI,CAChB,QAAO,MAAM,IAAI,IAAI;EAGvB,MAAM,SAAS,KAAK,GAAG,KAAK;AAC5B,QAAM,IAAI,KAAK,OAAO;AACtB,SAAO"}