mirror of
https://github.com/ionic-team/ionic-framework.git
synced 2026-03-13 10:22:08 +08:00
Issue number: N/A --------- <!-- Please do not submit updates to dependencies unless it fixes an issue. --> <!-- Please try to limit your pull request to one type (bugfix, feature, etc). Submit multiple pull requests if needed. --> ## What is the current behavior? <!-- Please describe the current behavior that you are modifying. --> Type checking inside of the Stencil unit tests have been disabled for a long time. This has resulted in a difficult developer experience and numerous issues (both types and implementation) within our unit tests. ## What is the new behavior? <!-- Please describe the behavior or changes that are being added by this PR. --> - Type checking is now enabled for all Stencil unit tests - Tests have been updated to resolve type errors and implementation errors - Many `as any` casts were introduced, as many legacy tests test invalid configurations of functions that require it (for example passing `undefined` to an argument that cannot be `undefined`). ## Does this introduce a breaking change? - [ ] Yes - [x] No <!-- If this introduces a breaking change, please describe the impact and migration path for existing applications below. --> ## Other information <!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. --> To test this PR you can checkout the branch locally. Install dependencies in the `/core` directory to make sure you are on at least `@stencil/core@4.7.2`. Opening either a `.spec.ts` or `.spec.tsx` file, validate that your IDE detects types and can provide auto completions for jest global types. If you desire, you can provide an invalid type and try building the project - you will observe the build will fail due to the invalid type.
43 lines
922 B
JSON
43 lines
922 B
JSON
{
|
|
"compilerOptions": {
|
|
"strict": true,
|
|
"alwaysStrict": true,
|
|
"allowSyntheticDefaultImports": true,
|
|
"allowUnreachableCode": false,
|
|
"declaration": true,
|
|
"experimentalDecorators": true,
|
|
"forceConsistentCasingInFileNames": true,
|
|
"assumeChangesOnlyAffectDirectDependencies": true,
|
|
"jsx": "react",
|
|
"jsxFactory": "h",
|
|
"lib": [
|
|
"dom",
|
|
"dom.iterable",
|
|
"es2017",
|
|
"es2020",
|
|
"es2021"
|
|
],
|
|
"module": "esnext",
|
|
"moduleResolution": "node",
|
|
"noImplicitAny": true,
|
|
"noImplicitReturns": true,
|
|
"noUnusedLocals": true,
|
|
"noUnusedParameters": true,
|
|
"outDir": ".tmp",
|
|
"pretty": true,
|
|
"removeComments": false,
|
|
"target": "es2017",
|
|
"baseUrl": ".",
|
|
"paths": {
|
|
"@utils/*": ["src/utils/*"],
|
|
"@utils/test": ["src/utils/test/utils"]
|
|
}
|
|
},
|
|
"include": [
|
|
"src",
|
|
],
|
|
"exclude": [
|
|
"node_modules"
|
|
]
|
|
}
|