Skip to content
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

Set default value for type parameter in SelectProps #7014

Open
wants to merge 330 commits into
base: main
Choose a base branch
from

Conversation

kp047i
Copy link

@kp047i kp047i commented Sep 9, 2024

Closes #6960

✅ Pull Request Checklist:

  • Included link to corresponding React Spectrum GitHub Issue.
  • Added/updated unit tests and storybook for this change (for new code or code which already has tests).
  • Filled out test instructions.
  • Updated documentation (if it already exists for this component).
  • Looked at the Accessibility Practices for this feature - Aria Practices

📝 Test Instructions:

🧢 Your Project:

devongovett and others added 30 commits March 11, 2024 14:33
* update illustrated message font size

* remove v3 style props

* remove unneccessary styling

Co-authored-by: Yihui Liao <[email protected]>
* ActionMenu and positioning props for Menu
* Move Popover padding and add ref
* nextjs, macros, and components example app

* package.json link path to rainbow was wrong

* adding dropzone, taggroup, and illustratedmessage

* using the npmjs version of unplogin-parcel-macros instead of linking

* review feedback - config improvements

Co-authored-by: Kyle Taborski <[email protected]>
* Avatar audit + fix to style macro to omit overriden default styles

* removing avatars and isDisabled

* audit button and buttongroup

* more audit items

* Adding component descriptions

* Forgot to save

* update with spectrum links and help text type update

* properly only send DOM props to the Avatar

* fix help text related types

* update label type

* whoops too much empty space

