ods-component-lib 1.13.7 → 1.13.10

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.
@@ -15,7 +15,7 @@ import { exportDataGrid } from 'devextreme/excel_exporter';
15
15
  import { Workbook } from 'exceljs';
16
16
  import { saveAs } from 'file-saver-es';
17
17
  import moment from 'moment';
18
- import { TreeList } from 'devextreme-react';
18
+ import { CheckBox, TreeList } from 'devextreme-react';
19
19
  import { TreeView } from 'devextreme-react/tree-view';
20
20
 
21
21
  function _extends() {
@@ -1202,7 +1202,7 @@ function grid(props) {
1202
1202
  }, colProperties.column.caption);
1203
1203
  };
1204
1204
  var fileName = props.exportFileName ? props.exportFileName + moment().format("YYYYMMDD") : "DatagridExportFile" + moment().format("YYYYMMDD");
1205
- var onExporting = React.useCallback(function (e) {
1205
+ var onExporting = function onExporting(e) {
1206
1206
  if (e.format === 'excel') {
1207
1207
  var workbook = new Workbook();
1208
1208
  exportDataGrid({
@@ -1226,7 +1226,7 @@ function grid(props) {
1226
1226
  doc.save(fileName + '.pdf');
1227
1227
  });
1228
1228
  }
1229
- }, []);
1229
+ };
1230
1230
  return React.createElement(React.Fragment, null, React.createElement("div", {
1231
1231
  className: "odsDatagrid",
1232
1232
  style: {
@@ -1446,6 +1446,231 @@ function grid$1(props) {
1446
1446
  })));
1447
1447
  }
1448
1448
 
1449
+ var exportFormats$2 = ['xlsx', 'pdf'];
1450
+ var searchEditorOptions$2 = {
1451
+ placeholder: 'Search column'
1452
+ };
1453
+ var renderMenuItem$1 = function renderMenuItem() {
1454
+ return React.createElement(Export, {
1455
+ enabled: true,
1456
+ allowExportSelectedData: true,
1457
+ formats: exportFormats$2
1458
+ });
1459
+ };
1460
+ var customizeBooleanColumnRender$1 = function customizeBooleanColumnRender(e) {
1461
+ var tagColor = e.value ? 'green' : 'gold';
1462
+ return React.createElement(Tag, {
1463
+ color: tagColor
1464
+ }, e.value ? 'Active' : 'Passive');
1465
+ };
1466
+ function OdsDataGrid$1(props) {
1467
+ return grid$2(props);
1468
+ }
1469
+ function grid$2(props) {
1470
+ var _useState = useState(true),
1471
+ showPageSizeSelector = _useState[0],
1472
+ setShowPageSizeSelector = _useState[1];
1473
+ var _useState2 = useState(true),
1474
+ enablePaging = _useState2[0],
1475
+ setEnablePaging = _useState2[1];
1476
+ var headerCellRender = function headerCellRender(colProperties) {
1477
+ return React.createElement("th", {
1478
+ className: "dx-datagrid-headers"
1479
+ }, colProperties.column.caption);
1480
+ };
1481
+ var fileName = props.exportFileName ? props.exportFileName + moment().format("YYYYMMDD") : "DatagridExportFile" + moment().format("YYYYMMDD");
1482
+ var onExporting = function onExporting(e) {
1483
+ if (e.format === 'xlsx') {
1484
+ var workbook = new Workbook();
1485
+ exportDataGrid({
1486
+ component: e.component,
1487
+ worksheet: workbook.addWorksheet('Main sheet'),
1488
+ autoFilterEnabled: true
1489
+ }).then(function () {
1490
+ workbook.xlsx.writeBuffer().then(function (buffer) {
1491
+ saveAs(new Blob([buffer], {
1492
+ type: 'application/octet-stream'
1493
+ }), fileName + '.xlsx');
1494
+ });
1495
+ });
1496
+ } else {
1497
+ var doc = new jsPDF();
1498
+ exportDataGrid$1({
1499
+ jsPDFDocument: doc,
1500
+ component: e.component,
1501
+ indent: 5
1502
+ }).then(function () {
1503
+ doc.save(fileName + '.pdf');
1504
+ });
1505
+ }
1506
+ };
1507
+ var showPageSizeSelectorChange = function showPageSizeSelectorChange(value) {
1508
+ setShowPageSizeSelector(value);
1509
+ };
1510
+ var onEnablePagingChange = function onEnablePagingChange(value) {
1511
+ setEnablePaging(value);
1512
+ };
1513
+ return React.createElement(React.Fragment, null, React.createElement("div", {
1514
+ className: "odsDatagrid",
1515
+ style: {
1516
+ width: "100%",
1517
+ overflowX: 'auto'
1518
+ }
1519
+ }, React.createElement(DataGrid, {
1520
+ dataSource: props.dataSource,
1521
+ keyExpr: props.keyExpr,
1522
+ allowColumnResizing: true,
1523
+ columnResizingMode: "widget",
1524
+ onRowInserted: props.onRowInserted,
1525
+ onRowUpdated: props.onRowUpdated,
1526
+ onRowRemoved: props.onRowRemoved,
1527
+ onSaving: props.onSaving,
1528
+ allowColumnReordering: true,
1529
+ showRowLines: true,
1530
+ showBorders: true,
1531
+ columnAutoWidth: false,
1532
+ onEditCanceling: props.onEditCanceling,
1533
+ onExporting: onExporting
1534
+ }, React.createElement(Paging, {
1535
+ enabled: true,
1536
+ defaultPageSize: props.pageSize
1537
+ }), enablePaging && React.createElement(Pager, {
1538
+ visible: true,
1539
+ displayMode: "full",
1540
+ showPageSizeSelector: showPageSizeSelector,
1541
+ showNavigationButtons: true,
1542
+ showInfo: true
1543
+ }), props.searchEnable && React.createElement(SearchPanel, {
1544
+ visible: true
1545
+ }), props.filterEnable && React.createElement(FilterRow, {
1546
+ visible: true
1547
+ }), props.headerFilterEnable && React.createElement(HeaderFilter, {
1548
+ visible: true
1549
+ }), React.createElement(ColumnChooser, {
1550
+ enabled: true,
1551
+ mode: "select"
1552
+ }, React.createElement(Position, {
1553
+ my: "right top",
1554
+ at: "right bottom",
1555
+ of: ".dx-datagrid-column-chooser-button"
1556
+ }), React.createElement(ColumnChooserSearch, {
1557
+ enabled: true,
1558
+ editorOptions: searchEditorOptions$2
1559
+ }), React.createElement(ColumnChooserSelection, {
1560
+ allowSelectAll: true,
1561
+ selectByClick: true,
1562
+ recursive: true
1563
+ })), props.selectEnable && React.createElement(Selection, {
1564
+ mode: "multiple",
1565
+ deferred: true
1566
+ }), props.editEnable === true && React.createElement(Editing, {
1567
+ mode: props.edit.mode,
1568
+ allowUpdating: props.edit.allowUpdating,
1569
+ allowDeleting: props.edit.allowDeleting,
1570
+ allowAdding: props.edit.allowAdding,
1571
+ useIcons: true
1572
+ }, props.edit.mode === "popup" && React.createElement(Popup, {
1573
+ title: props.popupTitle,
1574
+ showTitle: true,
1575
+ width: 700,
1576
+ height: 300,
1577
+ showCloseButton: false
1578
+ }), React.createElement(Form$1, null, props.formItems.map(function (formItem) {
1579
+ return React.createElement(Item, {
1580
+ itemType: formItem.itemType,
1581
+ colCount: formItem.colCount,
1582
+ colSpan: formItem.colSpan
1583
+ }, formItem.items.map(function (subItem) {
1584
+ return React.createElement(Item, {
1585
+ key: subItem.dataField,
1586
+ dataField: subItem.dataField
1587
+ });
1588
+ }));
1589
+ }))), React.createElement(Scrolling, {
1590
+ mode: props.scrollingMode,
1591
+ rowRenderingMode: props.scrollingMode
1592
+ }), props.exportEnable === true && React.createElement(Export, {
1593
+ enabled: true,
1594
+ allowExportSelectedData: true,
1595
+ formats: exportFormats$2
1596
+ }), props.columns.map(function (col) {
1597
+ return React.createElement(Column, Object.assign({
1598
+ key: col.dataField
1599
+ }, col, {
1600
+ headerCellRender: headerCellRender,
1601
+ cellRender: col.dataField === 'IsActive' || col.dataField === 'Status' ? customizeBooleanColumnRender$1 : ""
1602
+ }), col.required && React.createElement(RequiredRule, {
1603
+ message: col.requiredMessage
1604
+ }), col.dataField === 'IsActive' && React.createElement(HeaderFilter, {
1605
+ dataSource: [{
1606
+ text: 'All',
1607
+ value: null
1608
+ }, {
1609
+ text: 'Active',
1610
+ value: true
1611
+ }, {
1612
+ text: 'Passive',
1613
+ value: false
1614
+ }]
1615
+ }));
1616
+ }), function () {
1617
+ if (props.customPopup !== undefined) {
1618
+ return React.createElement(Column, {
1619
+ type: "buttons",
1620
+ width: 110
1621
+ }, React.createElement(Button$1, {
1622
+ hint: "Edit",
1623
+ visible: true,
1624
+ disabled: false,
1625
+ icon: "edit",
1626
+ onClick: props.editButtonClick
1627
+ }), React.createElement(Button$1, {
1628
+ hint: "Delete",
1629
+ visible: true,
1630
+ disabled: false,
1631
+ icon: "trash",
1632
+ onClick: props.deleteButtonClick
1633
+ }));
1634
+ } else {
1635
+ return React.createElement(Column, {
1636
+ type: "buttons",
1637
+ width: 110
1638
+ }, React.createElement(React.Fragment, null, React.createElement(Button$1, {
1639
+ name: "edit"
1640
+ }), React.createElement(Button$1, {
1641
+ name: "delete"
1642
+ })));
1643
+ }
1644
+ }(), React.createElement(Toolbar, null, React.createElement(Item$1, {
1645
+ location: "after"
1646
+ }, React.createElement(OdsButton, {
1647
+ type: "primary",
1648
+ onClick: props.onAddButton
1649
+ }, "Add New")), React.createElement(Item$1, {
1650
+ location: "after"
1651
+ }, React.createElement(CheckBox, {
1652
+ id: 'showPageSizes',
1653
+ text: 'Show Page Size',
1654
+ value: showPageSizeSelector,
1655
+ onValueChange: showPageSizeSelectorChange
1656
+ })), React.createElement(Item$1, {
1657
+ location: "after"
1658
+ }, React.createElement(CheckBox, {
1659
+ id: 'showPages',
1660
+ text: 'Enable Paging',
1661
+ value: enablePaging,
1662
+ onValueChange: onEnablePagingChange
1663
+ })), React.createElement(Item$1, {
1664
+ name: "columnChooserButton"
1665
+ }), React.createElement(Item$1, {
1666
+ name: "searchPanel"
1667
+ }), React.createElement(Item$1, {
1668
+ name: "exportButton"
1669
+ }), React.createElement(Item$1, {
1670
+ menuItemRender: renderMenuItem$1
1671
+ })))));
1672
+ }
1673
+
1449
1674
  var DxTreeList = function DxTreeList(props) {
1450
1675
  var _useState = useState(props.dataSource),
1451
1676
  dataSource = _useState[0];
@@ -1518,5 +1743,5 @@ var DxTreeView = function DxTreeView(props) {
1518
1743
  }));
