UNPKG

@eljs/create-preset-structure

Version:
55 lines (52 loc) 1.35 kB
/* eslint-disable @typescript-eslint/naming-convention */ import type { Api } from '@eljs/create' export default async (api: Api) => { api.modifyTsConfig(() => { const { isMonorepo } = api.prompts const include = isMonorepo ? ['packages/*/src', './global.d.ts'] : ['src', './global.d.ts'] return { compilerOptions: { target: 'es2016', module: 'esnext', moduleResolution: 'node', ...(isMonorepo ? {} : { outDir: 'esm', }), allowJs: false, sourceMap: false, declaration: true, ...(isMonorepo ? {} : { declarationDir: 'esm', }), declarationMap: true, noUnusedLocals: true, useDefineForClassFields: false, experimentalDecorators: true, emitDecoratorMetadata: true, isolatedModules: true, verbatimModuleSyntax: true, esModuleInterop: true, removeComments: false, skipLibCheck: true, strict: true, jsx: 'react', lib: ['esnext'], ...(isMonorepo ? {} : { paths: { '@/*': ['./src/*'], }, }), }, include, exclude: ['node_modules', 'dist', 'lib', 'esm'], } }) }