UNPKG

@tanstack/solid-start

Version:

Modern and scalable routing for Solid applications

50 lines (47 loc) 1.6 kB
import { START_ENVIRONMENT_NAMES, tanStackStartVite, } from '@tanstack/start-plugin-core' import type { TanStackStartViteInputConfig, TanStackStartVitePluginCoreOptions, } from '@tanstack/start-plugin-core' import { solidStartDefaultEntryPaths } from './shared' import type { PluginOption } from 'vite' export function tanstackStart( options?: TanStackStartViteInputConfig, ): Array<PluginOption> { const corePluginOpts: TanStackStartVitePluginCoreOptions = { framework: 'solid', defaultEntryPaths: solidStartDefaultEntryPaths, providerEnvironmentName: START_ENVIRONMENT_NAMES.server, ssrIsProvider: true, ssrResolverStrategy: { type: 'default', }, } return [ { name: 'tanstack-solid-start:config', configEnvironment(environmentName, options) { return { optimizeDeps: environmentName === START_ENVIRONMENT_NAMES.client || (environmentName === START_ENVIRONMENT_NAMES.server && // This indicates that the server environment has opted in to dependency optimization options.optimizeDeps?.noDiscovery === false) ? { // As `@tanstack/solid-start` depends on `@tanstack/solid-router`, we should exclude both. exclude: [ '@tanstack/solid-start', '@tanstack/solid-router', '@tanstack/start-static-server-functions', ], } : undefined, } }, }, tanStackStartVite(corePluginOpts, options), ] }