@tanstack/router-plugin
Version:
Modern and scalable routing for React applications
58 lines (50 loc) • 1.27 kB
text/typescript
import { createEsbuildPlugin } from 'unplugin'
import { configSchema } from './core/config'
import { unpluginRouterCodeSplitterFactory } from './core/router-code-splitter-plugin'
import { unpluginRouterGeneratorFactory } from './core/router-generator-plugin'
import { unpluginRouterComposedFactory } from './core/router-composed-plugin'
import type { Config } from './core/config'
/**
* @example
* ```ts
* export default {
* plugins: [TanStackRouterGeneratorEsbuild()],
* // ...
* }
* ```
*/
const TanStackRouterGeneratorEsbuild = createEsbuildPlugin(
unpluginRouterGeneratorFactory,
)
/**
* @example
* ```ts
* export default {
* plugins: [TanStackRouterCodeSplitterEsbuild()],
* // ...
* }
* ```
*/
const TanStackRouterCodeSplitterEsbuild = createEsbuildPlugin(
unpluginRouterCodeSplitterFactory,
)
/**
* @example
* ```ts
* export default {
* plugins: [tanstackRouter()],
* // ...
* }
* ```
*/
const TanStackRouterEsbuild = createEsbuildPlugin(unpluginRouterComposedFactory)
const tanstackRouter = TanStackRouterEsbuild
export default TanStackRouterEsbuild
export {
configSchema,
TanStackRouterGeneratorEsbuild,
TanStackRouterCodeSplitterEsbuild,
TanStackRouterEsbuild,
tanstackRouter,
}
export type { Config }