Skip to content

V19 updates #751

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

Draft
wants to merge 34 commits into
base: vnext
Choose a base branch
from
Draft

V19 updates #751

wants to merge 34 commits into from

Conversation

damyanpetev
Copy link
Member

@damyanpetev damyanpetev commented Apr 7, 2025

State based on #749, will switch to vnext target once that's merged.

Generated package updates from IgniteUI/igniteui-xplat-examples#830:


igniteui-react-grids and igniteui-react Breaking changes:

This release include a major rework of some of our React components internals leading to the following changes:

  • Now using React function components, therefore refs obtained from a component will be a forward of the native element instead of a class component instance. Since those are custom elements with mostly the same component-specific API, in addition to the DOM APIs without the need to additionally access native element, that means many of the uses could remain unchanged but there are possible changes required - such as not needing an extra property to access the DOM element.
  • Componenets no longer accept alternative string union on all prop types (e.g boolean | string or number | string). Additionally, string union types (enum-like) are no longer case-insensitive.
  • Componenets no longer have non-functional name prop by default. The name prop only remains in igniteui-react components, mostly form inputs such as IgrInput or IgrCombo, where it has native functionality.
  • Component events are now on- prefixed.
    For example, Grid's rendered={handler} becomes onRendered={handler}
  • Component events emit a single standard CustomEvent argument instead of the 'sender' as first argument. Therefore, custom props like args.nativeElement are no longer available, but native event props all are. Types for event args are available as aliases for the specific custom event, so usage accessing detail will remain much the same:
    For example:
    public handleChange(sender: IgrRadio, evt: IgrRadioChangeEventArgs) { }
    becomes:
    public handleChange(evt: IgrRadioChangeEventArgs) { } which is equivalent to public handleChange(evt: CustomEvent<IgrRadioChangeEventArgsDetail>) { }
    With the new handler signature evt.detail should be mostly the same and evt.target should is the DOM element equivalent of the sender.
  • IgrButton clicked is removed, use the native onClick instead.
  • IgrInput inputOcurred is renamed to onInput similar to native event.

Base automatically changed from dpetev/bool-number-enums to vnext April 7, 2025 13:28
@mddifilippo89
Copy link
Contributor

mddifilippo89 commented Apr 8, 2025

@damyanpetev
can you update this with vnext once more and let me know if you want this merged before or after my pr
#750

mddifilippo89
mddifilippo89 previously approved these changes Apr 8, 2025
@damyanpetev
Copy link
Member Author

@damyanpetev can you update this with vnext once more and let me know if you want this merged before or after my pr #750

@mddifilippo89 Um, nether actually, I think :) There's a patch update underway and while this is the v19 update feature branch, currently it only contains the package update and none of the actual changes required (like #752, #753, #754 and more inc) to stabilize it. So it's not ready just yet, thus the Draft status.

As we discussed, I believe I've updated all samples, including the ones in your PR, so this should already contain most/all of your changes. You can try to re-target your PR to this branch to verify.

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.

2 participants