ods-component-lib 1.18.145 → 1.18.147
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/antd/form/OdsBasicForm.d.ts +18 -0
- package/dist/components/antd/icon/OdsIcon.d.ts +10 -0
- package/dist/components/antd/modal/OdsAdvanceModal.d.ts +7 -0
- package/dist/components/antd/select/OdsCustomMultiSelect.d.ts +7 -0
- package/dist/components/antd/select/OdsMultiSelect.d.ts +9 -0
- package/dist/components/custom/OdsLogin.d.ts +8 -0
- package/dist/components/devextreme/DxDataPopupForm.d.ts +3 -0
- package/dist/components/devextreme/DynamicIcon.d.ts +5 -0
- package/dist/components/devextreme/OdsDataGridNew.d.ts +56 -0
- package/dist/components/devextreme/OdsInlineEditDataGrid/handlers/ContentHandlers.d.ts +14 -0
- package/dist/components/devextreme/OdsInlineEditDataGrid/handlers/EditorPreparedHandlers.d.ts +7 -0
- package/dist/components/devextreme/OdsInlineEditDataGrid/handlers/OnContentReadyHandler.d.ts +1 -2
- package/dist/components/devextreme/OdsInlineEditDataGrid/handlers/OnExportingHandlers.d.ts +19 -0
- package/dist/components/devextreme/OdsInlineEditDataGrid/handlers/OptionHandlers.d.ts +7 -0
- package/dist/components/devextreme/OdsInlineEditDataGrid/handlers/SummaryHandlers.d.ts +21 -0
- package/dist/components/devextreme/OdsInlineEditDataGrid/partials/ActionCellRender.d.ts +15 -0
- package/dist/components/devextreme/OdsInlineEditDataGrid/partials/EditingPartial.d.ts +9 -0
- package/dist/components/devextreme/OdsInlineEditDataGrid/partials/PageTitle.d.ts +8 -0
- package/dist/components/devextreme/OdsInlineEditDataGrid/utils.d.ts +19 -0
- package/dist/components/devextreme/OdsProfDataGrid.d.ts +3 -0
- package/dist/components/devextreme/treeview/DxTreeView.d.ts +3 -0
- package/dist/index.js +40 -105
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +40 -105
- package/dist/index.modern.js.map +1 -1
- package/dist/stories/OdsAdvanceModal/OdsAdvanceModal.stories.d.ts +42 -0
- package/dist/stories/OdsAdvanceModal/Samples/BasicOdsAdvanceModal.sample.d.ts +8 -0
- package/dist/stories/OdsCustomMultiSelect/OdsCustomMultiSelect.stories.d.ts +9 -0
- package/dist/stories/OdsCustomMultiSelect/Samples/Basic.Sample.d.ts +1 -0
- package/dist/stories/OdsCustomMultiSelect/Samples/ModeMultiple.Sample.d.ts +1 -0
- package/dist/stories/OdsModal/Samples/OdsModal.Sample.d.ts +1 -0
- package/dist/stories/OdsTimePicker/Samples/TimeRangePicker.d.ts +2 -0
- package/dist/utils/DynamicIcon.d.ts +5 -0
- package/package.json +1 -1
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { FormProps, ButtonProps } from 'antd';
|
|
3
|
+
export interface IFormItemRuleProps {
|
|
4
|
+
required?: boolean;
|
|
5
|
+
message?: string;
|
|
6
|
+
}
|
|
7
|
+
export interface IFormItemProps {
|
|
8
|
+
label?: string;
|
|
9
|
+
name?: string;
|
|
10
|
+
formItemType: string;
|
|
11
|
+
rules?: IFormItemRuleProps[];
|
|
12
|
+
}
|
|
13
|
+
export interface IFormProps extends FormProps {
|
|
14
|
+
formItems: IFormItemProps[];
|
|
15
|
+
formButtons: ButtonProps[];
|
|
16
|
+
}
|
|
17
|
+
declare function OdsBasicForm(props: IFormProps): React.JSX.Element;
|
|
18
|
+
export default OdsBasicForm;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { IconBaseProps } from "@ant-design/icons/lib/components/Icon";
|
|
2
|
+
import React from "react";
|
|
3
|
+
export interface IconProps extends IconBaseProps {
|
|
4
|
+
type: string;
|
|
5
|
+
twoToneColor?: string;
|
|
6
|
+
iconComponent?: string;
|
|
7
|
+
iconSVCName?: string;
|
|
8
|
+
}
|
|
9
|
+
declare function OdsIcon(props: IconProps): React.JSX.Element;
|
|
10
|
+
export default OdsIcon;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { SelectProps } from "antd";
|
|
3
|
+
import { IOdsSelectOption } from "./OdsSelect.styled";
|
|
4
|
+
export interface OdsMultiSelectProps extends SelectProps {
|
|
5
|
+
selectAllText?: string | undefined;
|
|
6
|
+
dataSource: IOdsSelectOption[];
|
|
7
|
+
}
|
|
8
|
+
declare const OdsMultiSelect: (props: OdsMultiSelectProps) => React.JSX.Element;
|
|
9
|
+
export default OdsMultiSelect;
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { IDataGridOptions, IEditingProps, ISelectionProps, IButtonProps } from 'devextreme-react/data-grid';
|
|
3
|
+
import { ButtonType } from "antd/es/button/buttonHelpers";
|
|
4
|
+
interface IButtonGroup extends IButtonProps {
|
|
5
|
+
type?: ButtonType;
|
|
6
|
+
label?: string;
|
|
7
|
+
onclick?: React.MouseEventHandler<HTMLElement>;
|
|
8
|
+
actionPermission?: boolean;
|
|
9
|
+
}
|
|
10
|
+
interface IEditingoptions extends IEditingProps {
|
|
11
|
+
formItems?: any[];
|
|
12
|
+
title?: string;
|
|
13
|
+
}
|
|
14
|
+
interface ISelectOptions extends ISelectionProps {
|
|
15
|
+
selectEnable: boolean;
|
|
16
|
+
}
|
|
17
|
+
interface IOdsDataGridProps extends IDataGridOptions {
|
|
18
|
+
actionButtonGroup?: IButtonGroup[];
|
|
19
|
+
toolbarButtonGroup?: IButtonGroup[];
|
|
20
|
+
exportFileName?: string;
|
|
21
|
+
summaryTotalColumnName?: string;
|
|
22
|
+
storeState?: boolean;
|
|
23
|
+
summaryTotalDataCount?: number;
|
|
24
|
+
summaryTotalDataDisplayLabel?: string;
|
|
25
|
+
summaryTotalPagesize?: number;
|
|
26
|
+
editHintLabel?: string;
|
|
27
|
+
editButtonClick?: any;
|
|
28
|
+
deleteButtonClick?: any;
|
|
29
|
+
pageTitle?: string;
|
|
30
|
+
pageSize?: number;
|
|
31
|
+
pagingEnable?: boolean;
|
|
32
|
+
searchEnable?: boolean;
|
|
33
|
+
filterEnable?: boolean;
|
|
34
|
+
headerFilterEnable?: boolean;
|
|
35
|
+
columnChooserPositionDisabled?: boolean;
|
|
36
|
+
editEnable?: boolean;
|
|
37
|
+
popupTitle?: string;
|
|
38
|
+
scroll?: any;
|
|
39
|
+
exportEnable?: boolean;
|
|
40
|
+
customPopup?: boolean;
|
|
41
|
+
onExportingCustom?: any;
|
|
42
|
+
filterEnabledShow?: boolean;
|
|
43
|
+
scrolUseNative?: boolean;
|
|
44
|
+
formItems?: any[];
|
|
45
|
+
hintForDeleteButton?: string;
|
|
46
|
+
hintForEditButton?: string;
|
|
47
|
+
exportFormats?: string[];
|
|
48
|
+
actionPermission?: boolean;
|
|
49
|
+
columns: any[];
|
|
50
|
+
actionColumnEnable?: boolean;
|
|
51
|
+
edit?: IEditingoptions;
|
|
52
|
+
selectOptions?: ISelectOptions;
|
|
53
|
+
actionColumnCaption?: string;
|
|
54
|
+
}
|
|
55
|
+
declare function OdsDataGridNew(props: IOdsDataGridProps): React.JSX.Element;
|
|
56
|
+
export default OdsDataGridNew;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ContentReadyEvent } from "devextreme/ui/data_grid";
|
|
2
|
+
import { IColumnConfig } from "../types";
|
|
3
|
+
/**
|
|
4
|
+
* Custom hook to handle content ready events for the data grid.
|
|
5
|
+
* @param {React.MutableRefObject<any>} lastPageIndexRef - Reference to the last page index.
|
|
6
|
+
* @param {boolean} contentReady - Boolean indicating if the content is ready.
|
|
7
|
+
* @param {Function} setRowCount - Function to set the row count state
|
|
8
|
+
* @param {Function} setContentReady - Function to set the content ready state.
|
|
9
|
+
* @param {Function} setCurrentPage - Function to set the current page state.
|
|
10
|
+
* @param {Function} setCurrentPageSize - Function to set the current page size state.
|
|
11
|
+
* @param {Function} [callback] - Optional callback function.
|
|
12
|
+
* @returns {(e: ContentReadyEvent<any, any>) => void} handleContentReady - Handler for content ready event.
|
|
13
|
+
*/
|
|
14
|
+
export declare const useContentHandlers: (lastPageIndexRef: React.MutableRefObject<any>, contentReady: boolean, columns: IColumnConfig[], setRowCount: Function, setContentReady: Function, setCurrentPage: Function, setCurrentPageSize: Function, setHeaderFilterData: Function, callback?: Function) => (e: ContentReadyEvent<any, any>) => void;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Custom hook that returns a callback function to handle the "editorPrepared" event of a DevExtreme component.
|
|
3
|
+
* This callback function is responsible for customizing the editor's behavior based on specific conditions.
|
|
4
|
+
*
|
|
5
|
+
* @returns {Function} The callback function to handle the "editorPrepared" event.
|
|
6
|
+
*/
|
|
7
|
+
export declare const useEditorPreparedHandlers: () => (e: any) => void;
|
package/dist/components/devextreme/OdsInlineEditDataGrid/handlers/OnContentReadyHandler.d.ts
CHANGED
|
@@ -11,8 +11,7 @@ import { IColumnOptions } from "../types";
|
|
|
11
11
|
* @param {Function} setUpdateTrigger - Function to set the update trigger.
|
|
12
12
|
* @param {Function} setCurrentPage - Function to set the current page.
|
|
13
13
|
* @param {Function} setCurrentPageSize - Function to set the current page size.
|
|
14
|
-
* @param {Function} setHeaderFilterData - Function to set the header filter data.
|
|
15
14
|
* @param {Function} [callback] - Optional callback function.
|
|
16
15
|
* @returns {(e: ContentReadyEvent<any, any>) => void} handleContentReady - Handler for content ready event.
|
|
17
16
|
*/
|
|
18
|
-
export declare const useOnContentReadyHandler: (columns: IColumnOptions[], lastPageIndexRef: MutableRefObject<number>, filterApplied: boolean, totalFilteredCount: MutableRefObject<number>, totalUnfilteredCount: MutableRefObject<number>, setUpdateTrigger: Function, setCurrentPage: Function, setCurrentPageSize: Function,
|
|
17
|
+
export declare const useOnContentReadyHandler: (columns: IColumnOptions[], lastPageIndexRef: MutableRefObject<number>, filterApplied: boolean, totalFilteredCount: MutableRefObject<number>, totalUnfilteredCount: MutableRefObject<number>, setUpdateTrigger: Function, setCurrentPage: Function, setCurrentPageSize: Function, callback: Function) => (e: ContentReadyEvent<any, any>) => void;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
interface IOnExportingProps {
|
|
2
|
+
gridComponent: any;
|
|
3
|
+
baseFileName?: string;
|
|
4
|
+
selectedText?: string;
|
|
5
|
+
getSummary: () => string;
|
|
6
|
+
selectedRowsOnly: boolean;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Handles the exporting of data from the grid component.
|
|
10
|
+
*
|
|
11
|
+
* @param {IOnExportingProps} params - The parameters for exporting the data.
|
|
12
|
+
* @param {React.RefObject<Grid>} params.gridComponent - The reference to the grid component.
|
|
13
|
+
* @param {string} params.baseFileName - The base file name for the exported file.
|
|
14
|
+
* @param {string} params.selectedText - The text to be displayed for selected rows.
|
|
15
|
+
* @param {Function} params.getSummary - The function to get the summary of the exported data.
|
|
16
|
+
* @param {boolean} params.selectedRowsOnly - Indicates whether to export only selected rows.
|
|
17
|
+
*/
|
|
18
|
+
export declare const onExporting: ({ gridComponent, baseFileName, selectedText, getSummary, selectedRowsOnly, }: IOnExportingProps) => void;
|
|
19
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Custom hook to handle option change events for the data grid.
|
|
3
|
+
* @param {Object} dataGridRef - The dataGridRef property passed to the hook.
|
|
4
|
+
* @param {Function} setFilterApplied - Function to set the filter applied state.
|
|
5
|
+
* @returns {Function} - Handler function for option changed event.
|
|
6
|
+
*/
|
|
7
|
+
export declare const useOptionHandlers: (dataGridRef: any, setFilterApplied: any) => (e: any) => void;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { ISummaryRowOptions } from "../types";
|
|
2
|
+
interface IUseSummaryHandlersProps {
|
|
3
|
+
customSummary?: ISummaryRowOptions;
|
|
4
|
+
totalRecordCount: number;
|
|
5
|
+
currentPageSize: number;
|
|
6
|
+
currentPage: number;
|
|
7
|
+
filterApplied: boolean;
|
|
8
|
+
rowCount: number;
|
|
9
|
+
filteredRowCount: number;
|
|
10
|
+
isServerSide?: boolean;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Custom hook that provides summary handlers for a data grid.
|
|
14
|
+
*
|
|
15
|
+
* @param {IUseSummaryHandlersProps} props - The props object containing necessary parameters.
|
|
16
|
+
* @returns {Object} - An object containing the renderTotal function.
|
|
17
|
+
*/
|
|
18
|
+
export declare const useSummaryHandlers: ({ customSummary, totalRecordCount, currentPageSize, currentPage, filterApplied, rowCount, filteredRowCount, }: IUseSummaryHandlersProps) => {
|
|
19
|
+
renderTotal: () => string | null;
|
|
20
|
+
};
|
|
21
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { FC } from "react";
|
|
2
|
+
import { IVirtualDataGridProps } from "../types";
|
|
3
|
+
interface ActionCellRenderProps {
|
|
4
|
+
cellData: any;
|
|
5
|
+
actionButtons: IVirtualDataGridProps["actionButtonGroup"];
|
|
6
|
+
edit?: IVirtualDataGridProps["edit"];
|
|
7
|
+
actionButtonGroup?: IVirtualDataGridProps["actionButtonGroup"];
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Renders the action buttons for a cell in the OdsInlineEditDataGrid component.
|
|
11
|
+
* @param {ActionCellRenderProps} props - The props for the ActionCellRender component.
|
|
12
|
+
* @returns {ReactNode} - The rendered action buttons.
|
|
13
|
+
*/
|
|
14
|
+
declare const ActionCellRender: FC<ActionCellRenderProps>;
|
|
15
|
+
export default ActionCellRender;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { IEditingOptions } from "../types";
|
|
3
|
+
/**
|
|
4
|
+
* Component that handles editing functionalities within the data grid.
|
|
5
|
+
* @param {IEditingOptions} props - The properties passed to the component.
|
|
6
|
+
* @returns {JSX.Element} - The JSX element representing the editing handlers.
|
|
7
|
+
*/
|
|
8
|
+
declare const EditingPartial: React.FC<IEditingOptions>;
|
|
9
|
+
export default EditingPartial;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { IToolbarButton } from "../types";
|
|
3
|
+
interface PageTitleAndToolbarProps {
|
|
4
|
+
pageTitle?: string;
|
|
5
|
+
toolbarButtonGroup?: IToolbarButton[];
|
|
6
|
+
}
|
|
7
|
+
declare const MemoizedPageTitleAndToolbar: React.NamedExoticComponent<PageTitleAndToolbarProps>;
|
|
8
|
+
export default MemoizedPageTitleAndToolbar;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
interface IConcatFilteredLabelProps {
|
|
2
|
+
result: string;
|
|
3
|
+
totalLoaded: number;
|
|
4
|
+
filteredRowCount: number;
|
|
5
|
+
filterApplied: boolean;
|
|
6
|
+
summaryFilteredDataLabel: string;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Concatenates the filtered label with the result string.
|
|
10
|
+
*
|
|
11
|
+
* @param {IConcatFilteredLabelProps} props - The object containing the necessary properties.
|
|
12
|
+
* @returns {string} - The concatenated result string.
|
|
13
|
+
*/
|
|
14
|
+
export declare const concatFilteredLabel: ({ result, totalLoaded, filteredRowCount, filterApplied, summaryFilteredDataLabel, }: IConcatFilteredLabelProps) => string;
|
|
15
|
+
export {};
|
|
16
|
+
/**
|
|
17
|
+
* This file contains utility functions related to the OdsInlineEditDataGrid component.
|
|
18
|
+
* These utility functions are used for handling filtering and data manipulation.
|
|
19
|
+
*/
|
package/dist/index.js
CHANGED
|
@@ -35022,7 +35022,7 @@ var OdsServerSideDatagrid = function OdsServerSideDatagrid(props) {
|
|
|
35022
35022
|
var renderTotal = React.useCallback(function () {
|
|
35023
35023
|
var _props$customSummary, _props$customSummary2, _props$customSummary3, _props$customSummary4;
|
|
35024
35024
|
var totalLoaded = filterApplied ? totalFilteredCount.current : totalUnfilteredCount.current;
|
|
35025
|
-
var loadedPage = currentPage
|
|
35025
|
+
var loadedPage = currentPage;
|
|
35026
35026
|
var totalRecords = props.totalRecordCount;
|
|
35027
35027
|
var totalPageCount = Math.ceil(totalRecords / currentPageSize);
|
|
35028
35028
|
if (totalLoaded === 0 || totalLoaded === -1) {
|
|
@@ -35033,12 +35033,12 @@ var OdsServerSideDatagrid = function OdsServerSideDatagrid(props) {
|
|
|
35033
35033
|
var result = "" + filteredDisplayText + loadedDisplayText + totalRecords + " " + ((_props$customSummary3 = props.customSummary) === null || _props$customSummary3 === void 0 ? void 0 : _props$customSummary3.summaryTotalDataLabel);
|
|
35034
35034
|
result += " - " + ((_props$customSummary4 = props.customSummary) === null || _props$customSummary4 === void 0 ? void 0 : _props$customSummary4.summaryTotalPageCountLabel) + " " + loadedPage + " / " + totalPageCount;
|
|
35035
35035
|
return result;
|
|
35036
|
-
}, [currentPage, currentPageSize, filterApplied, props.customSummary, props.totalRecordCount, totalUnfilteredCount]);
|
|
35036
|
+
}, [currentPage, currentPageSize, filterApplied, props.customSummary, props.totalRecordCount, totalUnfilteredCount, props.dataSource]);
|
|
35037
35037
|
var handleContentReady = React.useCallback(function (e) {
|
|
35038
35038
|
var _dataGridInstance$get;
|
|
35039
35039
|
var dataGridInstance = e.component;
|
|
35040
|
-
var currentPageIndex = dataGridInstance.
|
|
35041
|
-
var currentTotalCount = dataGridInstance.totalCount();
|
|
35040
|
+
var currentPageIndex = dataGridInstance.pageCount();
|
|
35041
|
+
var currentTotalCount = currentPageIndex == 0 ? 50 : dataGridInstance.totalCount();
|
|
35042
35042
|
var newData = dataGridInstance === null || dataGridInstance === void 0 ? void 0 : (_dataGridInstance$get = dataGridInstance.getDataSource()) === null || _dataGridInstance$get === void 0 ? void 0 : _dataGridInstance$get.items();
|
|
35043
35043
|
if (lastPageIndexRef.current !== currentPageIndex && newData && newData.length > 0) {
|
|
35044
35044
|
setHeaderFilterData(function (prevData) {
|
|
@@ -35070,6 +35070,12 @@ var OdsServerSideDatagrid = function OdsServerSideDatagrid(props) {
|
|
|
35070
35070
|
setCurrentPage(currentPageIndex);
|
|
35071
35071
|
setCurrentPageSize(dataGridInstance.pageSize());
|
|
35072
35072
|
rowCount.current = currentTotalCount;
|
|
35073
|
+
setUpdateTrigger(function (prev) {
|
|
35074
|
+
return !prev;
|
|
35075
|
+
});
|
|
35076
|
+
lastPageIndexRef.current = currentPageIndex;
|
|
35077
|
+
}
|
|
35078
|
+
if (currentTotalCount > 0) {
|
|
35073
35079
|
if (filterApplied) {
|
|
35074
35080
|
totalFilteredCount.current = currentTotalCount;
|
|
35075
35081
|
} else {
|
|
@@ -35078,10 +35084,6 @@ var OdsServerSideDatagrid = function OdsServerSideDatagrid(props) {
|
|
|
35078
35084
|
if (!filterApplied && totalFilteredCount.current === 0) {
|
|
35079
35085
|
totalFilteredCount.current = totalUnfilteredCount.current;
|
|
35080
35086
|
}
|
|
35081
|
-
setUpdateTrigger(function (prev) {
|
|
35082
|
-
return !prev;
|
|
35083
|
-
});
|
|
35084
|
-
lastPageIndexRef.current = currentPageIndex;
|
|
35085
35087
|
}
|
|
35086
35088
|
}, [props.columns, filterApplied]);
|
|
35087
35089
|
var handleOptionChanged = React.useCallback(function (e) {
|
|
@@ -35094,6 +35096,7 @@ var OdsServerSideDatagrid = function OdsServerSideDatagrid(props) {
|
|
|
35094
35096
|
};
|
|
35095
35097
|
if (e.fullName.includes("sortOrder")) {
|
|
35096
35098
|
dataGrid.getScrollable().scrollTo(0);
|
|
35099
|
+
setHeaderFilterData([]);
|
|
35097
35100
|
}
|
|
35098
35101
|
if (e.fullName.includes("filterValue") || e.fullName.includes("filter") || e.fullName === "searchPanel.text") {
|
|
35099
35102
|
var active = updateFilterStatus();
|
|
@@ -35343,7 +35346,8 @@ var OdsServerSideDatagrid = function OdsServerSideDatagrid(props) {
|
|
|
35343
35346
|
onToolbarPreparing: props.onToolbarPreparing,
|
|
35344
35347
|
ref: props.dataGridRef
|
|
35345
35348
|
}), React__default.createElement(DataGrid.Scrolling, {
|
|
35346
|
-
mode: "infinite"
|
|
35349
|
+
mode: "infinite",
|
|
35350
|
+
preloadEnabled: true
|
|
35347
35351
|
}), React__default.createElement(DataGrid.Paging, {
|
|
35348
35352
|
enabled: true,
|
|
35349
35353
|
defaultPageSize: props.pageSize
|
|
@@ -35367,7 +35371,6 @@ var OdsServerSideDatagrid = function OdsServerSideDatagrid(props) {
|
|
|
35367
35371
|
value: false
|
|
35368
35372
|
}]
|
|
35369
35373
|
}), React__default.createElement(DataGrid.HeaderFilter, {
|
|
35370
|
-
allowSearch: true,
|
|
35371
35374
|
dataSource: [].concat(filterOptions[col.dataField] || [])
|
|
35372
35375
|
}), col.multiLevelColumns && col.multiLevelColumns.map(function (multiLevelColItem) {
|
|
35373
35376
|
return React__default.createElement(DataGrid.Column, {
|
|
@@ -35511,7 +35514,7 @@ var useOnActionCellRenderHandler = function useOnActionCellRenderHandler(visible
|
|
|
35511
35514
|
return onActionCellRender;
|
|
35512
35515
|
};
|
|
35513
35516
|
|
|
35514
|
-
var useOnContentReadyHandler = function useOnContentReadyHandler(columns, lastPageIndexRef, filterApplied, totalFilteredCount, totalUnfilteredCount, setUpdateTrigger, setCurrentPage, setCurrentPageSize,
|
|
35517
|
+
var useOnContentReadyHandler = function useOnContentReadyHandler(columns, lastPageIndexRef, filterApplied, totalFilteredCount, totalUnfilteredCount, setUpdateTrigger, setCurrentPage, setCurrentPageSize, callback) {
|
|
35515
35518
|
var onContentReady = React.useCallback(function (e) {
|
|
35516
35519
|
var _dataGridInstance$get;
|
|
35517
35520
|
var dataGridInstance = e.component;
|
|
@@ -35519,32 +35522,6 @@ var useOnContentReadyHandler = function useOnContentReadyHandler(columns, lastPa
|
|
|
35519
35522
|
var currentTotalCount = dataGridInstance.totalCount();
|
|
35520
35523
|
var newData = dataGridInstance === null || dataGridInstance === void 0 ? void 0 : (_dataGridInstance$get = dataGridInstance.getDataSource()) === null || _dataGridInstance$get === void 0 ? void 0 : _dataGridInstance$get.items();
|
|
35521
35524
|
if (lastPageIndexRef.current !== currentPageIndex && newData && newData.length > 0) {
|
|
35522
|
-
setHeaderFilterData(function (prevData) {
|
|
35523
|
-
var uniqueValuesByColumn = {};
|
|
35524
|
-
columns.forEach(function (col) {
|
|
35525
|
-
uniqueValuesByColumn[col.dataField] = new Set(prevData.map(function (item) {
|
|
35526
|
-
return item[col.dataField];
|
|
35527
|
-
}).filter(function (val) {
|
|
35528
|
-
return val !== null && val !== "";
|
|
35529
|
-
}));
|
|
35530
|
-
});
|
|
35531
|
-
var newItems = [];
|
|
35532
|
-
newData.forEach(function (item) {
|
|
35533
|
-
var addItem = {};
|
|
35534
|
-
columns.forEach(function (col) {
|
|
35535
|
-
var _item$col$dataField;
|
|
35536
|
-
var colValue = (_item$col$dataField = item[col.dataField]) === null || _item$col$dataField === void 0 ? void 0 : _item$col$dataField.toString();
|
|
35537
|
-
if (colValue && !uniqueValuesByColumn[col.dataField].has(colValue)) {
|
|
35538
|
-
uniqueValuesByColumn[col.dataField].add(colValue);
|
|
35539
|
-
addItem[col.dataField] = colValue;
|
|
35540
|
-
}
|
|
35541
|
-
});
|
|
35542
|
-
if (Object.keys(addItem).length > 0) {
|
|
35543
|
-
newItems.push(addItem);
|
|
35544
|
-
}
|
|
35545
|
-
});
|
|
35546
|
-
return [].concat(prevData, newItems);
|
|
35547
|
-
});
|
|
35548
35525
|
setCurrentPage(currentPageIndex);
|
|
35549
35526
|
setCurrentPageSize(dataGridInstance.pageSize());
|
|
35550
35527
|
if (filterApplied) {
|
|
@@ -35696,7 +35673,7 @@ var PageTitleAndToolbar = function PageTitleAndToolbar(_ref) {
|
|
|
35696
35673
|
};
|
|
35697
35674
|
var MemoizedPageTitleAndToolbar = React__default.memo(PageTitleAndToolbar);
|
|
35698
35675
|
|
|
35699
|
-
var _excluded$5 = ["dataGridRef", "actionColumnEnable", "actionButtonGroup", "gridColumns", "columnResizingMode", "customSummary", "dataSource", "editProps", "exportProps", "isFilterPanel", "isFilterRow", "pageTitle", "pagerProps", "pageSize", "scrollingProps", "sortingProps", "toolbarButtonGroup", "totalRecordCount", "width", "height", "className", "onCellClick", "onContentReady", "onEditorPrepared", "onOptionChanged", "onExporting"];
|
|
35676
|
+
var _excluded$5 = ["dataGridRef", "actionColumnEnable", "actionButtonGroup", "gridColumns", "columnResizingMode", "customSummary", "dataSource", "editProps", "exportProps", "headerFilter", "isFilterPanel", "isFilterRow", "pageTitle", "pagerProps", "pageSize", "scrollingProps", "sortingProps", "toolbarButtonGroup", "totalRecordCount", "width", "height", "className", "onCellClick", "onContentReady", "onEditorPrepared", "onOptionChanged", "onExporting"];
|
|
35700
35677
|
var DefaultDataGridOptions = {
|
|
35701
35678
|
allowColumnReordering: true,
|
|
35702
35679
|
allowColumnResizing: true,
|
|
@@ -35720,6 +35697,7 @@ var OdsInlineEditDataGrid = function OdsInlineEditDataGrid(props) {
|
|
|
35720
35697
|
dataSourceFromProps = props.dataSource,
|
|
35721
35698
|
editPropsFromProps = props.editProps,
|
|
35722
35699
|
exportPropsFromProps = props.exportProps,
|
|
35700
|
+
headerFilterFromProps = props.headerFilter,
|
|
35723
35701
|
isFilterPanelFromProps = props.isFilterPanel,
|
|
35724
35702
|
isFilterRowFromProps = props.isFilterRow,
|
|
35725
35703
|
pageTitleFromProps = props.pageTitle,
|
|
@@ -35744,22 +35722,16 @@ var OdsInlineEditDataGrid = function OdsInlineEditDataGrid(props) {
|
|
|
35744
35722
|
var _useState2 = React.useState(pageSizeFromProps != null ? pageSizeFromProps : 50),
|
|
35745
35723
|
currentPageSize = _useState2[0],
|
|
35746
35724
|
setCurrentPageSize = _useState2[1];
|
|
35747
|
-
var _useState3 = React.useState(
|
|
35748
|
-
|
|
35749
|
-
|
|
35725
|
+
var _useState3 = React.useState(false),
|
|
35726
|
+
filterApplied = _useState3[0],
|
|
35727
|
+
setFilterApplied = _useState3[1];
|
|
35750
35728
|
var _useState4 = React.useState(false),
|
|
35751
|
-
|
|
35752
|
-
|
|
35753
|
-
var _useState5 = React.useState([]),
|
|
35754
|
-
headerFilterData = _useState5[0],
|
|
35755
|
-
setHeaderFilterData = _useState5[1];
|
|
35756
|
-
var _useState6 = React.useState(false),
|
|
35757
|
-
updateTrigger = _useState6[0],
|
|
35758
|
-
setUpdateTrigger = _useState6[1];
|
|
35729
|
+
updateTrigger = _useState4[0],
|
|
35730
|
+
setUpdateTrigger = _useState4[1];
|
|
35759
35731
|
var lastPageIndexRef = React.useRef(null);
|
|
35760
35732
|
var totalUnfilteredCount = React.useRef(0);
|
|
35761
35733
|
var totalFilteredCount = React.useRef(0);
|
|
35762
|
-
var handleContentReady = useOnContentReadyHandler(gridColumnsFromProps, lastPageIndexRef, filterApplied, totalFilteredCount, totalUnfilteredCount, setUpdateTrigger, setCurrentPage, setCurrentPageSize,
|
|
35734
|
+
var handleContentReady = useOnContentReadyHandler(gridColumnsFromProps, lastPageIndexRef, filterApplied, totalFilteredCount, totalUnfilteredCount, setUpdateTrigger, setCurrentPage, setCurrentPageSize, onContentReadyFromProps);
|
|
35763
35735
|
var _useOnSummaryHandler = useOnSummaryHandler({
|
|
35764
35736
|
customSummary: customSummaryFromProps,
|
|
35765
35737
|
totalRecordCount: totalRecordCountFromProps,
|
|
@@ -35772,45 +35744,6 @@ var OdsInlineEditDataGrid = function OdsInlineEditDataGrid(props) {
|
|
|
35772
35744
|
renderTotal = _useOnSummaryHandler.renderTotal;
|
|
35773
35745
|
var handleOptionChanged = useOnOptionChangedHandler(dataGridRefFromProps, totalFilteredCount, sortingPropsFromProps, setFilterApplied, setUpdateTrigger, onOptionChangedFromProps);
|
|
35774
35746
|
React.useEffect(function () {}, [updateTrigger]);
|
|
35775
|
-
React.useEffect(function () {
|
|
35776
|
-
var loadFilterData = function loadFilterData() {
|
|
35777
|
-
try {
|
|
35778
|
-
var newFilterOptions = {};
|
|
35779
|
-
var _loop = function _loop() {
|
|
35780
|
-
var col = _step.value;
|
|
35781
|
-
try {
|
|
35782
|
-
if (headerFilterData.length > 0) {
|
|
35783
|
-
var newData = headerFilterData.filter(function (item) {
|
|
35784
|
-
return item[col.dataField] != null && item[col.dataField] !== "";
|
|
35785
|
-
}).map(function (item) {
|
|
35786
|
-
return item[col.dataField].toString();
|
|
35787
|
-
});
|
|
35788
|
-
var values = newData.map(function (group) {
|
|
35789
|
-
return {
|
|
35790
|
-
text: group,
|
|
35791
|
-
value: group
|
|
35792
|
-
};
|
|
35793
|
-
});
|
|
35794
|
-
newFilterOptions[col.dataField] = values;
|
|
35795
|
-
}
|
|
35796
|
-
} catch (error) {
|
|
35797
|
-
console.error("Error loading data for header filter:", error);
|
|
35798
|
-
}
|
|
35799
|
-
};
|
|
35800
|
-
for (var _iterator = _createForOfIteratorHelperLoose(gridColumnsFromProps), _step; !(_step = _iterator()).done;) {
|
|
35801
|
-
_loop();
|
|
35802
|
-
}
|
|
35803
|
-
setFilterOptions(newFilterOptions);
|
|
35804
|
-
return Promise.resolve();
|
|
35805
|
-
} catch (e) {
|
|
35806
|
-
return Promise.reject(e);
|
|
35807
|
-
}
|
|
35808
|
-
};
|
|
35809
|
-
loadFilterData();
|
|
35810
|
-
}, [headerFilterData, gridColumnsFromProps]);
|
|
35811
|
-
React.useEffect(function () {
|
|
35812
|
-
setHeaderFilterData([]);
|
|
35813
|
-
}, []);
|
|
35814
35747
|
var handleEditorPrepared = useOnEditorPreparedHandler(onEditorPreparedFromProps);
|
|
35815
35748
|
var handleExporting = useOnExportingHandler(exportPropsFromProps, renderTotal, onExportingFromProps);
|
|
35816
35749
|
var handleCellClick = React.useCallback(function (e) {
|
|
@@ -35821,7 +35754,7 @@ var OdsInlineEditDataGrid = function OdsInlineEditDataGrid(props) {
|
|
|
35821
35754
|
onCellClickFromProps(e);
|
|
35822
35755
|
}
|
|
35823
35756
|
}, []);
|
|
35824
|
-
var
|
|
35757
|
+
var VisibleActionButtons = React.useMemo(function () {
|
|
35825
35758
|
if (actionButtonGroupFromProps) {
|
|
35826
35759
|
if (actionButtonGroupFromProps.length >= 2 && !editPropsFromProps) {
|
|
35827
35760
|
return actionButtonGroupFromProps.slice(0, 2);
|
|
@@ -35830,29 +35763,26 @@ var OdsInlineEditDataGrid = function OdsInlineEditDataGrid(props) {
|
|
|
35830
35763
|
}
|
|
35831
35764
|
return [];
|
|
35832
35765
|
}, []);
|
|
35833
|
-
var ActionCellRenderPartial = useOnActionCellRenderHandler(
|
|
35766
|
+
var ActionCellRenderPartial = useOnActionCellRenderHandler(VisibleActionButtons, actionButtonGroupFromProps, editPropsFromProps);
|
|
35834
35767
|
var DataGridOptionsFromProps = React.useMemo(function () {
|
|
35835
35768
|
return _extends({}, AllGridOptions, DefaultDataGridOptions, {
|
|
35836
35769
|
columnResizingMode: columnResizingModeFromProps != null ? columnResizingModeFromProps : "nextColumn"
|
|
35837
35770
|
});
|
|
35838
35771
|
}, []);
|
|
35839
|
-
var
|
|
35772
|
+
var DataGridHeight = React.useMemo(function () {
|
|
35840
35773
|
return heightFromProps != null ? heightFromProps : window.innerHeight > 164 ? window.innerHeight - 164 : window.innerHeight;
|
|
35841
35774
|
}, []);
|
|
35842
|
-
var
|
|
35775
|
+
var RederedGridColumns = React.useMemo(function () {
|
|
35843
35776
|
return gridColumnsFromProps.map(function (col) {
|
|
35844
|
-
var _col$
|
|
35777
|
+
var _col$multiLevelColumn;
|
|
35845
35778
|
return React__default.createElement(DataGrid.Column, Object.assign({
|
|
35846
35779
|
key: col.dataField
|
|
35847
35780
|
}, col, {
|
|
35848
35781
|
minWidth: 10
|
|
35849
|
-
}), col.lookup && React__default.createElement(DataGrid.Lookup, Object.assign({}, col.lookup)),
|
|
35850
|
-
|
|
35851
|
-
|
|
35852
|
-
}),
|
|
35853
|
-
allowSearch: true,
|
|
35854
|
-
dataSource: [].concat(filterOptions[col.dataField] || [])
|
|
35855
|
-
}), (_col$multiLevelColumn = col.multiLevelColumns) === null || _col$multiLevelColumn === void 0 ? void 0 : _col$multiLevelColumn.map(function (multiLevelColItem) {
|
|
35782
|
+
}), col.lookup && React__default.createElement(DataGrid.Lookup, Object.assign({}, col.lookup)), col.headerFilter && React__default.createElement(DataGrid.HeaderFilter, Object.assign({}, col.headerFilter, {
|
|
35783
|
+
visible: true,
|
|
35784
|
+
allowSearch: true
|
|
35785
|
+
})), (_col$multiLevelColumn = col.multiLevelColumns) === null || _col$multiLevelColumn === void 0 ? void 0 : _col$multiLevelColumn.map(function (multiLevelColItem) {
|
|
35856
35786
|
return React__default.createElement(DataGrid.Column, {
|
|
35857
35787
|
key: multiLevelColItem.dataField,
|
|
35858
35788
|
dataField: multiLevelColItem.dataField,
|
|
@@ -35862,6 +35792,11 @@ var OdsInlineEditDataGrid = function OdsInlineEditDataGrid(props) {
|
|
|
35862
35792
|
}));
|
|
35863
35793
|
});
|
|
35864
35794
|
}, [gridColumnsFromProps]);
|
|
35795
|
+
var isHeaderFilterEnabledInAnyColumn = React.useMemo(function () {
|
|
35796
|
+
return gridColumnsFromProps.some(function (col) {
|
|
35797
|
+
return col.headerFilter;
|
|
35798
|
+
});
|
|
35799
|
+
}, [gridColumnsFromProps]);
|
|
35865
35800
|
return React__default.createElement("div", null, pageTitleFromProps && React__default.createElement(MemoizedPageTitleAndToolbar, {
|
|
35866
35801
|
pageTitle: pageTitleFromProps,
|
|
35867
35802
|
toolbarButtonGroup: toolbarButtonGroupFromProps
|
|
@@ -35869,7 +35804,7 @@ var OdsInlineEditDataGrid = function OdsInlineEditDataGrid(props) {
|
|
|
35869
35804
|
ref: dataGridRefFromProps,
|
|
35870
35805
|
dataSource: dataSourceFromProps,
|
|
35871
35806
|
width: "100%",
|
|
35872
|
-
height:
|
|
35807
|
+
height: DataGridHeight,
|
|
35873
35808
|
className: gridStyle.grid
|
|
35874
35809
|
}, DataGridOptionsFromProps, {
|
|
35875
35810
|
onCellClick: handleCellClick,
|
|
@@ -35877,7 +35812,7 @@ var OdsInlineEditDataGrid = function OdsInlineEditDataGrid(props) {
|
|
|
35877
35812
|
onEditorPrepared: handleEditorPrepared,
|
|
35878
35813
|
onExporting: handleExporting,
|
|
35879
35814
|
onOptionChanged: handleOptionChanged
|
|
35880
|
-
}),
|
|
35815
|
+
}), RederedGridColumns, React__default.createElement(DataGrid.ColumnChooser, {
|
|
35881
35816
|
enabled: true,
|
|
35882
35817
|
mode: "select"
|
|
35883
35818
|
}, !props.columnChooserPositionDisabled && React__default.createElement(DataGrid.Position, {
|
|
@@ -35897,9 +35832,9 @@ var OdsInlineEditDataGrid = function OdsInlineEditDataGrid(props) {
|
|
|
35897
35832
|
useIcons: true
|
|
35898
35833
|
})), (exportPropsFromProps === null || exportPropsFromProps === void 0 ? void 0 : exportPropsFromProps.enabled) && React__default.createElement(DataGrid.Export, Object.assign({}, exportPropsFromProps)), isFilterPanelFromProps && React__default.createElement(DataGrid.FilterPanel, {
|
|
35899
35834
|
visible: isFilterPanelFromProps
|
|
35900
|
-
}), React__default.createElement(DataGrid.HeaderFilter, {
|
|
35835
|
+
}), ((headerFilterFromProps === null || headerFilterFromProps === void 0 ? void 0 : headerFilterFromProps.visible) || isHeaderFilterEnabledInAnyColumn) && React__default.createElement(DataGrid.HeaderFilter, Object.assign({}, headerFilterFromProps, {
|
|
35901
35836
|
visible: true
|
|
35902
|
-
}), isFilterRowFromProps && React__default.createElement(DataGrid.FilterRow, {
|
|
35837
|
+
})), isFilterRowFromProps && React__default.createElement(DataGrid.FilterRow, {
|
|
35903
35838
|
visible: isFilterRowFromProps
|
|
35904
35839
|
}), actionColumnEnableFromProps && actionButtonGroupFromProps && React__default.createElement(DataGrid.Column, {
|
|
35905
35840
|
dataField: "Actions",
|