GithubHelp home page GithubHelp logo

Comments (5)

orrgottlieb avatar orrgottlieb commented on July 30, 2024 1

Hi @suvnshr go for it!

from vibe.

suvnshr avatar suvnshr commented on July 30, 2024

Hi @orrgottlieb, I would like to pick this up.

I would be following the patterns used in the .tsx and .ts files already present in the project.

from vibe.

suvnshr avatar suvnshr commented on July 30, 2024

Hey @orrgottlieb

I'm wanted you to review some changes before I commit them, coz I think I will have to make changes to Button.tsx and Icon.tsx:

The close button snippet used in Button.jsx, cannot be used as is in Button.tsx because of a lot of restrictions of types:

  1. Button has a string type defined for children prop
  • But I have seen a lot of Button snippets in the code where the children is not always string
  • Adding a React.Element type to the Button's children prop fixes this.
  1. iconSubComponentProps has only string type for the size prop , but CloseSmallProps has string | number for size props
  • Adding a number to size prop in iconSubComponentProps fixes this
  1. iconSubComponentProps has only React.MouseEvent<HTMLElement> for onClick mouse events , but CloseSmallProps extends React.SVGAttributes<SVGElement> which sends mouse event as React.MouseEvent<SVGElement>
  • Adding a React.MouseEvent<SVGElement> to the mouse events of the onClick listener fixes this.

So my question is shall I go ahead and add the required types in Button.tsx and Icon.tsx?

I have ran all tests after making the above changes, and there were no failures.

PS: If I am not supposed to make the above changes then let me know how I can render that Button without triggering the above violations, thanks!

from vibe.

orrgottlieb avatar orrgottlieb commented on July 30, 2024

Hi @suvnshr thank you for the comments

  1. please fix the way that you suggested adding the React.Element type, you may (if you want) replace the string type with it
  2. awesome solution, go for it!
  3. we are using HTMLElement quite a lot, can you please add a type there that it is either HTMLElement | SVGElement in the types folder here, thank you

As this migration process is a work in progress you can fix types according to new needs

from vibe.

suvnshr avatar suvnshr commented on July 30, 2024

Ok sure. Will do the changes.

Thanks!

from vibe.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.