ods-component-lib 1.13.8 → 1.13.11

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/index.d.ts CHANGED
@@ -43,6 +43,7 @@ import OdsTitle from "./components/antd/typography/OdsTitle";
43
43
  import OdsLogin from "./components/custom/OdsLogin";
44
44
  import OdsDataGrid from "./components/devextreme/OdsDataGrid";
45
45
  import OdsDisplayGrid from "./components/devextreme/OdsDisplayGrid";
46
+ import OdsProfDataGrid from "./components/devextreme/OdsProfDataGrid";
46
47
  import DxTreeList from "./components/devextreme/treeview/DxTreeList";
47
48
  import DxTreeView from "./components/devextreme/treeview/DxTreeView";
48
49
  export { OdsButton };
@@ -92,3 +93,4 @@ export { OdsNotification };
92
93
  export { DxTreeView };
93
94
  export { DxTreeList };
94
95
  export { OdsDisplayGrid };
96
+ export { OdsProfDataGrid };
package/dist/index.js CHANGED
@@ -1206,7 +1206,7 @@ function grid(props) {
1206
1206
  }, colProperties.column.caption);
1207
1207
  };
1208
1208
  var fileName = props.exportFileName ? props.exportFileName + moment().format("YYYYMMDD") : "DatagridExportFile" + moment().format("YYYYMMDD");
