Skip to content

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

Open
wants to merge 10 commits into
base: next
Choose a base branch
from

Conversation

lukasbriza
Copy link
Collaborator

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.

@lukasbriza lukasbriza self-assigned this Mar 4, 2025
@lukasbriza lukasbriza requested a review from atmelmicro April 22, 2025 11:10
@bedrich-schindler bedrich-schindler changed the base branch from master to next April 24, 2025 12:31
tsconfig.json Outdated
@@ -0,0 +1,35 @@
{
"compilerOptions": {
"target": "es5",
Copy link
Collaborator

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.

Copy link
Collaborator Author

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?

Copy link
Contributor

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.

Copy link
Collaborator

@atmelmicro atmelmicro left a 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

@lukasbriza lukasbriza force-pushed the refactoring/transform-typescript branch from 31fa9b7 to c1a3856 Compare April 29, 2025 05:27
@lukasbriza lukasbriza requested a review from adamkudrna as a code owner April 29, 2025 05:27
@lukasbriza lukasbriza requested a review from atmelmicro April 29, 2025 05:41
bedrich-schindler and others added 8 commits May 7, 2025 07:04
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.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants