UNPKG

@baseplate-dev/react-generators

Version:

React Generators for Baseplate

59 lines 2.75 kB
import { typescriptFileProvider } from '@baseplate-dev/core-generators'; import { createGeneratorTask, createProviderType } from '@baseplate-dev/sync'; import { reactComponentsImportsProvider } from '#src/generators/core/react-components/generated/ts-import-providers.js'; import { CORE_REACT_ROUTER_PATHS } from './template-paths.js'; import { CORE_REACT_ROUTER_TEMPLATES } from './typed-templates.js'; const coreReactRouterRenderers = createProviderType('core-react-router-renderers'); const coreReactRouterRenderersTask = createGeneratorTask({ dependencies: { paths: CORE_REACT_ROUTER_PATHS.provider, reactComponentsImports: reactComponentsImportsProvider, typescriptFile: typescriptFileProvider, }, exports: { coreReactRouterRenderers: coreReactRouterRenderers.export() }, run({ paths, reactComponentsImports, typescriptFile }) { return { providers: { coreReactRouterRenderers: { placeholderIndex: { render: (options) => typescriptFile.renderTemplateFile({ template: CORE_REACT_ROUTER_TEMPLATES.placeholderIndex, destination: paths.placeholderIndex, ...options, }), }, rootRoute: { render: (options) => typescriptFile.renderTemplateFile({ template: CORE_REACT_ROUTER_TEMPLATES.rootRoute, destination: paths.rootRoute, ...options, }), }, router: { render: (options) => typescriptFile.renderTemplateFile({ template: CORE_REACT_ROUTER_TEMPLATES.router, destination: paths.router, importMapProviders: { reactComponentsImports, }, generatorPaths: paths, ...options, }), }, routeTree: { render: (options) => typescriptFile.renderTemplateFile({ template: CORE_REACT_ROUTER_TEMPLATES.routeTree, destination: paths.routeTree, ...options, }), }, }, }, }; }, }); export const CORE_REACT_ROUTER_RENDERERS = { provider: coreReactRouterRenderers, task: coreReactRouterRenderersTask, }; //# sourceMappingURL=template-renderers.js.map