ods-component-lib 1.16.9 → 1.17.1

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.
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import "./DxDataGrid.css";
3
+ declare function OdsRemoteDataGrid(props: any): React.JSX.Element;
4
+ export default OdsRemoteDataGrid;
package/dist/index.d.ts CHANGED
@@ -44,6 +44,7 @@ import OdsLogin from "./components/custom/OdsLogin";
44
44
  import OdsDataGrid from "./components/devextreme/OdsDataGrid";
45
45
  import OdsDisplayGrid from "./components/devextreme/OdsDisplayGrid";
46
46
  import OdsProfDataGrid from "./components/devextreme/OdsProfDataGrid";
47
+ import OdsRemoteDataGrid from "./components/devextreme/OdsRemoteDataGrid";
47
48
  import DxTreeList from "./components/devextreme/treeview/DxTreeList";
48
49
  import DxTreeView from "./components/devextreme/treeview/DxTreeView";
49
50
  export { OdsButton };
@@ -94,3 +95,4 @@ export { DxTreeView };
94
95
  export { DxTreeList };
95
96
  export { OdsDisplayGrid };
96
97
  export { OdsProfDataGrid };
98
+ export { OdsRemoteDataGrid };
package/dist/index.js CHANGED
@@ -20,6 +20,7 @@ var exceljs = require('exceljs');
20
20
  var fileSaverEs = require('file-saver-es');
21
21
  var moment = _interopDefault(require('moment'));
22
22
  var devextremeReact = require('devextreme-react');
23
+ var AspNetData = require('devextreme-aspnet-data-nojquery');
23
24
  var treeView = require('devextreme-react/tree-view');
24
25
 
25
26
  function _extends() {
@@ -1335,7 +1336,8 @@ function grid(props) {
1335
1336
  key: col.dataField
1336
1337
  }, col, {
1337
1338
  headerCellRender: headerCellRender,
1338
- cellRender: customizeBooleanColumnRender
1339
+ cellRender: customizeBooleanColumnRender,
1340
+ calculateCellValue: col.calculateCellValue
1339
1341
  }), col.required && React__default.createElement(dataGrid.RequiredRule, {
1340
1342
  message: col.requiredMessage
1341
1343
  }), col.dataField === 'IsActive' && React__default.createElement(dataGrid.HeaderFilter, {
@@ -1784,6 +1786,202 @@ function OdsProfDataGrid(props) {
1784
1786
  })))));
1785
1787
  }
1786
1788
 
