@michalrakus/x-react-web-lib 1.19.0 → 1.21.0

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.
Files changed (64) hide show
  1. package/XEditor.d.ts +3 -0
  2. package/XEditor.js +5 -0
  3. package/XEditorBase.d.ts +3 -0
  4. package/XEditorBase.js +5 -0
  5. package/XExportRowsDialog.d.ts +1 -1
  6. package/XExportRowsDialog.js +1 -1
  7. package/XHtmlRenderer.d.ts +3 -0
  8. package/XHtmlRenderer.js +5 -0
  9. package/XLazyDataTable.d.ts +1 -1
  10. package/XLazyDataTable.js +1 -1
  11. package/XMultilineRenderer.d.ts +3 -0
  12. package/XMultilineRenderer.js +5 -0
  13. package/XParamBrowse.d.ts +3 -0
  14. package/XParamBrowse.js +5 -0
  15. package/XParamForm.d.ts +3 -0
  16. package/XParamForm.js +5 -0
  17. package/gulpfile.js +11 -4
  18. package/lib/administration/XBrowseMetaBrowse.d.ts +1 -1
  19. package/lib/administration/XBrowseMetaBrowse.js +1 -1
  20. package/lib/administration/XParamBrowse.d.ts +6 -0
  21. package/lib/administration/XParamBrowse.js +25 -0
  22. package/lib/administration/XParamForm.d.ts +7 -0
  23. package/lib/administration/XParamForm.js +60 -0
  24. package/lib/administration/XUserBrowse.d.ts +1 -1
  25. package/lib/administration/XUserBrowse.js +1 -1
  26. package/lib/components/XAutoComplete.d.ts +2 -0
  27. package/lib/components/XAutoComplete.js +1 -1
  28. package/lib/components/XAutoCompleteBase.d.ts +5 -1
  29. package/lib/components/XAutoCompleteBase.js +35 -36
  30. package/lib/components/XAutoCompleteDT.d.ts +4 -2
  31. package/lib/components/XAutoCompleteDT.js +1 -1
  32. package/lib/components/XEditBrowse.js +1 -1
  33. package/lib/components/XEditor.d.ts +15 -0
  34. package/lib/components/XEditor.js +64 -0
  35. package/lib/components/XEditorBase.d.ts +9 -0
  36. package/lib/components/XEditorBase.js +91 -0
  37. package/lib/components/XFormBase.d.ts +1 -0
  38. package/lib/components/XFormBase.js +19 -4
  39. package/lib/components/XFormComponent.d.ts +1 -0
  40. package/lib/components/XInputText.js +1 -1
  41. package/lib/components/XInputTextareaBase.js +3 -4
  42. package/lib/components/{XExportRowsDialog.d.ts → XLazyDataTable/XExportRowsDialog.d.ts} +1 -1
  43. package/lib/components/{XExportRowsDialog.js → XLazyDataTable/XExportRowsDialog.js} +5 -5
  44. package/lib/components/XLazyDataTable/XHtmlRenderer.d.ts +7 -0
  45. package/lib/components/XLazyDataTable/XHtmlRenderer.js +78 -0
  46. package/lib/components/{XLazyDataTable.d.ts → XLazyDataTable/XLazyDataTable.d.ts} +22 -6
  47. package/lib/components/{XLazyDataTable.js → XLazyDataTable/XLazyDataTable.js} +112 -48
  48. package/lib/components/XLazyDataTable/XMultilineRenderer.d.ts +8 -0
  49. package/lib/components/XLazyDataTable/XMultilineRenderer.js +80 -0
  50. package/lib/components/XLazyDataTable/XMultilineSwitch.d.ts +7 -0
  51. package/lib/components/XLazyDataTable/XMultilineSwitch.js +20 -0
  52. package/lib/components/XLazyDataTable/XOcfDropdown.d.ts +8 -0
  53. package/lib/components/XLazyDataTable/XOcfDropdown.js +52 -0
  54. package/lib/components/XUtilsMetadata.d.ts +1 -1
  55. package/lib/serverApi/ExportImportParam.d.ts +1 -0
  56. package/lib/serverApi/XUtilsCommon.d.ts +5 -0
  57. package/lib/serverApi/XUtilsCommon.js +101 -1
  58. package/lib/serverApi/XUtilsConversions.d.ts +3 -1
  59. package/lib/serverApi/XUtilsConversions.js +19 -14
  60. package/lib/serverApi/XUtilsMetadataCommon.d.ts +1 -0
  61. package/lib/serverApi/XUtilsMetadataCommon.js +16 -0
  62. package/lib/serverApi/x-lib-api.d.ts +6 -0
  63. package/lib/serverApi/x-lib-api.js +3 -0
  64. package/package.json +2 -1
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ var desc = Object.getOwnPropertyDescriptor(m, k);
16
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
17
+ desc = { enumerable: true, get: function() { return m[k]; } };
18
+ }
19
+ Object.defineProperty(o, k2, desc);
20
+ }) : (function(o, m, k, k2) {
21
+ if (k2 === undefined) k2 = k;
22
+ o[k2] = m[k];
23
+ }));
24
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
26
+ }) : function(o, v) {
27
+ o["default"] = v;
28
+ });
29
+ var __importStar = (this && this.__importStar) || function (mod) {
30
+ if (mod && mod.__esModule) return mod;
31
+ var result = {};
32
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
33
+ __setModuleDefault(result, mod);
34
+ return result;
35
+ };
36
+ var __read = (this && this.__read) || function (o, n) {
37
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
38
+ if (!m) return o;
39
+ var i = m.call(o), r, ar = [], e;
40
+ try {
41
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
42
+ }
43
+ catch (error) { e = { error: error }; }
44
+ finally {
45
+ try {
46
+ if (r && !r.done && (m = i["return"])) m.call(i);
47
+ }
48
+ finally { if (e) throw e.error; }
49
+ }
50
+ return ar;
51
+ };
52
+ Object.defineProperty(exports, "__esModule", { value: true });
53
+ exports.XEditorBase = void 0;
54
+ var react_1 = __importStar(require("react"));
55
+ var XUtils_1 = require("./XUtils");
56
+ var editor_1 = require("primereact/editor");
57
+ // koli optimalizacii - typovany text si zapisuje do svojej stavovej premennej a onChange zavola az z onBlur
58
+ // pri velkych formularoch je totiz volanie zmeny stavu this.setState({object: this.state.object, errorMap: this.state.errorMap}); pomale
59
+ var XEditorBase = function (props) {
60
+ // true, ak uzivatel typuje hodnotu
61
+ // false, ak bol zavolany onBlur
62
+ var _a = __read((0, react_1.useState)(false), 2), editorValueChanged = _a[0], setEditorValueChanged = _a[1];
63
+ // pouzivane, len ak editorValueChanged === true, je tu zapisana zmenena hodnota v editore
64
+ var _b = __read((0, react_1.useState)(null), 2), editorValue = _b[0], setEditorValue = _b[1];
65
+ var onTextChange = function (e) {
66
+ setEditorValueChanged(true);
67
+ setEditorValue(e.htmlValue);
68
+ };
69
+ var onBlur = function (e) {
70
+ // optimalizacia - onChange volame len ak editorValueChanged === true
71
+ if (editorValueChanged) {
72
+ // TODO - bude vzdy onBlur volany az potom co bude setnuta editorValue? lebo ak nie tak treba hodnotu vytiahnut z "e"
73
+ //const htmlValue: string | null = e.target.??;
74
+ props.onChange(editorValue);
75
+ setEditorValueChanged(false);
76
+ setEditorValue(null); // pre poriadok
77
+ }
78
+ };
79
+ var getValue = function () {
80
+ var htmlValue;
81
+ if (editorValueChanged) {
82
+ htmlValue = editorValue;
83
+ }
84
+ else {
85
+ htmlValue = props.value;
86
+ }
87
+ return htmlValue !== null ? htmlValue : undefined; // value v Editor nechce null, chce undefined
88
+ };
89
+ return (react_1.default.createElement(editor_1.Editor, __assign({ id: props.id, value: getValue(), onTextChange: onTextChange, onBlur: onBlur, readOnly: props.readOnly, style: props.style }, XUtils_1.XUtils.createErrorProps(props.error))));
90
+ };
91
+ exports.XEditorBase = XEditorBase;
@@ -62,6 +62,7 @@ export declare abstract class XFormBase extends Component<XFormProps> {
62
62
  static saveErrorsIntoXRowTechData(row: any, xErrors: XErrors): void;
63
63
  formReadOnly(object: XObject, field: string): boolean;
64
64
  createNewObject(): XObject;
65
+ createNewObjectAsync(): Promise<XObject>;
65
66
  preInitForm(object: XObject, operationType: OperationType.Insert | OperationType.Update): void;
66
67
  validate(object: XObject): Promise<XErrors>;
67
68
  preSave(object: XObject): void;
@@ -180,17 +180,23 @@ var XFormBase = /** @class */ (function (_super) {
180
180
  }
181
181
  finally { if (e_1) throw e_1.error; }
182
182
  }
183
- return [3 /*break*/, 3];
183
+ return [3 /*break*/, 5];
184
184
  case 2:
185
185
  // add new row
186
186
  object = this.createNewObject();
187
+ if (!(Object.keys(object).length === 0)) return [3 /*break*/, 4];
188
+ return [4 /*yield*/, this.createNewObjectAsync()];
189
+ case 3:
190
+ object = _d.sent();
191
+ _d.label = 4;
192
+ case 4:
187
193
  // pridame pripadne "init values", ktore pridu cez prop object (pouziva sa napr. pri insertovani cez XAutoComplete na predplnenie hodnoty)
188
194
  if (this.props.initValues !== undefined) {
189
- object = __assign(__assign({}, object), this.props.initValues); // values from this.props.object will override values from object (if key is the same)
195
+ object = __assign(__assign({}, object), this.props.initValues); // values from this.props.initValues will override values from object (if key is the same)
190
196
  }
191
197
  operationType = XUtils_1.OperationType.Insert;
192
- _d.label = 3;
193
- case 3:
198
+ _d.label = 5;
199
+ case 5:
194
200
  this.preInitForm(object, operationType);
195
201
  //console.log("volany XFormBase.componentDidMount() - ideme setnut object");
196
202
  this.setState({ object: object } /*, () => console.log("volany XFormBase.componentDidMount() - callback setState")*/);
@@ -618,6 +624,15 @@ var XFormBase = /** @class */ (function (_super) {
618
624
  XFormBase.prototype.createNewObject = function () {
619
625
  return {};
620
626
  };
627
+ // this method can be overriden in subclass if needed (to set some default values for insert)
628
+ // if createNewObject() returns empty object {}, then createNewObjectAsync() is called
629
+ XFormBase.prototype.createNewObjectAsync = function () {
630
+ return __awaiter(this, void 0, void 0, function () {
631
+ return __generator(this, function (_a) {
632
+ return [2 /*return*/, {}];
633
+ });
634
+ });
635
+ };
621
636
  // this method can be overriden in subclass if needed (to modify/save object after read from DB and before set into the form)
622
637
  XFormBase.prototype.preInitForm = function (object, operationType) {
623
638
  };
@@ -11,6 +11,7 @@ export interface XFormComponentProps<T> {
11
11
  form: XFormBase;
12
12
  label?: string;
13
13
  tooltip?: string;
14
+ placeholder?: string;
14
15
  readOnly?: XReadOnlyProp;
15
16
  labelStyle?: React.CSSProperties;
16
17
  inline?: boolean;
@@ -63,7 +63,7 @@ var XInputText = /** @class */ (function (_super) {
63
63
  var label = this.getLabel();
64
64
  return (react_1.default.createElement("div", { className: "field grid" },
65
65
  label !== undefined ? react_1.default.createElement("label", { htmlFor: this.props.field, className: "col-fixed", style: this.getLabelStyle() }, label) : null,
66
- react_1.default.createElement(inputtext_1.InputText, __assign({ id: this.props.field, value: this.getValue(), onChange: this.onValueChange, readOnly: this.isReadOnly(), maxLength: this.xField.length, size: size, style: this.props.inputStyle }, this.getClassNameTooltip(), { onBlur: this.onBlur }))));
66
+ react_1.default.createElement(inputtext_1.InputText, __assign({ id: this.props.field, value: this.getValue(), onChange: this.onValueChange, readOnly: this.isReadOnly(), maxLength: this.xField.length, size: size, style: this.props.inputStyle }, this.getClassNameTooltip(), { onBlur: this.onBlur, placeholder: this.props.placeholder }))));
67
67
  };
68
68
  return XInputText;
69
69
  }(XInput_1.XInput));
@@ -58,18 +58,17 @@ var inputtextarea_1 = require("primereact/inputtextarea");
58
58
  // koli optimalizacii - typovany text si zapisuje do svojej stavovej premennej a onChange zavola az z onBlur
59
59
  // pri velkych formularoch je totiz volanie zmeny stavu this.setState({object: this.state.object, errorMap: this.state.errorMap}); pomale
60
60
  var XInputTextareaBase = function (props) {
61
- // true, ak uzivatel typuje hodnotu ale hodnota sa este neda skonvertovat na korektny interval (este nevieme vytvorit IPostgresInterval)
62
- // false, ak uz mame v inpute korektnu hodnotu - vtedy zavolame props.onChange a posleme mu IPostgresInterval
61
+ // true, ak uzivatel typuje hodnotu
62
+ // false, ak bol zavolany onBlur
63
63
  var _a = __read((0, react_1.useState)(false), 2), inputChanged = _a[0], setInputChanged = _a[1];
64
64
  // pouzivane, len ak inputChanged === true, je tu zapisana zmenena hodnota v inpute
65
65
  var _b = __read((0, react_1.useState)(undefined), 2), inputValueState = _b[0], setInputValueState = _b[1];
66
66
  var onChange = function (e) {
67
- // conversion to IPostgresInterval will be done in onBlur
68
67
  setInputChanged(true);
69
68
  setInputValueState(e.target.value);
70
69
  };
71
70
  var onBlur = function (e) {
72
- // optimalizacia - testujeme len ak inputChanged === true
71
+ // optimalizacia - onChange volame len ak inputChanged === true
73
72
  if (inputChanged) {
74
73
  var value = (0, XUtilsConversions_1.stringFromUI)(e.target.value);
75
74
  props.onChange(value);
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { ExportType, LazyDataTableQueryParam } from "../serverApi/ExportImportParam";
2
+ import { ExportType, LazyDataTableQueryParam } from "../../serverApi/ExportImportParam";
3
3
  export interface XExportParams {
4
4
  path: string;
5
5
  queryParam: LazyDataTableQueryParam | any;
@@ -76,16 +76,16 @@ var __read = (this && this.__read) || function (o, n) {
76
76
  };
77
77
  Object.defineProperty(exports, "__esModule", { value: true });
78
78
  exports.XExportRowsDialog = void 0;
79
- var ExportImportParam_1 = require("../serverApi/ExportImportParam");
79
+ var ExportImportParam_1 = require("../../serverApi/ExportImportParam");
80
80
  var react_1 = __importStar(require("react"));
81
81
  var dialog_1 = require("primereact/dialog");
82
82
  var inputtext_1 = require("primereact/inputtext");
83
83
  var dropdown_1 = require("primereact/dropdown");
84
84
  var checkbox_1 = require("primereact/checkbox");
85
- var XButton_1 = require("./XButton");
86
- var XUtils_1 = require("./XUtils");
87
- var XUtilsConversions_1 = require("../serverApi/XUtilsConversions");
88
- var XLocale_1 = require("./XLocale");
85
+ var XButton_1 = require("../XButton");
86
+ var XUtils_1 = require("../XUtils");
87
+ var XUtilsConversions_1 = require("../../serverApi/XUtilsConversions");
88
+ var XLocale_1 = require("../XLocale");
89
89
  var XExportRowsDialog = function (props) {
90
90
  var _a, _b;
91
91
  var _c = __read((0, react_1.useState)(ExportImportParam_1.ExportType.Csv), 2), exportType = _c[0], setExportType = _c[1];
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import { XMultilineRenderType } from "./XLazyDataTable";
3
+ export declare const XHtmlRenderer: (props: {
4
+ htmlValue: string | null;
5
+ renderType: XMultilineRenderType;
6
+ fewLinesCount: number;
7
+ }) => JSX.Element;
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __read = (this && this.__read) || function (o, n) {
26
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
27
+ if (!m) return o;
28
+ var i = m.call(o), r, ar = [], e;
29
+ try {
30
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
31
+ }
32
+ catch (error) { e = { error: error }; }
33
+ finally {
34
+ try {
35
+ if (r && !r.done && (m = i["return"])) m.call(i);
36
+ }
37
+ finally { if (e) throw e.error; }
38
+ }
39
+ return ar;
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.XHtmlRenderer = void 0;
43
+ var react_1 = __importStar(require("react"));
44
+ var button_1 = require("primereact/button");
45
+ var XHtmlRenderer = function (props) {
46
+ var _a;
47
+ // used only for props.renderType === "fewLines"
48
+ var _b = __read((0, react_1.useState)(false), 2), showAllLines = _b[0], setShowAllLines = _b[1];
49
+ var className;
50
+ var htmlValue = (_a = props.htmlValue) !== null && _a !== void 0 ? _a : "";
51
+ var buttonExpandCollapse = null;
52
+ if (props.renderType === "singleLine") {
53
+ className = "x-html-content-single-line";
54
+ }
55
+ else {
56
+ // "fewLines" or "allLines"
57
+ className = "x-html-content";
58
+ if (props.renderType === "fewLines" && htmlValue) {
59
+ var parser = new DOMParser();
60
+ var xmlDoc = parser.parseFromString(htmlValue, "text/html");
61
+ var pElemList = xmlDoc.getElementsByTagName("p");
62
+ if (pElemList.length > props.fewLinesCount) {
63
+ if (!showAllLines) {
64
+ htmlValue = "";
65
+ for (var i = 0; i < props.fewLinesCount; i++) {
66
+ htmlValue += pElemList[i].outerHTML; // naspet do <p>line 1</p>
67
+ }
68
+ }
69
+ // pridame button na koniec posledneho riadku
70
+ buttonExpandCollapse = react_1.default.createElement(button_1.Button, { icon: showAllLines ? "pi pi-angle-double-left" : "pi pi-angle-double-right", onClick: function () { return setShowAllLines(!showAllLines); }, className: "x-button-multiline-expand-collapse", style: { marginLeft: '0rem' } });
71
+ }
72
+ }
73
+ }
74
+ return (react_1.default.createElement("div", { className: "p-editor-content ql-snow" },
75
+ react_1.default.createElement("div", { className: "ql-editor " + className, dangerouslySetInnerHTML: { __html: htmlValue } }),
76
+ buttonExpandCollapse));
77
+ };
78
+ exports.XHtmlRenderer = XHtmlRenderer;
@@ -1,19 +1,24 @@
1
1
  import React, { ReactChild } from 'react';
2
2
  import { DataTableFilterMeta, DataTableFilterMetaData, DataTableOperatorFilterMetaData, DataTableSortMeta } from 'primereact/datatable';
3
3
  import { ColumnBodyOptions, ColumnFilterElementTemplateOptions } from 'primereact/column';
4
- import { XViewStatusOrBoolean } from "./XUtils";
5
- import { XSearchBrowseParams } from "./XSearchBrowseParams";
6
- import { XAggregateType, XCustomFilter } from "../serverApi/FindParam";
7
- import { XOnSaveOrCancelProp } from "./XFormBase";
4
+ import { XViewStatusOrBoolean } from "../XUtils";
5
+ import { XSearchBrowseParams } from "../XSearchBrowseParams";
6
+ import { XAggregateType, XCustomFilter } from "../../serverApi/FindParam";
7
+ import { XOnSaveOrCancelProp } from "../XFormBase";
8
8
  import { IconType } from "primereact/utils";
9
9
  import { ButtonProps } from "primereact/button";
10
10
  export type XBetweenFilterProp = "row" | "column" | undefined;
11
+ export type XMultilineRenderType = "singleLine" | "fewLines" | "allLines";
11
12
  export interface XAppButtonForRow {
12
13
  key?: string;
13
14
  icon?: IconType<ButtonProps>;
14
15
  label: string;
15
16
  onClick: (selectedRow: any) => void;
16
17
  }
18
+ export interface XOptionalCustomFilter {
19
+ label: string;
20
+ filter: XCustomFilter;
21
+ }
17
22
  export interface XEditModeHandlers {
18
23
  onStart: () => void;
19
24
  onSave: () => void;
@@ -51,14 +56,18 @@ export interface XLazyDataTableProps {
51
56
  appButtons?: any;
52
57
  filters?: DataTableFilterMeta;
53
58
  customFilter?: XCustomFilter;
59
+ optionalCustomFilters?: XOptionalCustomFilter[];
54
60
  sortField?: string | DataTableSortMeta[];
55
61
  fullTextSearch: boolean | string[];
56
62
  fields?: string[];
57
- multiLineSwitch: boolean;
63
+ multilineSwitch: boolean;
64
+ multilineSwitchInitValue: XMultilineRenderType;
65
+ multilineSwitchFewLinesCount: number;
58
66
  searchBrowseParams?: XSearchBrowseParams;
59
67
  width?: string;
60
68
  rowClassName?: (data: any) => object | string | undefined;
61
69
  dataLoadedState?: [boolean, React.Dispatch<React.SetStateAction<boolean>>];
70
+ exportFieldsToDuplicateValues?: string[];
62
71
  editMode?: boolean;
63
72
  editModeHandlers?: XEditModeHandlers;
64
73
  displayed?: boolean;
@@ -71,7 +80,9 @@ export declare const XLazyDataTable: {
71
80
  rows: number;
72
81
  filterDisplay: string;
73
82
  fullTextSearch: boolean;
74
- multiLineSwitch: boolean;
83
+ multilineSwitch: boolean;
84
+ multilineSwitchInitValue: string;
85
+ multilineSwitchFewLinesCount: number;
75
86
  scrollable: boolean;
76
87
  scrollWidth: string;
77
88
  scrollHeight: string;
@@ -86,6 +97,7 @@ export type XFilterElementParams = {
86
97
  options: ColumnFilterElementTemplateOptions;
87
98
  };
88
99
  export type XFilterElementProp = (params: XFilterElementParams) => React.ReactNode;
100
+ export type XContentType = "multiline" | "html" | undefined;
89
101
  export interface XLazyColumnProps {
90
102
  field: string;
91
103
  header?: any;
@@ -96,11 +108,15 @@ export interface XLazyColumnProps {
96
108
  showFilterMenu?: boolean;
97
109
  betweenFilter?: XBetweenFilterProp | "noBetween";
98
110
  width?: string;
111
+ contentType?: XContentType;
99
112
  aggregateType?: XAggregateType;
100
113
  columnViewStatus: XViewStatusOrBoolean;
101
114
  filterElement?: XFilterElementProp;
102
115
  body?: React.ReactNode | ((data: any, options: ColumnBodyOptions) => React.ReactNode);
103
116
  }
117
+ export type XLazyColumnType = {
118
+ props: XLazyColumnProps;
119
+ };
104
120
  export declare const XLazyColumn: {
105
121
  (props: XLazyColumnProps): null;
106
122
  defaultProps: {