UNPKG

devextreme

Version:

HTML5 JavaScript Component Suite for Responsive Web Development

42 lines (41 loc) 993 B
/** * DevExtreme (esm/__internal/scheduler/global_cache.js) * Version: 25.2.3 * Build date: Fri Dec 12 2025 * * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/ */ import { isDefined } from "../../core/utils/type"; export class Cache { constructor() { this.cache = new Map } get size() { return this.cache.size } clear() { this.cache.clear() } get(name) { return this.cache.get(name) } memo(name, valueCallback) { if (!this.cache.has(name)) { const value = valueCallback(); if (isDefined(value)) { this.cache.set(name, value) } } return this.cache.get(name) } delete(name) { this.cache.delete(name) } } export const globalCache = { timezones: new Cache, DST: new Cache };