heartbeat-monitor/node_modules/next/dist/server/lib/incremental-cache/shared-revalidate-timings.js
Matt Bruce bed1169443 Initial commit: Heartbeat Monitor dashboard
- Full-featured monitoring dashboard for local web apps
- Real-time status tracking with uptime percentages
- Visual sparklines for status history
- Add/Edit/Delete apps dynamically
- Categories and color coding
- Auto-refresh every 30 seconds
- API endpoints for apps and status management
2026-02-18 11:16:01 -06:00

59 lines
2.5 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "SharedRevalidateTimings", {
enumerable: true,
get: function() {
return SharedRevalidateTimings;
}
});
class SharedRevalidateTimings {
static #_ = /**
* The in-memory cache of revalidate timings for routes. This cache is
* populated when the cache is updated with new timings.
*/ this.timings = new Map();
constructor(/**
* The prerender manifest that contains the initial revalidate timings for
* routes.
*/ prerenderManifest){
this.prerenderManifest = prerenderManifest;
}
/**
* Try to get the revalidate timings for a route. This will first try to get
* the timings from the in-memory cache. If the timings are not present in the
* in-memory cache, then the timings will be sourced from the prerender
* manifest.
*
* @param route the route to get the revalidate timings for
* @returns the revalidate timings for the route, or undefined if the timings
* are not present in the in-memory cache or the prerender manifest
*/ get(route) {
var _this_prerenderManifest_routes_route, _this_prerenderManifest_dynamicRoutes_route;
// This is a copy on write cache that is updated when the cache is updated.
// If the cache is never written to, then the timings will be sourced from
// the prerender manifest.
let revalidate = SharedRevalidateTimings.timings.get(route);
if (typeof revalidate !== 'undefined') return revalidate;
revalidate = (_this_prerenderManifest_routes_route = this.prerenderManifest.routes[route]) == null ? void 0 : _this_prerenderManifest_routes_route.initialRevalidateSeconds;
if (typeof revalidate !== 'undefined') return revalidate;
revalidate = (_this_prerenderManifest_dynamicRoutes_route = this.prerenderManifest.dynamicRoutes[route]) == null ? void 0 : _this_prerenderManifest_dynamicRoutes_route.fallbackRevalidate;
if (typeof revalidate !== 'undefined') return revalidate;
return undefined;
}
/**
* Set the revalidate timings for a route.
*
* @param route the route to set the revalidate timings for
* @param revalidate the revalidate timings for the route
*/ set(route, revalidate) {
SharedRevalidateTimings.timings.set(route, revalidate);
}
/**
* Clear the in-memory cache of revalidate timings for routes.
*/ clear() {
SharedRevalidateTimings.timings.clear();
}
}
//# sourceMappingURL=shared-revalidate-timings.js.map