-
Notifications
You must be signed in to change notification settings - Fork 104
☂️ Road to 2.0 #3857
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
Comments
@Lukas742 @MarcusNotheis I see that this issue was placed on the 2024-Q3 road map - is that when we can expect the beta for compatibility with UI5WC 2.0? |
Hi @stephen-schmith, |
Hi @MarcusNotheis & @Lukas742,
I just saw these in passing, no pressure, maybe they've been made this way intentionally. Thanks! |
Thanks for your suggestion @ej612. Regarding the ValueState: In general the ValueState |
Hi @MarcusNotheis,
When I run the app the compiler is complaining:
Best regards |
Hi @softshipper v1 of ui5-webcomponents-react is not compatible with v2 of ui5-webcomponents. You should also see a peer dependencies error when installing the modules with the given versions. We're currently in the process of preparing our 2.0, if you want to checkout the changes already, you can use the pre-release version (2.0.0-rc.X - current latest pre release version: 2.0.0-rc.0). |
Hi @Lukas742 and @MarcusNotheis , Thanks! |
Hey @lenafi5cher, unfortunately things got a bit more complicated than expected, but we're now in the final tasks of completing the update. |
Version 2 has been released 🎉 Closing this issue. |
Uh oh!
There was an error while loading. Please reload this page.
This issue is a smorgasbord of topics we would like to include in our 2.0 release. It mainly contains features that require breaking changes.
Prerequisites
Release of UI5 Web Components 2.0
2.0 Summary ui5-webcomponents#8608
All breaking changes of UI5 Web Components will be applied to this repository as well, the list below only tracks changes to our own components.
General
feat(cli): create codemod for UI5 Web Components React v2 migration #5908
Extend common props to also includeRejected, because it's better to definedata-*
attributes. Currently these attributes are only supported when used as props inside tags (e.g.:<Label data-hello="hi" />
), but not when used as type for an object (e.g.:const props: LabelPropTypes = {"data-hello:"hi"}
)data-
props on App side.fix(TypeScript): include
data-*
attributes inCommonProps
interface #3855dangerouslySetInnerHTML
fromCommonProps
fix(CommonProps - TypeScript): removedangerouslySetInnerHTML
from types #6002role="application"
. We should take the same approach as@ui5/webcomponents
, i.e. the role="application" attribute for components should no longer be used, as application developers should be responsible for how the application behaves when using screen readers. - Only theActionSheet
implementsrole="application"
and since this is defined by the specs, we'll keep it)sapScrollBar
: Opt-out instead of opt-in. --> Make all elements wrapped inside theThemeProvider
use the custom scrollbar styles per default and only use the native scrollbar if the.sapUiNativeScrollbars
class is applied. (Maybe check if we still want to support thedata-native-scrollbar
attribute) In the course of this, remove both scrollbar style classes, as they'll be redundant then.Opt Out Possible via
.ui5-content-native-scrollbars
classic
toautomatic
in order to use the new JSX runtime. Our peer dependencies currently only support versions where the JSX runtime can already be used.fix: use new JSX transform in preparation for React 19 #5837
jestSetup
filechore: remove
jestSetup
#5906allkeydown
selection/click events on SPACE press withkeyup
event - only needs to be replaced for the AnalyticalTable, all other implementations are fine fix(AnalyticalTable): fire row select & click events onkeyup
instead ofkeydown
#6013Check usage of--> LaterenrichEventWithDetails
function. It should only be used when based on a real event. We should not use it to create artificial events with an actual target. Fix type errors.enrichEventWithDetails
behavior to also include "native" detail (e.g. when using theclick
event) refactor(enrichEventWithDetails): pass throughdetail
, improve types #5984@ui5/webcomponents-react
spacing
utils and outline how to achieve the same behavior with common-css. (Up for discussion- accepted)refactor: remove all
spacing
variables #6009react-jss
chore: remove
react-jss
#5907refactor(enums): harmonize enum names #5970
MessageBoxActions
-->MessageBoxAction
MessageBoxTypes
-->MessageBoxType
Themes
-->Theme
TypeScript
ReactElement
should be replaced byReactNode
for public types. See this PR for more details.Components
ActionSheet
PR: refactor(ActionSheet): api alignment #5956
showCancelButton
withhideCancelButton
and remove defaultPropAnalyticalCard
PR: chore: remove deprecated
AnalyticalCard
component #5887Remove deprecated component.
AnalyticalTable
refactor(AnalyticalTable): remove deprecated props & enums #6021:
TableScaleWidthMode
,TableSelectionBehavior
,TableSelectionMode
,TableVisibleRowCountMode
enumscanReorder
column optionalwaysShowSubComponent
propsortable
should not have a value per default (currently:true
)fix(AnalyticalTable): don't wrap custom header content in
Text
component #6022Text
component. (see here)PR: refactor(AnalyticalTable): remove
selectedFlatRows
& addrowsById
toonRowSelect
#6255detail
property of theonRowSelect
event, to not returnselectedFlatRows
as array and use an object (e.g.selectedFlatRowsById
) instead, as currently we need to iterate over all rows the table renders, which can impact performance especially for huge datasets.Loader
DynamicPage
PR: feat(DynamicPage & ObjectPage): use ui5wc
DynamicPage
& renameObjectPage
components #5939FilterBar
PR: refactor(FilterBar): remove reference copying of filter/input elements #6214
The FilterBar copies lot of element references which is uncommon in React and is also redundant in many cases if the component is fully controlled. We should reduce or even completely omit copying of DOM references and create examples for complex scenarios.
FilterGroupItem
PR: refactor(FilterGroupItem): api alignment #6012
visible
withhidden
and remove defaultPropvisibleInFilterBar
withhideInFilterBar
(or similar name)Form
PR: feat(Form): replace with UI5 Web Component #5925
Replace with UI5 Web Component
MessageBox
PR: fix(MessageBox - TypeScript): adjust
onClose
type #5975makeonClose
a pure custom event (no target, etc.) and allowonAfterClose
for consumptiononClose
event of the dialogLoader
PR: feat: move
Loader
tocompat
package & replace withBusyIndicator
#6020BusyIndicator
ObjectPage
image should be rendered in title and content section (different sizes see here) and then be removedheaderTitle
:-->ReactElement
ReactElement<DynamicPageTitlePropTypes>
headerContent
:-->ReactElement
ReactElement<DynamicPageHeaderPropTypes>
image
:-->string | ReactElement
string | ReactElement<AvatarPropTypes>
ObjectPageSection
PR: refactor: make titleText required for object page sections #6014
titleTextUppercase
titleText
required --> it makes no sense omittingtitleText
as then an empty tab would be renderedsetid
internally - Note: probably not possible without breaking changes some events as we pass theid
of the selected section to some, so developers can for example identify which section are selectedObjectPageSubSection
PR: refactor: make titleText required for object page sections #6014
setid
internally - see note of ObjectPageSectionObjectStatus
PR: fix(ObjectStatus): remove
HTMLDivElement
fromonClick
type #6011onClick
: removeHTMLDivElement
from typeText
PR: feat(Text): replace with UI5 Web Component #5988
Charts
ChartContainer
PR: 🛠️
Replaceheight: '400px'
withheight: '100%'
MicroBarChart
PR: chore(charts): remove MicroBarChart #6249
The text was updated successfully, but these errors were encountered: