MOON
Server: Apache
System: Linux nserver.cafsindia.com 4.18.0-553.104.1.lve.el8.x86_64 #1 SMP Tue Feb 10 20:07:30 UTC 2026 x86_64
User: cafsindia (1002)
PHP: 8.2.30
Disabled: NONE
Upload Files
File: /home/cafsindia/snap.cafsinfotech.in/node_modules/@sentry/utils/cjs/cache.js.map
{"version":3,"file":"cache.js","sources":["../../src/cache.ts"],"sourcesContent":["/**\n * Creates a cache that evicts keys in fifo order\n * @param size {Number}\n */\nexport function makeFifoCache<Key extends string, Value>(\n  size: number,\n): {\n  get: (key: Key) => Value | undefined;\n  add: (key: Key, value: Value) => void;\n  delete: (key: Key) => boolean;\n  clear: () => void;\n  size: () => number;\n} {\n  // Maintain a fifo queue of keys, we cannot rely on Object.keys as the browser may not support it.\n  let evictionOrder: Key[] = [];\n  let cache: Record<string, Value> = {};\n\n  return {\n    add(key: Key, value: Value) {\n      while (evictionOrder.length >= size) {\n        // shift is O(n) but this is small size and only happens if we are\n        // exceeding the cache size so it should be fine.\n        const evictCandidate = evictionOrder.shift();\n\n        if (evictCandidate !== undefined) {\n          // eslint-disable-next-line @typescript-eslint/no-dynamic-delete\n          delete cache[evictCandidate];\n        }\n      }\n\n      // in case we have a collision, delete the old key.\n      if (cache[key]) {\n        this.delete(key);\n      }\n\n      evictionOrder.push(key);\n      cache[key] = value;\n    },\n    clear() {\n      cache = {};\n      evictionOrder = [];\n    },\n    get(key: Key): Value | undefined {\n      return cache[key];\n    },\n    size() {\n      return evictionOrder.length;\n    },\n    // Delete cache key and return true if it existed, false otherwise.\n    delete(key: Key): boolean {\n      if (!cache[key]) {\n        return false;\n      }\n\n      // eslint-disable-next-line @typescript-eslint/no-dynamic-delete\n      delete cache[key];\n\n      for (let i = 0; i < evictionOrder.length; i++) {\n        if (evictionOrder[i] === key) {\n          evictionOrder.splice(i, 1);\n          break;\n        }\n      }\n\n      return true;\n    },\n  };\n}\n"],"names":[],"mappings":";;AAAA;AACA;AACA;AACA;AACA,SAAA,aAAA;AACA,EAAA,IAAA;AACA;;AAMA,CAAA;AACA;AACA,EAAA,IAAA,aAAA,GAAA,EAAA,CAAA;AACA,EAAA,IAAA,KAAA,GAAA,EAAA,CAAA;AACA;AACA,EAAA,OAAA;AACA,IAAA,GAAA,CAAA,GAAA,EAAA,KAAA,EAAA;AACA,MAAA,OAAA,aAAA,CAAA,MAAA,IAAA,IAAA,EAAA;AACA;AACA;AACA,QAAA,MAAA,cAAA,GAAA,aAAA,CAAA,KAAA,EAAA,CAAA;AACA;AACA,QAAA,IAAA,cAAA,KAAA,SAAA,EAAA;AACA;AACA,UAAA,OAAA,KAAA,CAAA,cAAA,CAAA,CAAA;AACA,SAAA;AACA,OAAA;AACA;AACA;AACA,MAAA,IAAA,KAAA,CAAA,GAAA,CAAA,EAAA;AACA,QAAA,IAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA;AACA,OAAA;AACA;AACA,MAAA,aAAA,CAAA,IAAA,CAAA,GAAA,CAAA,CAAA;AACA,MAAA,KAAA,CAAA,GAAA,CAAA,GAAA,KAAA,CAAA;AACA,KAAA;AACA,IAAA,KAAA,GAAA;AACA,MAAA,KAAA,GAAA,EAAA,CAAA;AACA,MAAA,aAAA,GAAA,EAAA,CAAA;AACA,KAAA;AACA,IAAA,GAAA,CAAA,GAAA,EAAA;AACA,MAAA,OAAA,KAAA,CAAA,GAAA,CAAA,CAAA;AACA,KAAA;AACA,IAAA,IAAA,GAAA;AACA,MAAA,OAAA,aAAA,CAAA,MAAA,CAAA;AACA,KAAA;AACA;AACA,IAAA,MAAA,CAAA,GAAA,EAAA;AACA,MAAA,IAAA,CAAA,KAAA,CAAA,GAAA,CAAA,EAAA;AACA,QAAA,OAAA,KAAA,CAAA;AACA,OAAA;AACA;AACA;AACA,MAAA,OAAA,KAAA,CAAA,GAAA,CAAA,CAAA;AACA;AACA,MAAA,KAAA,IAAA,CAAA,GAAA,CAAA,EAAA,CAAA,GAAA,aAAA,CAAA,MAAA,EAAA,CAAA,EAAA,EAAA;AACA,QAAA,IAAA,aAAA,CAAA,CAAA,CAAA,KAAA,GAAA,EAAA;AACA,UAAA,aAAA,CAAA,MAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA;AACA,UAAA,MAAA;AACA,SAAA;AACA,OAAA;AACA;AACA,MAAA,OAAA,IAAA,CAAA;AACA,KAAA;AACA,GAAA,CAAA;AACA;;;;"}