-
Notifications
You must be signed in to change notification settings - Fork 7
Refactoring/transform typescript #602
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: next
Are you sure you want to change the base?
Conversation
src/components/Grid/_helpers/generateResponsiveCustomProperties.ts
Outdated
Show resolved
Hide resolved
tsconfig.json
Outdated
@@ -0,0 +1,35 @@ | |||
{ | |||
"compilerOptions": { | |||
"target": "es5", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Don't we want to target something newer? Targeting es5 will make the bundle larger.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mbohal what we want to target on?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Honestly I have no idea. I think we should discuss it on our weekly meeting.
Lets leave it as es5
for now - that is the default and it is a safe value.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If I am not mistaken docoff will need to be updated to support typescript. For now, I cant spin up the development server
31fa9b7
to
c1a3856
Compare
I introduced Playwright Component Testing as replacement for Jest and RTL. Those tests must be run within `playwright` docker container with pre-installed browsers to ensure uniform testing environment. `.env.playwright` is created using `postinstall` script to follow zero-config setup. `.env.playwright` can be used to tweak parameters for local development if needed. `.env` newly contains Playwright related configuration for Docker. Currently, only tests for `Alert` and `Button` components are migrated to Playwright CT as this commit is supposed to be proof-of-concept. Rest should be migrated in later pull request. All visual tests use prop tests concept we already have for Jest to simplify testing and to make it DRY. `mixPropTests()` is introduced to mix those to create combinations to be tested. New Github workflow is introduced to test only Playwright as it can be time exhausting. Further improvements are expected to be make in the future.
Transform Playwright related files to Typescript and introduce temporary configuration files `.eslintrc-ts`, `jest.config-ts.js` and `tsconfig.json` that must be removed when whole package is transformed into Playwright. Due to missing TypeScript support in the rest of the package, `*.spec.tsx` and `*.story.tsx` file do not have complete types and might not be compatible with strict type checking that should be introduced in #394. The reason for such change is parallel work on transformation to TypeScript and on Playwright tests.
c1a3856
to
f5daa5d
Compare
I tried to maintain the existing logic; however, for about two components, I had to implement a few additional things due to TypeScript. Please review and let me know if this works for you.