diff --git a/packages/charts/src/util/Utils.ts b/packages/charts/src/util/Utils.ts
index 05e996d3421..032062e9b1b 100644
--- a/packages/charts/src/util/Utils.ts
+++ b/packages/charts/src/util/Utils.ts
@@ -11,7 +11,7 @@ export const useMergedConfig = (x, y) => {
// this needs to be a function as we need the `this` of the chart;
export const formatAxisCallback = (formatter) =>
- function(value) {
+ function (value) {
// @ts-ignore
const currentDataset = this.chart.data.datasets[0];
return formatter(value, currentDataset);
diff --git a/packages/main/src/components/AnalyticalTable/AnalyticalTable.test.tsx b/packages/main/src/components/AnalyticalTable/AnalyticalTable.test.tsx
index ad70972d699..cad7e8a6af6 100644
--- a/packages/main/src/components/AnalyticalTable/AnalyticalTable.test.tsx
+++ b/packages/main/src/components/AnalyticalTable/AnalyticalTable.test.tsx
@@ -148,20 +148,14 @@ describe('AnalyticalTable', () => {
expect(wrapper.render()).toMatchSnapshot();
// test asc function inside the popover element
- let component = wrapper
- .find('ui5-li')
- .at(1)
- .instance();
+ let component = wrapper.find('ui5-li').at(1).instance();
// @ts-ignore
component.click();
expect(wrapper.render()).toMatchSnapshot();
// test desc function inside the popover element
- component = wrapper
- .find('ui5-li')
- .at(0)
- .instance();
+ component = wrapper.find('ui5-li').at(0).instance();
// @ts-ignore
component.click();
@@ -186,10 +180,7 @@ describe('AnalyticalTable', () => {
/>
);
- const colInst = wrapper
- .find('div[role="columnheader"]')
- .at(0)
- .instance();
+ const colInst = wrapper.find('div[role="columnheader"]').at(0).instance();
// @ts-ignore
expect(colInst.draggable).toBeDefined();
diff --git a/packages/main/src/components/AnalyticalTable/demo/demo.stories.tsx b/packages/main/src/components/AnalyticalTable/demo/demo.stories.tsx
index 9fe652413eb..21e206cf7f7 100644
--- a/packages/main/src/components/AnalyticalTable/demo/demo.stories.tsx
+++ b/packages/main/src/components/AnalyticalTable/demo/demo.stories.tsx
@@ -171,7 +171,7 @@ export const tableWithExtension = () => {
filterable={boolean('filterable', true)}
visibleRows={number('visibleRows', 15)}
groupable={boolean('groupable', true)}
- renderExtension={() =>
}
+ extension={
}
/>
);
};
diff --git a/packages/main/src/components/AnalyticalTable/demo/generateData.ts b/packages/main/src/components/AnalyticalTable/demo/generateData.ts
index 9325d5a7cc1..0d182dae15c 100644
--- a/packages/main/src/components/AnalyticalTable/demo/generateData.ts
+++ b/packages/main/src/components/AnalyticalTable/demo/generateData.ts
@@ -1,4 +1,4 @@
-import { ValueState } from "@ui5/webcomponents-react/lib/ValueState";
+import { ValueState } from '@ui5/webcomponents-react/lib/ValueState';
const getRandomArrayEntry = (array) => array[Math.floor(Math.random() * array.length)];
@@ -38,7 +38,9 @@ const newEntry = () => {
name: getRandomName(),
age: getRandomNumber(18, 65)
},
- status: [ValueState.None, ValueState.Information, ValueState.Success, ValueState.Warning, ValueState.Error][Math.floor(Math.random() * 4)]
+ status: [ValueState.None, ValueState.Information, ValueState.Success, ValueState.Warning, ValueState.Error][
+ Math.floor(Math.random() * 4)
+ ]
};
};
@@ -63,7 +65,9 @@ const makeEntry = () => ({
name: getRandomName(),
age: getRandomNumber(18, 65)
},
- status: [ValueState.None, ValueState.Information, ValueState.Success, ValueState.Warning, ValueState.Error][Math.floor(Math.random() * 4)]
+ status: [ValueState.None, ValueState.Information, ValueState.Success, ValueState.Warning, ValueState.Error][
+ Math.floor(Math.random() * 4)
+ ]
});
const generateData = (numEntries, isTree = false) => {
diff --git a/packages/main/src/components/AnalyticalTable/hooks/useDynamicColumnWidths.ts b/packages/main/src/components/AnalyticalTable/hooks/useDynamicColumnWidths.ts
index 8b224067b47..227dc1dd05f 100644
--- a/packages/main/src/components/AnalyticalTable/hooks/useDynamicColumnWidths.ts
+++ b/packages/main/src/components/AnalyticalTable/hooks/useDynamicColumnWidths.ts
@@ -18,7 +18,6 @@ const columnsDeps = (deps, { instance: { state, webComponentsReactProperties } }
];
const columns = (columns, { instance }) => {
-
if (!instance.state || !instance.rows) {
return columns;
}
diff --git a/packages/main/src/components/AnalyticalTable/index.tsx b/packages/main/src/components/AnalyticalTable/index.tsx
index 1af80498a85..48d9ed5364a 100644
--- a/packages/main/src/components/AnalyticalTable/index.tsx
+++ b/packages/main/src/components/AnalyticalTable/index.tsx
@@ -2,6 +2,7 @@ import { createComponentStyles } from '@ui5/webcomponents-react-base/lib/createC
import { StyleClassHelper } from '@ui5/webcomponents-react-base/lib/StyleClassHelper';
import { usePassThroughHtmlProps } from '@ui5/webcomponents-react-base/lib/usePassThroughHtmlProps';
import { enrichEventWithDetails } from '@ui5/webcomponents-react-base/lib/Utils';
+import { useDeprecateRenderMethods } from '@ui5/webcomponents-react-base/lib/hooks';
import { TableScaleWidthMode } from '@ui5/webcomponents-react/lib/TableScaleWidthMode';
import { TableSelectionBehavior } from '@ui5/webcomponents-react/lib/TableSelectionBehavior';
import { TableSelectionMode } from '@ui5/webcomponents-react/lib/TableSelectionMode';
@@ -71,6 +72,7 @@ export interface TableProps extends CommonProps {
* Extension section of the Table. If not set, no extension area will be rendered
*/
renderExtension?: () => ReactNode;
+ extension?: ReactNode;
// appearance
@@ -137,7 +139,6 @@ const AnalyticalTable: FC
= forwardRef((props: TableProps, ref: Ref<
style,
tooltip,
title,
- renderExtension,
loading,
groupBy,
selectionMode,
@@ -176,6 +177,7 @@ const AnalyticalTable: FC = forwardRef((props: TableProps, ref: Ref<
const [analyticalTableRef, reactWindowRef] = useTableScrollHandles(ref);
const tableRef: RefObject = useRef();
const resizeObserverInitialized = useRef(false);
+ const extension = useDeprecateRenderMethods(props, 'renderExtension', 'extension');
const getSubRows = useCallback((row) => row[subRowsKey] || [], [subRowsKey]);
@@ -257,7 +259,7 @@ const AnalyticalTable: FC = forwardRef((props: TableProps, ref: Ref<
useEffect(() => {
// @ts-ignore
const tableWidthObserver = new ResizeObserver(() => {
- if(resizeObserverInitialized.current) {
+ if (resizeObserverInitialized.current) {
updateTableClientWidth();
}
resizeObserverInitialized.current = true;
@@ -359,7 +361,7 @@ const AnalyticalTable: FC = forwardRef((props: TableProps, ref: Ref<
return (
{title &&
{title}}
- {typeof renderExtension === 'function' &&
{renderExtension()}
}
+ {extension &&
{extension}
}
{
{
test('Render all content', () => {
const wrapper = mount(
Content Left
}
- renderContentMiddle={() => Content Middle
}
- renderContentRight={() => Content Right
}
+ contentLeft={Content Left
}
+ contentMiddle={Content Middle
}
+ contentRight={Content Right
}
/>
);
expect(wrapper.render()).toMatchSnapshot();
@@ -29,11 +29,7 @@ describe('Bar', () => {
const text3 = 'Content Right';
const wrapper = mount(
- {text1}
}
- renderContentMiddle={() => {text2}
}
- renderContentRight={() => {text3}
}
- />
+ {text1}} contentMiddle={
{text2}
} contentRight={
{text3}
} />
);
expect(wrapper.text()).toContain(text1);
expect(wrapper.text()).toContain(text2);
diff --git a/packages/main/src/components/Bar/demo.stories.tsx b/packages/main/src/components/Bar/demo.stories.tsx
index 07f01116c78..5ab97e6a3db 100644
--- a/packages/main/src/components/Bar/demo.stories.tsx
+++ b/packages/main/src/components/Bar/demo.stories.tsx
@@ -8,9 +8,9 @@ export const defaultStory = () => {
return (
}
- renderContentMiddle={() => }
- renderContentRight={() => }
+ contentLeft={}
+ contentMiddle={}
+ contentRight={}
/>
);
};
diff --git a/packages/main/src/components/Bar/index.tsx b/packages/main/src/components/Bar/index.tsx
index 55a78597e1c..5fe8d7a7c10 100644
--- a/packages/main/src/components/Bar/index.tsx
+++ b/packages/main/src/components/Bar/index.tsx
@@ -1,6 +1,7 @@
import { StyleClassHelper } from '@ui5/webcomponents-react-base/lib/StyleClassHelper';
import { usePassThroughHtmlProps } from '@ui5/webcomponents-react-base/lib/usePassThroughHtmlProps';
-import React, { FC, forwardRef, Ref } from 'react';
+import { useDeprecateRenderMethods } from '@ui5/webcomponents-react-base/lib/hooks';
+import React, { FC, forwardRef, ReactNode, Ref } from 'react';
import { createComponentStyles } from '@ui5/webcomponents-react-base/lib/createComponentStyles';
import { CommonProps } from '../../interfaces/CommonProps';
import { BarDesign } from '../../lib/BarDesign';
@@ -10,6 +11,9 @@ export interface BarPropTypes extends CommonProps {
renderContentLeft?: () => JSX.Element;
renderContentMiddle?: () => JSX.Element;
renderContentRight?: () => JSX.Element;
+ contentLeft: ReactNode | ReactNode[];
+ contentMiddle: ReactNode | ReactNode[];
+ contentRight: ReactNode | ReactNode[];
design?: BarDesign;
}
@@ -19,7 +23,10 @@ const useStyles = createComponentStyles(styles, { name: 'Bar' });
* import { Bar } from '@ui5/webcomponents-react/lib/Bar';
*/
const Bar: FC = forwardRef((props: BarPropTypes, ref: Ref) => {
- const { renderContentLeft, renderContentMiddle, renderContentRight, className, style, tooltip, slot, design } = props;
+ const { className, style, tooltip, slot, design } = props;
+ const contentLeft = useDeprecateRenderMethods(props, 'renderContentLeft', 'contentLeft');
+ const contentMiddle = useDeprecateRenderMethods(props, 'renderContentMiddle', 'contentMiddle');
+ const contentRight = useDeprecateRenderMethods(props, 'renderContentRight', 'contentRight');
const classes = useStyles();
@@ -56,13 +63,13 @@ const Bar: FC = forwardRef((props: BarPropTypes, ref: Ref
- {renderContentLeft()}
+ {contentLeft}
-
{renderContentMiddle()}
+
{contentMiddle}
- {renderContentRight()}
+ {contentRight}
);
@@ -70,10 +77,7 @@ const Bar: FC
= forwardRef((props: BarPropTypes, ref: Ref null,
- renderContentMiddle: () => null,
- renderContentRight: () => null
+ design: BarDesign.Auto
};
export { Bar };
diff --git a/packages/main/src/components/FilterBar/FilterBar.test.tsx b/packages/main/src/components/FilterBar/FilterBar.test.tsx
index f3915fe93ee..a139d33cbff 100644
--- a/packages/main/src/components/FilterBar/FilterBar.test.tsx
+++ b/packages/main/src/components/FilterBar/FilterBar.test.tsx
@@ -17,13 +17,13 @@ const filterItems = [
{ text: 'Text 2', key: '2' }
];
-const renderVariants = () => ;
-const renderSearch = () => ;
+const variants = ;
+const search = ;
describe('FilterBar', () => {
it('Render without crashing', () => {
const wrapper = mount(
-
+
alert(e.getParameter('selectedItem').key)}
filterItems={filterItems}
@@ -47,7 +47,7 @@ describe('FilterBar', () => {
it('Hide Filter Bar', () => {
const wrapper = mount(
-
+
alert(e.getParameter('selectedItem').key)}
filterItems={filterItems}
@@ -76,17 +76,14 @@ describe('FilterBar', () => {
);
- const component = wrapper
- .find('ui5-button')
- .last()
- .instance() as any;
+ const component = wrapper.find('ui5-button').last().instance() as any;
component.fireEvent('click');
expect(wrapper.render()).toMatchSnapshot();
});
it('Select Filter Item', () => {
const wrapper = mount(
-
+
alert(e.getParameter('selectedItem').key)}
filterItems={filterItems}
@@ -119,10 +116,7 @@ describe('FilterBar', () => {
);
- wrapper
- .find('ui5-option')
- .at(1)
- .simulate('change');
+ wrapper.find('ui5-option').at(1).simulate('change');
expect(wrapper.render()).toMatchSnapshot();
});
diff --git a/packages/main/src/components/FilterBar/demo.stories.tsx b/packages/main/src/components/FilterBar/demo.stories.tsx
index 6fc8344756f..5e53869d639 100644
--- a/packages/main/src/components/FilterBar/demo.stories.tsx
+++ b/packages/main/src/components/FilterBar/demo.stories.tsx
@@ -19,26 +19,20 @@ const filterItems = [
{ text: 'Text 2', key: '2' }
];
-const renderVariants = () => {
- return (
-
- );
-};
-
-const renderSearch = () => {
- return ;
-};
-
export const renderStory = () => {
return (
-
+ }
+ variants={
+
+ }
+ >
JSX.Element;
renderSearch?: () => JSX.Element;
+ variants?: ReactNode;
+ search?: ReactNode;
children: ReactNode | ReactNodeArray;
}
@@ -22,8 +25,10 @@ const useStyles = createComponentStyles(styles, { name: 'FilterBar' });
* import { FilterBar } from '@ui5/webcomponents-react/lib/FilterBar';
*/
const FilterBar: FC = forwardRef((props: FilterBarPropTypes, ref: RefObject) => {
- const { children, renderVariants, renderSearch } = props as FilterBarInternalProps;
+ const { children } = props as FilterBarInternalProps;
const [showFilters, setShowFilters] = useState(true);
+ const search = useDeprecateRenderMethods(props, 'renderSearch', 'search');
+ const variants = useDeprecateRenderMethods(props, 'renderVariants', 'variants');
const classes = useStyles();
@@ -43,8 +48,8 @@ const FilterBar: FC = forwardRef((props: FilterBarPropTypes,
return (
- {renderVariants && renderVariants()}
- {renderSearch &&
{renderSearch()}
}
+ {variants}
+ {search &&
{search}
}