UNPKG

@tanstack/router-plugin

Version:

Modern and scalable routing for React applications

29 lines (28 loc) 1.04 kB
import { default as babel } from '@babel/core'; import { Config, DeletableNodes } from '../config.cjs'; import { CodeSplitGroupings } from '../constants.cjs'; import type * as t from '@babel/types'; export type CompileCodeSplitReferenceRouteOptions = { codeSplitGroupings: CodeSplitGroupings; deleteNodes?: Set<DeletableNodes>; targetFramework: Config['target']; filename: string; id: string; addHmr?: boolean; sharedBindings?: Set<string>; }; export type ReferenceRouteCompilerPluginContext = { programPath: babel.NodePath<t.Program>; callExpressionPath: babel.NodePath<t.CallExpression>; insertionPath: babel.NodePath; routeOptions: t.ObjectExpression; createRouteFn: string; opts: CompileCodeSplitReferenceRouteOptions; }; export type ReferenceRouteCompilerPluginResult = { modified?: boolean; }; export type ReferenceRouteCompilerPlugin = { name: string; onUnsplittableRoute?: (ctx: ReferenceRouteCompilerPluginContext) => void | ReferenceRouteCompilerPluginResult; };