ods-component-lib 1.18.40 → 1.18.42

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.
@@ -924,38 +924,79 @@ function OdsRate(props) {
924
924
  var _templateObject$e;
925
925
  var StyledSelect = styled(Select)(_templateObject$e || (_templateObject$e = _taggedTemplateLiteralLoose(["\n width: 100%;\n"])));
926
926
 
927
- function OdsCustomMultiSelect(props) {
928
- var _useState = useState(false),
929
- open = _useState[0],
930
- setOpen = _useState[1];
927
+ var OdsMultiSelect = function OdsMultiSelect(props) {
928
+ var options = props.options,
929
+ selectAllEnabled = props.selectAllEnabled,
930
+ selectAllText = props.selectAllText,
931
+ closeButtonText = props.closeButtonText;
932
+ var _useState = useState([]),
933
+ value = _useState[0],
934
+ setValue = _useState[1];
935
+ var _useState2 = useState(false),
936
+ open = _useState2[0],
937
+ setOpen = _useState2[1];
938
+ var selectAllValue = "OdsMultiSelectOptionAll";
939
+ var newOptions = selectAllEnabled ? [{
940
+ value: selectAllValue,
941
+ label: selectAllText
942
+ }].concat(options) : options;
943
+ var handleChange = function handleChange(newValues) {
944
+ if (newValues && newValues.length && newValues.includes(selectAllValue)) {
945
+ if (newValues.length === options.length + 1) {
946
+ setValue([]);
947
+ return;
948
+ }
949
+ setValue(options.map(function (item) {
950
+ return item.value;
951
+ }));
952
+ return;
953
+ }
954
+ setValue(newValues);
955
+ return;
956
+ };
957
+ var dropdownRender = function dropdownRender(menu) {
958
+ return React.createElement(React.Fragment, null, menu, React.createElement(OdsDivider, {
959
+ style: {
960
+ margin: "8px 0"
961
+ }
962
+ }), React.createElement(Space, {
963
+ style: {
964
+ padding: "0 8px 4px"
965
+ }
966
+ }, React.createElement(OdsButton, {
967
+ style: {
968
+ width: "100%"
969
+ },
970
+ type: "primary",
971
+ onClick: function onClick() {
972
+ return setOpen(false);
973
+ }
974
+ }, closeButtonText != null ? closeButtonText : "Close")));
975
+ };
976
+ var optionRender = function optionRender(option, __info) {
977
+ return React.createElement("div", null, option.data.label, option.data.value == selectAllValue ? React.createElement(OdsDivider, {
978
+ style: {
979
+ margin: "8px 0px 0px 0px"
980
+ }
981
+ }) : "");
982
+ };
931
983
  return React.createElement(React.Fragment, null, React.createElement(ThemeProvider, {
932
984
  theme: lightTheme
933
- }, React.createElement(StyledSelect, Object.assign({}, props, {
985
+ }, React.createElement(StyledSelect, Object.assign({
986
+ mode: "multiple",
987
+ allowClear: true,
988
+ value: value,
934
989
  open: open,
990
+ onChange: handleChange,
991
+ optionRender: optionRender,
992
+ dropdownRender: dropdownRender,
935
993
  onDropdownVisibleChange: function onDropdownVisibleChange(visible) {
936
994
  return setOpen(visible);
937
- },
938
- dropdownRender: function dropdownRender(menu) {
939
- return React.createElement(React.Fragment, null, menu, React.createElement(OdsDivider, {
940
- style: {
941
- margin: '8px 0'
942
- }
943
- }), React.createElement(Space, {
944
- style: {
945
- padding: '0 8px 4px'
946
- }
947
- }, React.createElement(OdsButton, {
948
- style: {
949
- width: "100%"
950
- },
951
- type: "primary",
952
- onClick: function onClick() {
953
- return setOpen(false);
954
- }
955
- }, props.buttonLabel)));
956
995
  }
996
+ }, props, {
997
+ options: newOptions
957
998
  }))));
958
- }
999
+ };
959
1000
 
960
1001
  function OdsSelect(props) {
961
1002
  return React.createElement(React.Fragment, null, React.createElement(ThemeProvider, {
@@ -1532,57 +1573,7 @@ function grid(props) {
1532
1573
  }
1533
1574
 
1534
1575
  var DxTreeList = function DxTreeList(props) {
1535
- var _useState = useState(props.dataSource),
1536
- dataSource = _useState[0];
1537
- var renderReadButtons = function renderReadButtons(data) {
1538
- return React.createElement("div", null, React.createElement(OdsSwitch, {
1539
- onChange: function onChange(checked) {
1540
- return onchangeRead(checked, data);
1541
- },
1542
- checked: data.ReadPermission
1543
- }));
1544
- };
1545
- var renderModifyButtons = function renderModifyButtons(data) {
1546
- return React.createElement("div", null, React.createElement(OdsSwitch, {
1547
- onChange: function onChange(checked) {
1548
- return onchangeModify(checked, data);
1549
- },
1550
- checked: data.ModifyPermission
1551
- }));
1552
- };
1553
- var onchangeModify = function onchangeModify(checked, data) {
1554
- data.ModifyPermission = checked;
1555
- props.onDataChange(dataSource);
1556
- };
1557
- var onchangeRead = function onchangeRead(checked, data) {
1558
- data.ReadPermission = checked;
1559
- props.onDataChange(dataSource);
1560
- };
1561
- return React.createElement(React.Fragment, null, React.createElement(TreeList, {
1562
- id: "Id",
1563
- dataSource: dataSource,
1564
- showRowLines: true,
1565
- showBorders: true,
1566
- columnAutoWidth: true,
1567
- itemsExpr: props.itemsExpr,
1568
- wordWrapEnabled: true,
1569
- dataStructure: "tree"
1570
- }, React.createElement(Column, {
1571
- dataField: "Name",
1572
- caption: "Name"
1573
- }), React.createElement(Column, {
1574
- caption: "Read",
1575
- cellRender: function cellRender(_ref) {
1576
- var data = _ref.data;
1577
- return renderReadButtons(data);
1578
- }
1579
- }), React.createElement(Column, {
1580
- caption: "Modify",
1581
- cellRender: function cellRender(_ref2) {
1582
- var data = _ref2.data;
1583
- return renderModifyButtons(data);
1584
- }
1585
- })));
1576
+ return React.createElement(React.Fragment, null, React.createElement(TreeList, Object.assign({}, props), props.children));
1586
1577
  };
1587
1578
 
1588
1579
  var DxTreeView = function DxTreeView(props) {
@@ -16459,7 +16450,8 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16459
16450
  setIsLoading = _useState2[1];
16460
16451
  var fileName = props.exportFileName ? props.exportFileName + moment().format("YYYYMMDD") : "DatagridExportFile" + moment().format("YYYYMMDD");
16461
16452
  var _useState3 = useState(0),
16462
- filteredRowCount = _useState3[0];
16453
+ filteredRowCount = _useState3[0],
16454
+ setFilteredRowCount = _useState3[1];
16463
16455
  var _useState4 = useState(props.columns),
16464
16456
  columns = _useState4[0],
16465
16457
  setColumns = _useState4[1];
@@ -16733,19 +16725,22 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16733
16725
  }
16734
16726
  }, []);
16735
16727
  var renderTotal = useCallback(function () {
16728
+ var result = "";
16736
16729
  var totalloaded = 0;
16737
16730
  if (data.length < 50 || !props.isServerSide || loadedPageCount == totalPageCount) {
16738
16731
  totalloaded = data.length;
16739
16732
  } else {
16740
16733
  totalloaded = loadedPageCount * props.pageSize;
16741
16734
  }
16742
- var result = "";
16743
- if (filteredRowCount > 0) {
16744
- result = "" + totalloaded + props.customSummary.summaryFilteredDataLabel + (totalRecordCount > 0 ? totalloaded + " " + props.customSummary.summaryLoadedDataLabel + ("- " + totalRecordCount) + props.customSummary.summaryTotalDataLabel : " ");
16745
- } else if (!props.isServerSide && totalloaded > 0) {
16746
- result = totalloaded + " " + props.customSummary.summaryLoadedDataLabel + ("- " + totalloaded) + props.customSummary.summaryTotalDataLabel;
16747
- } else {
16735
+ if (props.isServerSide) {
16748
16736
  result = totalRecordCount > 0 ? totalloaded + " " + props.customSummary.summaryLoadedDataLabel + ("- " + totalRecordCount) + props.customSummary.summaryTotalDataLabel : "";
16737
+ if (filteredRowCount > 0 && totalloaded !== filteredRowCount) {
16738
+ var filteredLabel = filteredRowCount + " " + props.customSummary.summaryFilteredDataLabel + "- ";
16739
+ result = filteredLabel + " " + result;
16740
+ }
16741
+ }
16742
+ if (props.customSummary.summaryTotalCount !== undefined && !props.isServerSide) {
16743
+ result = props.customSummary.summaryTotalDataLabel + " : " + props.customSummary.summaryTotalCount;
16749
16744
  }
16750
16745
  return result;
16751
16746
  }, [data, filteredRowCount, loadedPageCount, props.pageSize, totalRecordCount]);
@@ -16803,6 +16798,11 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16803
16798
  });
16804
16799
  };
16805
16800
  }, [data.length]);
16801
+ var handleContentReady = function handleContentReady(e) {
16802
+ var dataGridInstance = e.component;
16803
+ var filteredDataCount = dataGridInstance.totalCount();
16804
+ setFilteredRowCount(filteredDataCount);
16805
+ };
16806
16806
  return React.createElement(React.Fragment, null, React.createElement(DataGrid$1, {
16807
16807
  keyExpr: props.keyExpr,
16808
16808
  dataSource: data,
@@ -16836,7 +16836,8 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16836
16836
  noDataText: props.noDataText,
16837
16837
  onSaved: props.onSaved,
16838
16838
  onSaving: props.onSaving,
16839
- onEditCanceling: props.onEditCanceling
16839
+ onEditCanceling: props.onEditCanceling,
16840
+ onContentReady: handleContentReady
16840
16841
  }, columns.map(function (col) {
16841
16842
  return React.createElement(Column, Object.assign({
16842
16843
  key: col.dataField
@@ -17004,5 +17005,5 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
17004
17005
  })));
17005
17006
  };
17006
17007
 
17007
- export { DxTreeList, DxTreeView, OdsAlert, OdsAutoComplete, OdsBannerAlert, OdsBasicTable, OdsButton, OdsCalendar, OdsCard, OdsCheckbox, OdsCheckboxGroup, OdsCollapse, OdsCustomMultiSelect, OdsDataGrid, OdsDateRangePicker, OdsDatepicker, OdsDisplayGrid, OdsDivider, OdsCollapse as OdsDropdown, OdsDropdownButton, OdsImage, OdsInput, OdsInputNumber, OdsLink, OdsList, OdsModal, OdsNotification, OdsParagraph, OdsPassword, OdsPhoneInput, OdsRadio, OdsRadioGroup, OdsRangeTimepicker, OdsRate, OdsRemoteDataGrid, OdsSearch, OdsSelect, OdsSelectableTable, OdsSpin, OdsSwitch, OdsTab, OdsBasicTable as OdsTable, OdsTag, OdsText, OdsTextArea, OdsTimeline, OdsTimepicker, OdsTitle };
17008
+ export { DxTreeList, DxTreeView, OdsAlert, OdsAutoComplete, OdsBannerAlert, OdsBasicTable, OdsButton, OdsCalendar, OdsCard, OdsCheckbox, OdsCheckboxGroup, OdsCollapse, OdsDataGrid, OdsDateRangePicker, OdsDatepicker, OdsDisplayGrid, OdsDivider, OdsCollapse as OdsDropdown, OdsDropdownButton, OdsImage, OdsInput, OdsInputNumber, OdsLink, OdsList, OdsModal, OdsMultiSelect, OdsNotification, OdsParagraph, OdsPassword, OdsPhoneInput, OdsRadio, OdsRadioGroup, OdsRangeTimepicker, OdsRate, OdsRemoteDataGrid, OdsSearch, OdsSelect, OdsSelectableTable, OdsSpin, OdsSwitch, OdsTab, OdsBasicTable as OdsTable, OdsTag, OdsText, OdsTextArea, OdsTimeline, OdsTimepicker, OdsTitle };
17008
17009
  //# sourceMappingURL=index.modern.js.map