Skip to content

Commit 0b9615f

Browse files
committed
feat: setup workspaceConfig for all envs
1 parent 5756df6 commit 0b9615f

File tree

8 files changed

+27
-135
lines changed

8 files changed

+27
-135
lines changed

scopes/generators/angular-starters/common/eslint-config.ts

Lines changed: 0 additions & 33 deletions
This file was deleted.

scopes/generators/angular-starters/common/prettier-config.ts

Lines changed: 0 additions & 7 deletions
This file was deleted.

scopes/generators/angular-starters/common/ts-config.ts

Lines changed: 0 additions & 53 deletions
This file was deleted.

scopes/generators/angular-starters/design-system/index.ts

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
import { WorkspaceContext, WorkspaceTemplate } from '@teambit/generator';
22
import { AngularComponentTemplateOptions } from '@teambit/angular-common';
3-
import { eslintConfig } from '../common/eslint-config';
43
import { launchJson } from '../common/launch-json';
5-
import { prettierConfig } from '../common/prettier-config';
6-
import { tsConfig } from '../common/ts-config';
74
import { workspaceConfig } from '../common/workspace-config';
85
import { gitIgnore } from '../common/git-ignore';
96
import { EnvContext, EnvHandler } from '@teambit/envs';
@@ -30,15 +27,6 @@ export class DesignSystemStarter implements WorkspaceTemplate {
3027
}, {
3128
relativePath: '.vscode/launch.json',
3229
content: launchJson(context)
33-
}, {
34-
relativePath: `.eslintrc.js`,
35-
content: eslintConfig
36-
}, {
37-
relativePath: `tsconfig.json`,
38-
content: tsConfig
39-
}, {
40-
relativePath: `.prettierrc.js`,
41-
content: prettierConfig
4230
}];
4331
}
4432

@@ -53,7 +41,7 @@ export class DesignSystemStarter implements WorkspaceTemplate {
5341
{ id: `learnbit-angular.design-system/theme/my-light-theme` },
5442
{ id: `learnbit-angular.design-system/ui/my-button` },
5543
{ id: `learnbit-angular.design-system/ui/my-dialog`, env },
56-
{ id: `learnbit-angular.design-system/ui/my-toggle-theme`, env },
44+
{ id: `learnbit-angular.design-system/ui/my-theme-picker`, env },
5745
];
5846
}
5947

scopes/generators/angular-starters/material-design-system/index.ts

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
import { WorkspaceContext, WorkspaceTemplate } from '@teambit/generator';
22
import { AngularComponentTemplateOptions } from '@teambit/angular-common';
3-
import { eslintConfig } from '../common/eslint-config';
43
import { launchJson } from '../common/launch-json';
5-
import { prettierConfig } from '../common/prettier-config';
6-
import { tsConfig } from '../common/ts-config';
74
import { workspaceConfig } from '../common/workspace-config';
85
import { gitIgnore } from '../common/git-ignore';
96
import { EnvContext, EnvHandler } from '@teambit/envs';
@@ -30,15 +27,6 @@ export class MaterialDesignSystemStarter implements WorkspaceTemplate {
3027
}, {
3128
relativePath: '.vscode/launch.json',
3229
content: launchJson(context)
33-
}, {
34-
relativePath: `.eslintrc.js`,
35-
content: eslintConfig
36-
}, {
37-
relativePath: `tsconfig.json`,
38-
content: tsConfig
39-
}, {
40-
relativePath: `.prettierrc.js`,
41-
content: prettierConfig
4230
}];
4331
}
4432

scopes/generators/angular-starters/ng-workspace/index.ts

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,8 @@ import { AngularComponentTemplateOptions } from '@teambit/angular-common';
22
import { EnvContext, EnvHandler } from '@teambit/envs';
33
import { WorkspaceContext, WorkspaceTemplate } from '@teambit/generator';
44
import { PkgAspect, PkgMain } from '@teambit/pkg';
5-
import { eslintConfig } from '../common/eslint-config';
65
import { gitIgnore } from '../common/git-ignore';
76
import { launchJson } from '../common/launch-json';
8-
import { prettierConfig } from '../common/prettier-config';
9-
import { tsConfig } from '../common/ts-config';
107
import { workspaceConfig } from '../common/workspace-config';
118
import { FORKED_ENV_NAME } from '../constants';
129

@@ -31,15 +28,6 @@ export class AngularStarter implements WorkspaceTemplate {
3128
}, {
3229
relativePath: '.vscode/launch.json',
3330
content: launchJson(context)
34-
}, {
35-
relativePath: `.eslintrc.js`,
36-
content: eslintConfig
37-
}, {
38-
relativePath: `tsconfig.json`,
39-
content: tsConfig
40-
}, {
41-
relativePath: `.prettierrc.js`,
42-
content: prettierConfig
4331
}];
4432
}
4533