1519
1744
  };
1520
1745
 
1521
- export { DxTreeList, DxTreeView, OdsAutoComplete, OdsBasicForm, OdsBasicTable, OdsButton, OdsCalendar, OdsCard, OdsCheckbox, OdsCheckboxGroup, OdsCollapse, OdsDataGrid, OdsDateRangePicker, OdsDateRangePicker as OdsDatepicker, OdsDisplayGrid, OdsDivider, OdsCollapse as OdsDropdown, OdsDropdownButton, OdsImage, OdsInput, OdsInputNumber, OdsLink, OdsList, OdsLogin, OdsMessage, OdsModal, OdsNotification, OdsParagraph, OdsPassword, OdsPhoneInput, OdsRadio, OdsRadioGroup, OdsRangeTimepicker, OdsRate, OdsSearch, OdsSelect, OdsSelectableTable, OdsSpin, OdsSwitch, OdsTab, OdsBasicTable as OdsTable, OdsTag, OdsText, OdsTextArea, OdsTimeline, OdsTimepicker, OdsTitle };
1746
+ export { DxTreeList, DxTreeView, OdsAutoComplete, OdsBasicForm, OdsBasicTable, OdsButton, OdsCalendar, OdsCard, OdsCheckbox, OdsCheckboxGroup, OdsCollapse, OdsDataGrid, OdsDateRangePicker, OdsDateRangePicker as OdsDatepicker, OdsDisplayGrid, OdsDivider, OdsCollapse as OdsDropdown, OdsDropdownButton, OdsImage, OdsInput, OdsInputNumber, OdsLink, OdsList, OdsLogin, OdsMessage, OdsModal, OdsNotification, OdsParagraph, OdsPassword, OdsPhoneInput, OdsDataGrid$1 as OdsProfDataGrid, OdsRadio, OdsRadioGroup, OdsRangeTimepicker, OdsRate, OdsSearch, OdsSelect, OdsSelectableTable, OdsSpin, OdsSwitch, OdsTab, OdsBasicTable as OdsTable, OdsTag, OdsText, OdsTextArea, OdsTimeline, OdsTimepicker, OdsTitle };
1522
1747
  //# sourceMappingURL=index.modern.js.map