1209
- var onExporting = React__default.useCallback(function (e) {
1209
+ var onExporting = function onExporting(e) {
1210
1210
  if (e.format === 'excel') {
1211
1211
  var workbook = new exceljs.Workbook();
1212
1212
  excel_exporter.exportDataGrid({
@@ -1230,7 +1230,7 @@ function grid(props) {
1230
1230
  doc.save(fileName + '.pdf');
1231
1231
  });
1232
1232
  }
1233
- }, []);
1233
+ };
1234
1234
  return React__default.createElement(React__default.Fragment, null, React__default.createElement("div", {
1235
1235
  className: "odsDatagrid",
1236
1236
  style: {
@@ -1356,9 +1356,9 @@ function grid(props) {
1356
1356
  return React__default.createElement(dataGrid.Column, {
1357
1357
  type: "buttons",
1358
1358
  width: 110
1359
- }, React__default.createElement(React__default.Fragment, null, React__default.createElement(dataGrid.Button, {
1359
+ }, React__default.createElement(React__default.Fragment, null, props.edit.allowUpdating && React__default.createElement(dataGrid.Button, {
1360
1360
  name: "edit"
1361
- }), React__default.createElement(dataGrid.Button, {
1361
+ }), props.edit.allowDeleting && React__default.createElement(dataGrid.Button, {
1362
1362
  name: "delete"
1363
1363
  })));
1364
1364
  }
@@ -1450,6 +1450,267 @@ function grid$1(props) {
1450
1450
  })));
1451
1451
  }
1452
1452
 
1453
+ var exportFormats$2 = ['xlsx', 'pdf'];
1454
+ var searchEditorOptions$2 = {
1455
+ placeholder: 'Search column'
1456
+ };
1457
+ var renderMenuItem$1 = function renderMenuItem() {
1458
+ return React__default.createElement(dataGrid.Export, {
1459
+ enabled: true,
1460
+ allowExportSelectedData: true,
1461
+ formats: exportFormats$2
1462
+ });
1463
+ };
1464
+ var customizeBooleanColumnRender$1 = function customizeBooleanColumnRender(e) {
1465
+ var tagColor = e.value ? 'green' : 'gold';
1466
+ return React__default.createElement(antd.Tag, {
1467
+ color: tagColor
1468
+ }, e.value ? 'Active' : 'Passive');
1469
+ };
1470
+ function OdsDataGrid$1(props) {
1471
+ return grid$2(props);
1472
+ }
1473
+ function grid$2(props) {
1474
+ var _useState = React.useState(true),
1475
+ showPageSizeSelector = _useState[0],
1476
+ setShowPageSizeSelector = _useState[1];
1477
+ var _useState2 = React.useState(true),
1478
+ enablePaging = _useState2[0],
1479
+ setEnablePaging = _useState2[1];
1480
+ var _useState3 = React.useState(true),
1481
+ loadPanelEnabled = _useState3[0],
1482
+ setLoadPanelEnabled = _useState3[1];
1483
+ var dataGridRef = React.useRef(null);
1484
+ var headerCellRender = function headerCellRender(colProperties) {
1485
+ return React__default.createElement("th", {
1486
+ className: "dx-datagrid-headers"
1487
+ }, colProperties.column.caption);
1488
+ };
1489
+ var fileName = props.exportFileName ? props.exportFileName + moment().format("YYYYMMDD") : "DatagridExportFile" + moment().format("YYYYMMDD");
1490
+ var onExporting = function onExporting(e) {
1491
+ if (e.format === 'xlsx') {
1492
+ var workbook = new exceljs.Workbook();
1493
+ excel_exporter.exportDataGrid({
1494
+ component: e.component,
1495
+ worksheet: workbook.addWorksheet('Main sheet'),
1496
+ autoFilterEnabled: true
1497
+ }).then(function () {
1498
+ workbook.xlsx.writeBuffer().then(function (buffer) {
1499
+ fileSaverEs.saveAs(new Blob([buffer], {
1500
+ type: 'application/octet-stream'
1501
+ }), fileName + '.xlsx');
1502
+ });
1503
+ });
1504
+ } else {
1505
+ var doc = new jsPDF();
1506
+ pdf_exporter.exportDataGrid({
1507
+ jsPDFDocument: doc,
1508
+ component: e.component,
1509
+ indent: 5
1510
+ }).then(function () {
1511
+ doc.save(fileName + '.pdf');
1512
+ });
1513
+ }
1514
+ };
1515
+ var showPageSizeSelectorChange = function showPageSizeSelectorChange(value) {
1516
+ setShowPageSizeSelector(value);
1517
+ };
1518
+ var onEnablePagingChange = function onEnablePagingChange(value) {
1519
+ setEnablePaging(value);
1520
+ refreshGrid();
1521
+ };
1522
+ var handleScrollingTypeChange = function handleScrollingTypeChange(newScrollingType) {
1523
+ console.log(newScrollingType);
1524
+ debugger;
1525
+ refreshGrid();
1526
+ };
1527
+ var onContentReady = function onContentReady() {
1528
+ setLoadPanelEnabled(false);
1529
+ };
1530
+ var refreshGrid = function refreshGrid() {
1531
+ if (dataGridRef.current) {
1532
+ dataGridRef.current.instance.refresh();
1533
+ }
1534
+ };
1535
+ return React__default.createElement(React__default.Fragment, null, React__default.createElement("div", {
1536
+ className: "odsDatagrid",
1537
+ style: {
1538
+ width: "100%",
1539
+ overflowX: 'auto'
1540
+ }
1541
+ }, React__default.createElement(dataGrid.DataGrid, {
1542
+ dataSource: props.dataSource,
1543
+ keyExpr: props.keyExpr,
1544
+ allowColumnResizing: true,
1545
+ columnResizingMode: "widget",
1546
+ onRowInserted: props.onRowInserted,
1547
+ onRowUpdated: props.onRowUpdated,
1548
+ onRowRemoved: props.onRowRemoved,
1549
+ onSaving: props.onSaving,
1550
+ allowColumnReordering: true,
1551
+ showRowLines: true,
1552
+ showBorders: true,
1553
+ ref: dataGridRef,
1554
+ columnAutoWidth: false,
1555
+ onEditCanceling: props.onEditCanceling,
1556
+ onExporting: onExporting,
1557
+ onContentReady: onContentReady
1558
+ }, React__default.createElement(dataGrid.Paging, {
1559
+ enabled: true,
1560
+ defaultPageSize: props.pageSize
1561
+ }), enablePaging && React__default.createElement(dataGrid.Pager, {
1562
+ visible: true,
1563
+ displayMode: "full",
1564
+ showPageSizeSelector: showPageSizeSelector,
1565
+ showNavigationButtons: true,
1566
+ showInfo: true
1567
+ }), props.searchEnable && React__default.createElement(dataGrid.SearchPanel, {
1568
+ visible: true
1569
+ }), props.filterEnable && React__default.createElement(dataGrid.FilterRow, {
1570
+ visible: true
1571
+ }), props.headerFilterEnable && React__default.createElement(dataGrid.HeaderFilter, {
1572
+ visible: true
1573
+ }), React__default.createElement(dataGrid.ColumnChooser, {
1574
+ enabled: true,
1575
+ mode: "select"
1576
+ }, React__default.createElement(dataGrid.Position, {
1577
+ my: "right top",
1578
+ at: "right bottom",
1579
+ of: ".dx-datagrid-column-chooser-button"
1580
+ }), React__default.createElement(dataGrid.ColumnChooserSearch, {
1581
+ enabled: true,
1582
+ editorOptions: searchEditorOptions$2
1583
+ }), React__default.createElement(dataGrid.ColumnChooserSelection, {
1584
+ allowSelectAll: true,
1585
+ selectByClick: true,
1586
+ recursive: true
1587
+ })), props.selectEnable && React__default.createElement(dataGrid.Selection, {
1588
+ mode: "multiple",
1589
+ deferred: true
1590
+ }), React__default.createElement(dataGrid.Scrolling, {
1591
+ mode: 'virtual'
1592
+ }), React__default.createElement(dataGrid.LoadPanel, {
1593
+ enabled: loadPanelEnabled
1594
+ }), props.editEnable === true && React__default.createElement(dataGrid.Editing, {
1595
+ mode: props.edit.mode,
1596
+ allowUpdating: props.edit.allowUpdating,
1597
+ allowDeleting: props.edit.allowDeleting,
1598
+ allowAdding: props.edit.allowAdding,
1599
+ useIcons: true
1600
+ }, props.edit.mode === "popup" && React__default.createElement(dataGrid.Popup, {
1601
+ title: props.popupTitle,
1602
+ showTitle: true,
1603
+ width: 700,
1604
+ height: 300,
1605
+ showCloseButton: false
1606
+ }), React__default.createElement(dataGrid.Form, null, props.formItems.map(function (formItem) {
1607
+ return React__default.createElement(form.Item, {
1608
+ itemType: formItem.itemType,
1609
+ colCount: formItem.colCount,
1610
+ colSpan: formItem.colSpan
1611
+ }, formItem.items.map(function (subItem) {
1612
+ return React__default.createElement(form.Item, {
1613
+ key: subItem.dataField,
1614
+ dataField: subItem.dataField
1615
+ });
1616
+ }));
1617
+ }))), props.exportEnable === true && React__default.createElement(dataGrid.Export, {
1618
+ enabled: true,
1619
+ allowExportSelectedData: true,
1620
+ formats: exportFormats$2
1621
+ }), props.columns.map(function (col) {
1622
+ return React__default.createElement(dataGrid.Column, Object.assign({
1623
+ key: col.dataField
1624
+ }, col, {
1625
+ headerCellRender: headerCellRender,
1626
+ cellRender: col.dataField === 'IsActive' || col.dataField === 'Status' ? customizeBooleanColumnRender$1 : ""
1627
+ }), col.required && React__default.createElement(dataGrid.RequiredRule, {
1628
+ message: col.requiredMessage
1629
+ }), col.dataField === 'IsActive' && React__default.createElement(dataGrid.HeaderFilter, {
1630
+ dataSource: [{
1631
+ text: 'All',
1632
+ value: null
1633
+ }, {
1634
+ text: 'Active',
1635
+ value: true
1636
+ }, {
1637
+ text: 'Passive',
1638
+ value: false
1639
+ }]
1640
+ }));
1641
+ }), function () {
1642
+ if (props.customPopup !== undefined) {
1643
+ return React__default.createElement(dataGrid.Column, {
1644
+ type: "buttons",
1645
+ width: 110
1646
+ }, React__default.createElement(dataGrid.Button, {
1647
+ hint: "Edit",
1648
+ visible: true,
1649
+ disabled: false,
1650
+ icon: "edit",
1651
+ onClick: props.editButtonClick
1652
+ }), React__default.createElement(dataGrid.Button, {
1653
+ hint: "Delete",
1654
+ visible: true,
1655
+ disabled: false,
1656
+ icon: "trash",
1657
+ onClick: props.deleteButtonClick
1658
+ }));
1659
+ } else {
1660
+ return React__default.createElement(dataGrid.Column, {
1661
+ type: "buttons",
1662
+ width: 110
1663
+ }, React__default.createElement(React__default.Fragment, null, props.edit.allowUpdating && React__default.createElement(dataGrid.Button, {
1664
+ name: "edit"
1665
+ }), props.edit.allowDeleting && React__default.createElement(dataGrid.Button, {
1666
+ name: "delete"
1667
+ })));
1668
+ }
1669
+ }(), React__default.createElement(dataGrid.Toolbar, null, React__default.createElement(dataGrid.Item, {
1670
+ location: "after"
1671
+ }, React__default.createElement(OdsButton, {
1672
+ type: "primary",
1673
+ onClick: props.onAddButton
1674
+ }, "Add New")), React__default.createElement(dataGrid.Item, {
1675
+ location: "after"
1676
+ }, React__default.createElement(devextremeReact.CheckBox, {
1677
+ id: 'showPageSizes',
1678
+ text: 'Show Page Size',
1679
+ value: showPageSizeSelector,
1680
+ onValueChange: showPageSizeSelectorChange
1681
+ })), React__default.createElement(dataGrid.Item, {
1682
+ location: "after"
1683
+ }, React__default.createElement(devextremeReact.CheckBox, {
1684
+ id: 'showPages',
1685
+ text: 'Enable Paging',
1686
+ value: enablePaging,
1687
+ onValueChange: onEnablePagingChange
1688
+ })), React__default.createElement(dataGrid.Item, {
1689
+ location: "after"
1690
+ }, React__default.createElement(OdsSelect, {
1691
+ value: "standard",
1692
+ options: [{
1693
+ value: "standard",
1694
+ label: "standard"
1695
+ }, {
1696
+ value: "virtual",
1697
+ label: "Active"
1698
+ }, {
1699
+ value: "infinite",
1700
+ label: "infinite"
1701
+ }],
1702
+ onChange: handleScrollingTypeChange
1703
+ })), React__default.createElement(dataGrid.Item, {
1704
+ name: "columnChooserButton"
1705
+ }), React__default.createElement(dataGrid.Item, {
1706
+ name: "searchPanel"
1707
+ }), React__default.createElement(dataGrid.Item, {
1708
+ name: "exportButton"
1709
+ }), React__default.createElement(dataGrid.Item, {
1710
+ menuItemRender: renderMenuItem$1
1711
+ })))));
1712
+ }
1713
+
1453
1714
  var DxTreeList = function DxTreeList(props) {
1454
1715
  var _useState = React.useState(props.dataSource),
1455
1716
  dataSource = _useState[0];
@@ -1552,6 +1813,7 @@ exports.OdsNotification = OdsNotification;
1552
1813
  exports.OdsParagraph = OdsParagraph;
1553
1814
  exports.OdsPassword = OdsPassword;
1554
1815
  exports.OdsPhoneInput = OdsPhoneInput;
1816
+ exports.OdsProfDataGrid = OdsDataGrid$1;
1555
1817
  exports.OdsRadio = OdsRadio;
1556
1818
  exports.OdsRadioGroup = OdsRadioGroup;
1557
1819
  exports.OdsRangeTimepicker = OdsRangeTimepicker;