1789
+ var exportFormats$3 = ['xlsx', 'pdf'];
1790
+ var searchEditorOptions$3 = {
1791
+ placeholder: 'Search column'
1792
+ };
1793
+ var renderMenuItem$2 = function renderMenuItem() {
1794
+ return React__default.createElement(dataGrid.Export, {
1795
+ enabled: true,
1796
+ allowExportSelectedData: true,
1797
+ formats: exportFormats$3
1798
+ });
1799
+ };
1800
+ var customizeBooleanColumnRender$2 = function customizeBooleanColumnRender(e) {
1801
+ if (e.column.dataField === 'IsActive' || e.column.dataField === 'Status') {
1802
+ var tagColor = e.value ? 'green' : 'gold';
1803
+ return React__default.createElement(antd.Tag, {
1804
+ color: tagColor
1805
+ }, e.value ? 'Active' : 'Passive');
1806
+ }
1807
+ if (e.column.dataType === 'datetime') {
1808
+ if (e.value !== null) {
1809
+ var date = moment(e.value);
1810
+ var offsetMinutes = date.utcOffset();
1811
+ var sign = offsetMinutes >= 0 ? '+' : '-';
1812
+ var hours = Math.floor(Math.abs(offsetMinutes) / 60);
1813
+ var minutes = Math.abs(offsetMinutes) % 60;
1814
+ var formattedOffset = "(UTC" + sign + hours.toString().padStart(2, '0') + ":" + minutes.toString().padStart(2, '0') + ")";
1815
+ var formatedDate = date.format('DD.MM.YYYY HH.mm') + " " + formattedOffset;
1816
+ return formatedDate;
1817
+ }
1818
+ }
1819
+ return e.value;
1820
+ };
1821
+ function OdsRemoteDataGrid(props) {
1822
+ return grid$2(props);
1823
+ }
1824
+ function grid$2(props) {
1825
+ var _ref;
1826
+ var headerCellRender = function headerCellRender(colProperties) {
1827
+ return React__default.createElement("th", {
1828
+ className: "dx-datagrid-headers"
1829
+ }, colProperties.column.caption);
1830
+ };
1831
+ var fileName = props.exportFileName ? props.exportFileName + moment().format("YYYYMMDD") : "DatagridExportFile" + moment().format("YYYYMMDD");
1832
+ var onExporting = function onExporting(e) {
1833
+ if (e.format === 'xlsx') {
1834
+ var workbook = new exceljs.Workbook();
1835
+ excel_exporter.exportDataGrid({
1836
+ component: e.component,
1837
+ worksheet: workbook.addWorksheet('Main sheet'),
1838
+ autoFilterEnabled: true
1839
+ }).then(function () {
1840
+ workbook.xlsx.writeBuffer().then(function (buffer) {
1841
+ fileSaverEs.saveAs(new Blob([buffer], {
1842
+ type: 'application/octet-stream'
1843
+ }), fileName + '.xlsx');
1844
+ });
1845
+ });
1846
+ } else {
1847
+ var doc = new jsPDF();
1848
+ pdf_exporter.exportDataGrid({
1849
+ jsPDFDocument: doc,
1850
+ component: e.component,
1851
+ indent: 5
1852
+ }).then(function () {
1853
+ doc.save(fileName + '.pdf');
1854
+ });
1855
+ }
1856
+ };
1857
+ var dataSource = AspNetData.createStore({
1858
+ key: props.keyExpr,
1859
+ loadUrl: props.loadUrl
1860
+ });
1861
+ return React__default.createElement(React__default.Fragment, null, React__default.createElement("div", {
1862
+ className: "odsDatagrid",
1863
+ style: {
1864
+ width: "100%",
1865
+ overflowX: 'auto'
1866
+ }
1867
+ }, React__default.createElement(dataGrid.DataGrid, {
1868
+ dataSource: dataSource,
1869
+ onRowInserted: props.onRowInserted,
1870
+ onRowUpdated: props.onRowUpdated,
1871
+ onRowRemoved: props.onRowRemoved,
1872
+ onSaving: props.onSaving,
1873
+ onEditCanceling: props.onEditCanceling,
1874
+ onExporting: onExporting,
1875
+ height: (_ref = props.height !== undefined) != null ? _ref : props.height,
1876
+ allowColumnResizing: true,
1877
+ allowColumnReordering: true,
1878
+ showRowLines: true,
1879
+ showBorders: true,
1880
+ columnAutoWidth: true,
1881
+ columnResizingMode: "widget",
1882
+ paging: {
1883
+ pageSize: props.pageSize ? props.pageSize : 20
1884
+ },
1885
+ remoteOperations: true
1886
+ }, React__default.createElement(dataGrid.SearchPanel, {
1887
+ visible: true
1888
+ }), React__default.createElement(dataGrid.FilterRow, {
1889
+ visible: true
1890
+ }), React__default.createElement(dataGrid.HeaderFilter, {
1891
+ visible: true
1892
+ }), React__default.createElement(dataGrid.Selection, {
1893
+ mode: "multiple",
1894
+ deferred: true
1895
+ }), React__default.createElement(dataGrid.Scrolling, {
1896
+ mode: "infinite"
1897
+ }), React__default.createElement(dataGrid.StateStoring, {
1898
+ enabled: true,
1899
+ type: "localStorage",
1900
+ storageKey: props.exportFileName + "Storage"
1901
+ }), React__default.createElement(dataGrid.ColumnChooser, {
1902
+ enabled: true,
1903
+ mode: "select"
1904
+ }, React__default.createElement(dataGrid.Position, {
1905
+ my: "right top",
1906
+ at: "right bottom",
1907
+ of: ".dx-datagrid-column-chooser-button"
1908
+ }), React__default.createElement(dataGrid.ColumnChooserSearch, {
1909
+ enabled: true,
1910
+ editorOptions: searchEditorOptions$3
1911
+ }), React__default.createElement(dataGrid.ColumnChooserSelection, {
1912
+ allowSelectAll: true,
1913
+ selectByClick: true,
1914
+ recursive: true
1915
+ })), props.editEnable === true && React__default.createElement(dataGrid.Editing, {
1916
+ mode: props.edit.mode,
1917
+ allowUpdating: props.edit.allowUpdating,
1918
+ allowDeleting: props.edit.allowDeleting,
1919
+ allowAdding: props.edit.allowAdding,
1920
+ useIcons: true
1921
+ }, props.edit.mode === "popup" && React__default.createElement(dataGrid.Popup, {
1922
+ title: props.popupTitle,
1923
+ showTitle: true,
1924
+ width: 700,
1925
+ height: 300,
1926
+ showCloseButton: false
1927
+ }), React__default.createElement(dataGrid.Form, null, props.formItems.map(function (formItem) {
1928
+ return React__default.createElement(form.Item, {
1929
+ itemType: formItem.itemType,
1930
+ colCount: formItem.colCount,
1931
+ colSpan: formItem.colSpan
1932
+ }, formItem.items.map(function (subItem) {
1933
+ return React__default.createElement(form.Item, {
1934
+ key: subItem.dataField,
1935
+ dataField: subItem.dataField
1936
+ });
1937
+ }));
1938
+ }))), props.columns.map(function (col) {
1939
+ return React__default.createElement(dataGrid.Column, Object.assign({
1940
+ key: col.dataField
1941
+ }, col, {
1942
+ headerCellRender: headerCellRender,
1943
+ cellRender: customizeBooleanColumnRender$2
1944
+ }), col.required && React__default.createElement(dataGrid.RequiredRule, {
1945
+ message: col.requiredMessage
1946
+ }), col.dataField === 'IsActive' && React__default.createElement(dataGrid.HeaderFilter, {
1947
+ dataSource: [{
1948
+ text: 'All',
1949
+ value: null
1950
+ }, {
1951
+ text: 'Active',
1952
+ value: true
1953
+ }, {
1954
+ text: 'Passive',
1955
+ value: false
1956
+ }]
1957
+ }));
1958
+ }), React__default.createElement(dataGrid.Toolbar, null, React__default.createElement(dataGrid.Item, {
1959
+ location: "after"
1960
+ }, React__default.createElement(OdsButton, {
1961
+ type: "primary",
1962
+ onClick: props.onAddButton
1963
+ }, "Add New")), React__default.createElement(dataGrid.Item, {
1964
+ name: "searchPanel"
1965
+ }), React__default.createElement(dataGrid.Item, {
1966
+ name: "columnChooserButton"
1967
+ }), React__default.createElement(dataGrid.Item, {
1968
+ name: "exportButton"
1969
+ }), React__default.createElement(dataGrid.Item, {
1970
+ menuItemRender: renderMenuItem$2
1971
+ })), React__default.createElement(dataGrid.Summary, null, React__default.createElement(dataGrid.TotalItem, {
1972
+ column: "Id",
1973
+ summaryType: "count",
1974
+ displayFormat: "{0} Total Data"
1975
+ }), props.sumaryRowItems && props.sumaryRowItems.map(function (item) {
1976
+ return React__default.createElement(dataGrid.TotalItem, {
1977
+ column: item.columnName,
1978
+ summaryType: item.aggregateFn,
1979
+ valueFormat: item.valueFormat ? item.valueFormat : "",
1980
+ displayFormat: "Total: {0}"
1981
+ });
1982
+ })))));
1983
+ }
1984
+
1787
1985
  var DxTreeList = function DxTreeList(props) {
1788
1986
  var _useState = React.useState(props.dataSource),
1789
1987
  dataSource = _useState[0];
@@ -1891,6 +2089,7 @@ exports.OdsRadio = OdsRadio;
1891
2089
  exports.OdsRadioGroup = OdsRadioGroup;
1892
2090
  exports.OdsRangeTimepicker = OdsRangeTimepicker;
1893
2091
  exports.OdsRate = OdsRate;
2092
+ exports.OdsRemoteDataGrid = OdsRemoteDataGrid;
1894
2093
  exports.OdsSearch = OdsSearch;
1895
2094
  exports.OdsSelect = OdsSelect;
1896
2095
  exports.OdsSelectableTable = OdsSelectableTable;