next.js/packages/next/src/server/route-matcher-providers/manifest-route-matcher-provider.ts
manifest-route-matcher-provider.ts18 lines604 B
import type { RouteMatcher } from '../route-matchers/route-matcher'
import type {
  Manifest,
  ManifestLoader,
} from './helpers/manifest-loaders/manifest-loader'
import { CachedRouteMatcherProvider } from './helpers/cached-route-matcher-provider'

export abstract class ManifestRouteMatcherProvider<
  M extends RouteMatcher = RouteMatcher,
> extends CachedRouteMatcherProvider<M, Manifest | null> {
  constructor(manifestName: string, manifestLoader: ManifestLoader) {
    super({
      load: async () => manifestLoader.load(manifestName),
      compare: (left, right) => left === right,
    })
  }
}
Quest for Codev2.0.0
/
SIGN IN