forceCalendar
API Reference

PerformanceOptimizer

API reference for the PerformanceOptimizer class.

import { PerformanceOptimizer } from '@forcecalendar/core';

Constructor

new PerformanceOptimizer(options?: {
  eventCacheSize?: number,    // default 500
  queryCacheSize?: number,    // default 100
  dateRangeCacheSize?: number // default 50
})

Caching

MethodSignatureReturns
cache(key: string, value: any, type?: string) => void
getFromCache(key: string, type?: string) => any | undefinedCached value
optimizeQuery(key: string, fn: Function) => anyQuery result

Cache types: 'event', 'query', 'dateRange'.

Metrics

MethodSignatureReturns
measure(operation: string, fn: Function) => anyFunction result
measureAsync(operation: string, fn: Function) => Promise<any>Function result
getMetrics() => objectAll metrics

Lazy Indexing

MethodSignatureReturns
shouldUseLazyIndexing(event: Event) => boolean
createLazyIndexMarkers(event: Event) => void
expandLazyIndex(eventId: string, start: Date, end: Date) => void

Batch

MethodSignatureReturns
batch(operation: Function) => anyResult

Lifecycle

MethodSignatureReturns
destroy() => void