You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* RD-1230 Add generating TS declarations
Add base and composite tsconfigs
Install typescript and some @types packages
Add scripts for checking types and generating type declarations
Configure type declarations to be visible from outside
* RD-1230 Add ESLint support for TypeScript
Also adjust the rules a bit where it makes sense with TS
* RD-1230 Handle TypeScript in rollup
* RD-1230 Fix paths used for collecting coverage
Only collect coverage from JS and TS files
* RD-1230 Adjust ESLint rules for TypeScript
* RD-1230 Fix react eslint config
Some TS rules were overrode by airbnb's config
Extracting TS overrides into a separate file and reusing it solves
the issue.
* RD-1230 Disable checking JS when running tsc
* RD-1230 Expose src direstory in the package
Allows navigating straight to the source file when using TypeScript
* RD-1230 Describe TS-contributed tsconfigs and eslint configs
Copy file name to clipboardExpand all lines: configs/README.md
+27-3Lines changed: 27 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -16,16 +16,40 @@ Once `cloudify-ui-common` is installed as a dependency it is required to modify
16
16
}
17
17
```
18
18
It is also required to install peer dependencies as specified in `package.json`.
19
-
There are three configuration files that can be extended.
19
+
There are three configuration files that can be extended.
20
20
The table below describes their purpose and dependencies necessary to be installed prior using each configuration file.
21
21
22
22
| Configuration file | Used for | Dependencies |
23
23
|--- |--- |---|
24
-
|`eslint-common.json`| non-react common projects |`eslint`, `eslint-config-prettier`, `eslint-plugin-import`, `eslint-plugin-prettier`, `eslint-plugin-scanjs-rules`, `eslint-plugin-security`|
25
-
|`eslint-common-react.json`| react-based projects | all from `eslint-common.json` and `eslint-plugin-react`, `eslint-plugin-react-hooks`, `eslint-plugin-jsx-a11y`|
|`eslint-common.json`| non-react common projects |`eslint`, `eslint-config-prettier`, `eslint-plugin-import`, `eslint-plugin-prettier`, `eslint-plugin-scanjs-rules`, `eslint-plugin-security`, all from `eslint-ts-overrides.json`|
26
+
|`eslint-common-react.json`| react-based projects | all from `eslint-common.json` and `eslint-ts-overrides.json`, and `eslint-plugin-react`, `eslint-plugin-react-hooks`, `eslint-plugin-jsx-a11y`|
26
27
|`eslint-common-node.json`| node-based projects | all from `eslint-common.json`, `eslint-plugin-node`|
27
28
28
29
30
+
### TypeScript
31
+
32
+
There are 2 possible base `tsconfig.json` files:
33
+
34
+
1.`tsconfig.base.json` - contains compiler options that help maintain code quality. They allow
35
+
using JavaScript and TypeScript in the same project.
36
+
37
+
This configuration should be used for user-facing projects that do not need to be used as
38
+
dependencies in other projects (not libraries).
39
+
40
+
2.`tsconfig.composite.json` - extends `tsconfig.base.json` with settings necessary to allow
0 commit comments