@michalrakus/x-react-web-lib 1.32.11 → 1.32.12
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.
|
@@ -11,6 +11,7 @@ import { XFormComponentDT } from "./XFormComponentDT";
|
|
|
11
11
|
import { XErrorMap } from "./XErrors";
|
|
12
12
|
import { IconType } from "primereact/utils";
|
|
13
13
|
import { ButtonProps } from "primereact/button";
|
|
14
|
+
import { XSuggestionsLoadProp } from "./XAutoCompleteBase";
|
|
14
15
|
export interface XRowTechData {
|
|
15
16
|
xFormComponentDTList: Array<XFormComponentDT<any>>;
|
|
16
17
|
errorMap: XErrorMap;
|
|
@@ -113,14 +114,18 @@ export interface XFormDropdownColumnProps extends XFormColumnBaseProps {
|
|
|
113
114
|
}
|
|
114
115
|
export interface XFormAutoCompleteColumnProps extends XFormColumnBaseProps {
|
|
115
116
|
assocField: string;
|
|
116
|
-
displayField: string;
|
|
117
|
+
displayField: string | string[];
|
|
118
|
+
itemTemplate?: (suggestion: any, index: number, createStringValue: boolean, defaultValue: (suggestion: any) => string) => React.ReactNode;
|
|
117
119
|
searchBrowse?: JSX.Element;
|
|
118
120
|
assocForm?: JSX.Element;
|
|
119
121
|
addRowEnabled: boolean;
|
|
120
122
|
filter?: XTableFieldFilterProp;
|
|
121
123
|
sortField?: string | DataTableSortMeta[];
|
|
122
124
|
fields?: string[];
|
|
125
|
+
scrollHeight?: string;
|
|
123
126
|
suggestions?: any[];
|
|
127
|
+
suggestionsLoad?: XSuggestionsLoadProp;
|
|
128
|
+
lazyLoadMaxRows?: number;
|
|
124
129
|
}
|
|
125
130
|
export interface XFormSearchButtonColumnProps extends XFormColumnBaseProps {
|
|
126
131
|
assocField: string;
|
|
@@ -145,7 +145,10 @@ var XFormDataTable2 = /** @class */ (function (_super) {
|
|
|
145
145
|
}
|
|
146
146
|
else if (columnProps.type === "autoComplete") {
|
|
147
147
|
var columnPropsAutoComplete = columnProps;
|
|
148
|
-
|
|
148
|
+
// for simplicity we use here the first column (is used for filtering/sorting)
|
|
149
|
+
// TODO - all columns add in constructor (through method props.form.addField(...))
|
|
150
|
+
var displayField = Array.isArray(columnPropsAutoComplete.displayField) ? columnPropsAutoComplete.displayField[0] : columnPropsAutoComplete.displayField;
|
|
151
|
+
return columnPropsAutoComplete.assocField + '.' + displayField;
|
|
149
152
|
}
|
|
150
153
|
else if (columnProps.type === "searchButton") {
|
|
151
154
|
var columnPropsSearchButton = columnProps;
|
|
@@ -404,7 +407,7 @@ var XFormDataTable2 = /** @class */ (function (_super) {
|
|
|
404
407
|
}
|
|
405
408
|
else if (columnProps.type === "autoComplete") {
|
|
406
409
|
var columnPropsAutoComplete = columnProps;
|
|
407
|
-
body = react_1.default.createElement(XAutoCompleteDT_1.XAutoCompleteDT, { form: this.props.form, entity: this.getEntity(), assocField: columnPropsAutoComplete.assocField, displayField: columnPropsAutoComplete.displayField, searchBrowse: columnPropsAutoComplete.searchBrowse, assocForm: columnPropsAutoComplete.assocForm, addRowEnabled: columnPropsAutoComplete.addRowEnabled, filter: columnPropsAutoComplete.filter, sortField: columnPropsAutoComplete.sortField, fields: columnPropsAutoComplete.fields, suggestions: columnPropsAutoComplete.suggestions, rowData: rowData, readOnly: readOnly });
|
|
410
|
+
body = react_1.default.createElement(XAutoCompleteDT_1.XAutoCompleteDT, { form: this.props.form, entity: this.getEntity(), assocField: columnPropsAutoComplete.assocField, displayField: columnPropsAutoComplete.displayField, itemTemplate: columnPropsAutoComplete.itemTemplate, searchBrowse: columnPropsAutoComplete.searchBrowse, assocForm: columnPropsAutoComplete.assocForm, addRowEnabled: columnPropsAutoComplete.addRowEnabled, filter: columnPropsAutoComplete.filter, sortField: columnPropsAutoComplete.sortField, fields: columnPropsAutoComplete.fields, scrollHeight: columnPropsAutoComplete.scrollHeight, suggestions: columnPropsAutoComplete.suggestions, suggestionsLoad: columnPropsAutoComplete.suggestionsLoad, lazyLoadMaxRows: columnPropsAutoComplete.lazyLoadMaxRows, rowData: rowData, readOnly: readOnly });
|
|
408
411
|
}
|
|
409
412
|
else if (columnProps.type === "searchButton") {
|
|
410
413
|
var columnPropsSearchButton = columnProps;
|