scopes/versions/common/angular-base/angular-base.bit-env.ts

Lines changed: 25 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,20 @@
11
import { AngularAppType, NG_APP_NAME } from '@teambit/angular-apps';
22
import { AngularEnvOptions, BrowserOptions, DevServerOptions } from '@teambit/angular-common';
33
import { AngularPreview, BundlerProvider, DevServerProvider } from '@teambit/angular-preview';
4-
import { AngularStarter, DesignSystemStarter, MaterialDesignSystemStarter } from '@teambit/angular-starters';
4+
import {
5+
AngularStarter,
6+
DesignSystemStarter,
7+
MaterialDesignSystemStarter
8+
} from '@teambit/angular-starters';
59
import { NgAppTemplate, NgEnvTemplate, NgModuleTemplate } from '@teambit/angular-templates';
610
import { NgWebpackBundler, NgWebpackDevServer } from '@teambit/angular-webpack';
711
import { AppTypeList } from '@teambit/application';
812
import { Pipeline } from '@teambit/builder';
913
import { Bundler, BundlerContext, DevServer, DevServerContext } from '@teambit/bundler';
1014
import { Compiler } from '@teambit/compiler';
11-
import { ESLintLinter, EslintTask } from '@teambit/defender.eslint-linter';
15+
import { EslintConfigWriter, ESLintLinter, EslintTask } from '@teambit/defender.eslint-linter';
1216
import { JestTask, JestTester } from '@teambit/defender.jest-tester';
13-
import { PrettierFormatter } from '@teambit/defender.prettier-formatter';
17+
import { PrettierConfigWriter, PrettierFormatter } from '@teambit/defender.prettier-formatter';
1418
import { AsyncEnvHandler, EnvHandler } from '@teambit/envs';
1519
import { Formatter } from '@teambit/formatter';
1620
import { StarterList, TemplateList } from '@teambit/generator';
@@ -21,7 +25,9 @@ import { Preview } from '@teambit/preview';
2125
import { SchemaExtractor } from '@teambit/schema';
2226
import { Tester } from '@teambit/tester';
2327
import { TypeScriptExtractor } from '@teambit/typescript';
28+
import { TypescriptConfigWriter } from '@teambit/typescript.typescript-compiler';
2429
import { WebpackConfigTransformer, WebpackConfigWithDevServer } from '@teambit/webpack';
30+
import { ConfigWriterList } from '@teambit/workspace-config-files';
2531
import { ESLint as ESLintLib } from 'eslint';
2632
import { merge } from 'lodash';
2733
import { Configuration } from 'webpack';
@@ -31,7 +37,7 @@ import hostDependencies from './preview/host-dependencies';
3137
/**
3238
* a component environment built for [Angular](https://angular.io).
3339
*/
34-
export abstract class AngularBaseEnv implements AngularEnvInterface {
40+
export abstract class AngularBaseEnv implements AngularEnvInterface {
3541
icon = 'https://static.bit.dev/extensions-icons/angular.svg';
3642
private ngMultiCompiler: EnvHandler<NgMultiCompiler> | undefined;
3743

@@ -222,6 +228,21 @@ import hostDependencies from './preview/host-dependencies';
222228
return Pipeline.from([]);
223229
}
224230

231+
workspaceConfig(): ConfigWriterList {
232+
return ConfigWriterList.from([
233+
TypescriptConfigWriter.from({
234+
tsconfig: require.resolve('./config/tsconfig.json')
235+
}),
236+
EslintConfigWriter.from({
237+
configPath: require.resolve('./config/eslintrc'),
238+
tsconfig: require.resolve('./config/tsconfig.json')
239+
}),
240+
PrettierConfigWriter.from({
241+
configPath: require.resolve('./config/prettier.config')
242+
})
243+
]);
244+
}
245+
225246
getTesterConfig() {
226247
const ngEnvOptions = this.getNgEnvOptions();
227248
return {

scopes/versions/common/angular-base/config/tsconfig.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,6 @@
1515
"forceConsistentCasingInFileNames": true,
1616
"jsx": "react-jsx"
1717
},
18-
"exclude": ["artifacts", "public", "dist", "node_modules", "package.json"],
18+
"exclude": ["artifacts", "public", "dist", "node_modules", "package.json", "**/*.cjs"],
1919
"include": ["**/*", "**/*.json"]
2020
}

0 commit comments

Comments
 (0)