* review comments
* I-P exports and descriptions
Menu has its own Divider so we can ensure style merge order (adobe#76)
* Use WF icons for InlineAlert

* change prop name back

* Get rid of cloneElement and use wrapper on context

* swap to svgr and work on inline alert

* fix sizing temporarily

* Update all icon usages

* inline styles, though i still think these are broken icons

* review comments

* update font colors of inline alert to match figma

Co-authored-by: Daniel Lu <[email protected]>
* update type for Divider

* update type for Dropzone

* update type for Form

* add JSDoc

* update Divider JSDoc

* Update Dropzone JSDoc

* add more JSDocs

* default Form size to M

* formatting

* add min height and width to divider based on orientation

* switch defaults to medium values

* update Divider large sizes

* remove validationBehavior from Form

* add PURE annotations

Co-authored-by: Reid Barber <[email protected]>
Co-authored-by: Rob Snow <[email protected]>
…ted, and other bug fixes (adobe#72)

* adding ActionButton truncation and fixing Taggroup icon color when selected

* fix icon only button sizing in ButtonGroup in safari

not sure why the minWidth is being applied to non icon only buttons though...

* Make help text not render anything if there isnt a error message to display when invalid

* fix dropzone replace mesage banner positioning in Safari

Co-authored-by: Rob Snow <[email protected]>
* update sizes to use auto instead of undefined

* add none to theme

* update to use none instead of auto

* update style logic

* Revert "add none to theme"

This reverts commit 4f552e74de94475dd3809063b3a18ae548b3e740.

* improve story

* remove minWidth and minHeight

Co-authored-by: Reid Barber <[email protected]>
* R-S audit

* RadioGroup api audit and radio props from form context

* renaming props and form props in radio

* adding pure

* updated comments and rest of files

* fixing a variable usage

Co-authored-by: Kyle Taborski <[email protected]>
Copy link
Member

@snowystinger snowystinger left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for submitting!

I'm not sure the best way to mark this as deprecated now. Perhaps using overload syntax we could mark this particular signature as deprecated

snowystinger and others added 17 commits September 11, 2024 07:49
* Fix icon builder dependencies
* replace Azure CLI with AzCopy

* use wget

* update command

* remove azure-cli image

* Revert "remove azure-cli image"

This reverts commit 07b7ed0.
* fix path in verdaccio deploy

* build on PR

* revert

* enable comments on PR

* loop over verdaccio dir

* add back branch filters
)

* Allow layout delegate to override shift selection behavior

* Fix virtualizer unmounting and remounting when changing layout options

* Automatically reduce card size based on available space

* Fix TS strict

---------

Co-authored-by: Daniel Lu <[email protected]>
* initialize segemented file

* add some styling

* add track styling and hcm

* fix hcm

* remove unused imports

* export properly, add font weight

* default select first item, fix hcm

* remove trackStyle prop

* remove more trackStyle stuff, update css

* update stories

* fix types, add jsdoc comments

* update story again oops

* fix typo

* fix types

* remove space

* add translation

* update internal context prop name, add transition

* remove transition, fix keyboard in rtl

* update string formatter

* initialize animations (it's very janky)

* require aria label, remove translation

* fix lint

* fix ts

* update props

* fix spacing

* add aria label to stories

* update animation using flip, fix selectedValue when radio group is disabled

* keep speed the same

* fix lint and small other fixes

* add icon only spacing

* update segmented control item prop name

* fix lint

* small fixes

* fix alignment with text and icons, fix wiggling for ltr

* fix wiggling in rtl languages

* update icon only buttons

* revert useRadioGroupState change

* revert changes to registration

* fix lint

---------

Co-authored-by: Robert Snow <[email protected]>
RAC and S2 Pending Button
Co-authored-by: Abel John <[email protected]>
Co-authored-by: Robert Snow <[email protected]>
Co-authored-by: Daniel Lu <[email protected]>
Co-authored-by: Teemu Andersèn <[email protected]>
Co-authored-by: Robert Snow <[email protected]>
Co-authored-by: Reid Barber <[email protected]>
Co-authored-by: Daniel Lu <[email protected]>
feat: forward styles to VirtualizerItem
* initialize accordion item

* update yarn.lock

* better hidden=until-found support

* allow passing in panel ref

* comments

* use RAC in v3 Accordion

* use disclosure hooks

* initialize S2 Accordion

* fix lint

* add exports

* lint

* fix chevron color in dark mode

* fix version of @react-stately/accordion

* keep aria-controls even when closed

* add isFocusVisibleWithin to AccordionPanel

* fix panel height

* fix versions

* add to ts strict config

* change open/close to expand/collapse

* move to disclosure package

* fix chevron shrinking on wrapping header text

* support for disabled in S2

* clear ButtonContext in panel

* update colors

* lint

* fix v3 chevron not rotating

* don't open via onbeforematch if disabled

* add disableTapHighlight

* open disclosure onKeyDown

* add getAllowedOverrides

* remove outer header component

* support level in S2 header

* support level in v3 header

* switch divider to use border

* simplify focus ring and padding styles

* update AccordionItem children types to enforce two React elements

* remove Header from RAC example

* scale font size

* update yarn.lock

* fix keydown interaction + types

* support size, density, isQuiet, and isDisabled on individual items, but use group prop if available

* enforce minWidth at item level

* add isFocusVisibleWithin to item

* fix chevron in RTL

* revert changes to @react-aria/accordion

* fix v3 chevron in RTL

* fix packages/imports

* use 'group' as default role

* deprecate useAccordion and useAccordionItem

* update prop JSDocs

* update yarn.lock

* fix v3 refs

* add v3 tests back

* update imports

* remove @ts-ignore

* Revert "remove @ts-ignore"

This reverts commit 88c1604.

* fix stories

* fix context for individual accordion item

* fix defaults for individual item

* add story for individual item

* make paddingTop and paddingBottom equal

* fix story

* change triggerProps to buttonProps

* add optional ref to useDisclosure

* add SSR check

* use useEvent to add beforematch listener

* rename AccordionGroup to Accordion

* rename Disclosure to AccordionItem

* rename AccordionPanel to DisclosurePanel

* more renaming

* rename RAC Accordion file to Disclosure

* comment updates

* package.json updates

* yarn.lock

* update render props

* add DEFAULT_SLOT

* use fontRelative for border radius

* style macro updates

* lint

* update codemod

* fix tests

* use control for borderRadius

* use ref instead of contentRef prop

* use values on grid

* lint

* yarn.lock

* fix refs

* lint

* revert renames in useAccordion

* move Disclosure  to its own file

* reanme RAC Accordion stories to Disclosure

* fix styles prop type

* fix imports

* update styles type on Disclosure

* add dedicated story for S2 Disclosure

* Slight fixes

* Center baseline and simplify padding by changing the minHeight instead

It uses more normal numbers

* fix import

* update lockfile

---------

Co-authored-by: Devon Govett <[email protected]>
@kp047i
Copy link
Author

kp047i commented Sep 21, 2024

@snowystinger
I tried using overload syntax to deprecate only the function signatures where a type parameter is provided, but I couldn’t get it to work. Here’s my attempt: TypeScript Playground.

Could you check if my approach is correct, and let me know if there’s a better way to achieve this?

Thanks!

snowystinger
snowystinger previously approved these changes Sep 24, 2024
Copy link
Member

@snowystinger snowystinger left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmmm, I am not good enough at Typescript to figure out how to do it. I had a good google around. Thanks for also checking that out and confirming it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Type param in SelectProps<T> is not used