@tanstack/router-plugin
Version:
Modern and scalable routing for React applications
69 lines (64 loc) • 1.51 kB
text/typescript
import { createRspackPlugin } 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 defineConfig({
* // ...
* tools: {
* rspack: {
* plugins: [TanStackRouterGeneratorRspack()],
* },
* },
* })
* ```
*/
const TanStackRouterGeneratorRspack = /* #__PURE__ */ createRspackPlugin(
unpluginRouterGeneratorFactory,
)
/**
* @example
* ```ts
* export default defineConfig({
* // ...
* tools: {
* rspack: {
* plugins: [TanStackRouterCodeSplitterRspack()],
* },
* },
* })
* ```
*/
const TanStackRouterCodeSplitterRspack = /* #__PURE__ */ createRspackPlugin(
unpluginRouterCodeSplitterFactory,
)
/**
* @example
* ```ts
* export default defineConfig({
* // ...
* tools: {
* rspack: {
* plugins: [tanstackRouter()],
* },
* },
* })
* ```
*/
const TanStackRouterRspack = /* #__PURE__ */ createRspackPlugin(
unpluginRouterComposedFactory,
)
const tanstackRouter = TanStackRouterRspack
export default TanStackRouterRspack
export {
configSchema,
TanStackRouterRspack,
TanStackRouterGeneratorRspack,
TanStackRouterCodeSplitterRspack,
tanstackRouter,
}
export type { Config }