ods-component-lib 1.18.259 → 1.18.261

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.
@@ -23,7 +23,7 @@ import { saveAs as saveAs$1 } from 'file-saver';
23
23
  import 'devextreme/dist/css/dx.light.css';
24
24
  import DataSource from 'devextreme/data/data_source';
25
25
  import query from 'devextreme/data/query';
26
- import { Gantt, ContextMenu, Column as Column$1, Tasks, Sorting as Sorting$1, HeaderFilter as HeaderFilter$1, FilterRow as FilterRow$1, Toolbar as Toolbar$2, Item as Item$2 } from 'devextreme-react/gantt';
26
+ import { Gantt, HeaderFilter as HeaderFilter$1, FilterRow as FilterRow$1, Toolbar as Toolbar$2, Item as Item$2, ContextMenu, Column as Column$1, Tasks, Sorting as Sorting$1 } from 'devextreme-react/gantt';
27
27
  import 'jspdf-autotable';
28
28
  import { Button as Button$2 } from 'devextreme-react/button';
29
29
 
@@ -56753,7 +56753,7 @@ var OdsTimelineTableColumnChooser = function OdsTimelineTableColumnChooser(props
56753
56753
  var initialSelectedColumns = props.items.filter(function (item) {
56754
56754
  return item.visible !== false;
56755
56755
  });
56756
- var _useState = useState(false),
56756
+ var _useState = useState(props.open),
56757
56757
  open = _useState[0],
56758
56758
  setOpen = _useState[1];
56759
56759
  var _useState2 = useState(props.items),
@@ -56842,62 +56842,66 @@ var OdsTimelineTableColumnChooser = function OdsTimelineTableColumnChooser(props
56842
56842
  })),
56843
56843
  selectAll = _useState4[0],
56844
56844
  setSelectAll = _useState4[1];
56845
- var content = React.createElement("div", {
56846
- key: "OdsTimelineTableColumnChooser_content",
56847
- className: timelineTableStyles.columnChooserPopup
56848
- }, React.createElement("div", {
56849
- key: "OdsTimelineTableColumnChooser_header",
56850
- className: timelineTableStyles.columnChooserHeader
56851
- }, React.createElement("span", {
56852
- key: "OdsTimelineTableColumnChooser_title"
56853
- }, props.title), React.createElement("span", {
56854
- key: "OdsTimelineTableColumnChooser_closebutton",
56855
- className: timelineTableStyles.columnChooserCloseButton
56856
- }, React.createElement(CrossIcon, {
56857
- style: {
56858
- cursor: "pointer"
56859
- },
56860
- onClick: function onClick() {
56861
- return setOpen(false);
56862
- }
56863
- }))), React.createElement(OdsInput, {
56864
- key: "OdsTimelineTableColumnChooser_OdsSearch",
56865
- prefix: React.createElement("span", {
56866
- className: "dx-icon-search " + timelineTableStyles.searchBoxIcon
56867
- }),
56868
- className: timelineTableStyles.columnChooserSearchbox,
56869
- onChange: function onChange(e) {
56870
- return filterColumns(e.target.value);
56871
- }
56872
- }), React.createElement(OdsCheckbox, {
56873
- key: "OdsTimelineTableColumnChooser_SelectAll",
56874
- className: timelineTableStyles.columnChooserCheckbox,
56875
- checked: selectAll,
56876
- onChange: function onChange(e) {
56877
- return selectAllChanged(e.target.checked);
56878
- }
56879
- }, props.selectAllText), React.createElement(Divider, {
56880
- key: "OdsTimelineTableColumnChooser_Divider",
56881
- className: timelineTableStyles.columnChooserDivider
56882
- }), columns.map(function (_column, index) {
56845
+ var content = useMemo(function () {
56883
56846
  return React.createElement("div", {
56884
- key: "OdsTimelineTableColumnChooser_columns_item_" + index
56885
- }, React.createElement(OdsCheckbox, {
56886
- key: "OdsTimelineTableColumnChooser_OdsCheckbox_" + index,
56847
+ key: "OdsTimelineTableColumnChooser_content",
56848
+ className: timelineTableStyles.columnChooserPopup
56849
+ }, React.createElement("div", {
56850
+ key: "OdsTimelineTableColumnChooser_header",
56851
+ className: timelineTableStyles.columnChooserHeader
56852
+ }, React.createElement("span", {
56853
+ key: "OdsTimelineTableColumnChooser_title"
56854
+ }, props.title), React.createElement("span", {
56855
+ key: "OdsTimelineTableColumnChooser_closebutton",
56856
+ className: timelineTableStyles.columnChooserCloseButton
56857
+ }, React.createElement(CrossIcon, {
56858
+ style: {
56859
+ cursor: "pointer"
56860
+ },
56861
+ onClick: function onClick() {
56862
+ setOpen(false);
56863
+ props.onVisibilityChanged && props.onVisibilityChanged(false);
56864
+ }
56865
+ }))), React.createElement(OdsInput, {
56866
+ key: "OdsTimelineTableColumnChooser_OdsSearch",
56867
+ prefix: React.createElement("span", {
56868
+ className: "dx-icon-search " + timelineTableStyles.searchBoxIcon
56869
+ }),
56870
+ className: timelineTableStyles.columnChooserSearchbox,
56871
+ onChange: function onChange(e) {
56872
+ return filterColumns(e.target.value);
56873
+ }
56874
+ }), React.createElement(OdsCheckbox, {
56875
+ key: "OdsTimelineTableColumnChooser_SelectAll",
56887
56876
  className: timelineTableStyles.columnChooserCheckbox,
56888
- checked: isSelected(_column.columnName),
56877
+ checked: selectAll,
56889
56878
  onChange: function onChange(e) {
56890
- return selectChanged(e.target.checked, _column);
56879
+ return selectAllChanged(e.target.checked);
56891
56880
  }
56892
- }, _column.columnCaption));
56893
- }));
56881
+ }, props.selectAllText), React.createElement(Divider, {
56882
+ key: "OdsTimelineTableColumnChooser_Divider",
56883
+ className: timelineTableStyles.columnChooserDivider
56884
+ }), columns.map(function (_column, index) {
56885
+ return React.createElement("div", {
56886
+ key: "OdsTimelineTableColumnChooser_columns_item_" + index
56887
+ }, React.createElement(OdsCheckbox, {
56888
+ key: "OdsTimelineTableColumnChooser_OdsCheckbox_" + index,
56889
+ className: timelineTableStyles.columnChooserCheckbox,
56890
+ checked: isSelected(_column.columnName),
56891
+ onChange: function onChange(e) {
56892
+ return selectChanged(e.target.checked, _column);
56893
+ }
56894
+ }, _column.columnCaption));
56895
+ }));
56896
+ }, [open, columns]);
56894
56897
  return React.createElement(React.Fragment, null, React.createElement(Popover, {
56895
56898
  open: open,
56896
56899
  content: content
56897
56900
  }, React.createElement(Button$2, {
56898
56901
  icon: "columnchooser",
56899
56902
  onClick: function onClick() {
56900
- return setOpen(true);
56903
+ setOpen(true);
56904
+ props.onVisibilityChanged && props.onVisibilityChanged(true);
56901
56905
  }
56902
56906
  })));
56903
56907
  };
@@ -56910,7 +56914,7 @@ var callAddFont = function callAddFont() {
56910
56914
  jsPDF$1.API.events.push(['addFonts', callAddFont]);
56911
56915
 
56912
56916
  var OdsTimelineTable = forwardRef(function (props, ref) {
56913
- var _toolbarSettings$sear, _toolbarSettings$sear5, _toolbarSettings$expo12, _toolbarSettings$expo13, _toolbarSettings$expo14, _toolbarSettings$expo15, _toolbarSettings$expo19, _toolbarSettings$expo20, _toolbarSettings$expo21, _toolbarSettings$colu, _props$toolbarSetting5, _props$toolbarSetting6, _props$toolbarSetting7, _props$toolbarSetting8;
56917
+ var _toolbarSettings$sear, _toolbarSettings$sear5, _toolbarSettings$expo12, _toolbarSettings$expo13, _toolbarSettings$expo14, _toolbarSettings$expo15, _toolbarSettings$expo19, _toolbarSettings$expo20, _toolbarSettings$expo21, _toolbarSettings$colu;
56914
56918
  var customColumns = props.customColumns,
56915
56919
  customTasks = props.customTasks,
56916
56920
  customTaskKey = props.customTaskKey,
@@ -56929,10 +56933,10 @@ var OdsTimelineTable = forwardRef(function (props, ref) {
56929
56933
  var refGantt = useRef(null);
56930
56934
  var refGanttExportable = useRef(null);
56931
56935
  var refDataGridExportable = useRef(null);
56932
- var _useState = useState(startDateRange != null ? startDateRange : Constants.timelineDefaultStartDate),
56936
+ var _useState = useState(Constants.timelineDefaultStartDate),
56933
56937
  startDate = _useState[0],
56934
56938
  setStartDate = _useState[1];
56935
- var _useState2 = useState(endDateRange != null ? endDateRange : Constants.timelineDefaultEndDate),
56939
+ var _useState2 = useState(Constants.timelineDefaultEndDate),
56936
56940
  endDate = _useState2[0],
56937
56941
  setEndDate = _useState2[1];
56938
56942
  var _useState3 = useState([]),
@@ -56963,11 +56967,8 @@ var OdsTimelineTable = forwardRef(function (props, ref) {
56963
56967
  })),
56964
56968
  unvisibleColumnNames = _useState9[0];
56965
56969
  var _useState10 = useState(false),
56966
- exportPdfModalOpen = _useState10[0],
56967
- setExportPdfModalOpen = _useState10[1];
56968
- var _useState11 = useState(false),
56969
- exporting = _useState11[0],
56970
- setExporting = _useState11[1];
56970
+ columnChooserOpen = _useState10[0],
56971
+ setColumnChooserOpen = _useState10[1];
56971
56972
  var originalSortingMode = sorting.mode === undefined || sorting.mode === "" ? "none" : sorting.mode;
56972
56973
  var sortingMode = sortingProcess == "ServerSideSorting" ? "none" : originalSortingMode;
56973
56974
  var showSortIndexes = sortingProcess == "ServerSideSorting" ? false : sorting.showSortIndexes;
@@ -56978,11 +56979,27 @@ var OdsTimelineTable = forwardRef(function (props, ref) {
56978
56979
  useEffect(function () {
56979
56980
  updateExportableTasks();
56980
56981
  }, [timelineTasks]);
56982
+ useEffect(function () {
56983
+ setStartDate(startDateRange);
56984
+ }, [startDateRange]);
56985
+ useEffect(function () {
56986
+ setEndDate(endDateRange);
56987
+ }, [endDateRange]);
56981
56988
  useEffect(function () {
56982
56989
  if (sortingChangeEventProps.columnHeaderProps !== null) {
56983
56990
  onSortingChanged && onSortingChanged(sortingChangeEventProps.sortedColumns, sortingChangeEventProps.columnHeaderProps);
56984
56991
  }
56985
56992
  }, [sortingChangeEventProps]);
56993
+ var getTimelineStartDate = function getTimelineStartDate() {
56994
+ var newSD = startDate;
56995
+ newSD.setDate(1);
56996
+ return newSD;
56997
+ };
56998
+ var getTimelineEndDate = function getTimelineEndDate() {
56999
+ var newED = endDate;
57000
+ newED = moment(newED).add(1, "months").set("date", 28).toDate();
57001
+ return newED;
57002
+ };
56986
57003
  var actionButtons = useMemo(function () {
56987
57004
  if (actionColumnSettings.actionButtonGroup) {
56988
57005
  if (actionColumnSettings.actionButtonGroup.length > 3) {
@@ -57007,8 +57024,7 @@ var OdsTimelineTable = forwardRef(function (props, ref) {
57007
57024
  setExportableTasks(result);
57008
57025
  };
57009
57026
  var prepareTimelineTasks = function prepareTimelineTasks(tasks, selectedKeys) {
57010
- var _tasks = mapSelectedKeys(tasks.map(mapCustomTask), customTaskKey, multiSelectionEnabled ? selectedKeys : selectedKeys.length > 0 ? selectedKeys[0] : []);
57011
- setTimelineTasks(_tasks);
57027
+ setTimelineTasks(mapSelectedKeys(tasks.map(mapCustomTask), customTaskKey, multiSelectionEnabled ? selectedKeys : selectedKeys.length > 0 ? selectedKeys[0] : []));
57012
57028
  };
57013
57029
  var getSelectedRowsData = function getSelectedRowsData() {
57014
57030
  return timelineTasks.filter(function (item) {
@@ -57248,8 +57264,7 @@ var OdsTimelineTable = forwardRef(function (props, ref) {
57248
57264
  }).then(function (doc) {
57249
57265
  return doc.save(getExportFileName());
57250
57266
  })["finally"](function () {
57251
- setExporting(false);
57252
- setExportPdfModalOpen(false);
57267
+ return exportableTimelineTable.repaint();
57253
57268
  });
57254
57269
  };
57255
57270
  var getExportFileName = function getExportFileName() {
@@ -57284,41 +57299,6 @@ var OdsTimelineTable = forwardRef(function (props, ref) {
57284
57299
  });
57285
57300
  return newExportedColumns;
57286
57301
  }, [exportableTasks, columnList]);
57287
- var exportableTimelineTable = React.createElement(React.Fragment, null, React.createElement(Spin, {
57288
- size: "large",
57289
- spinning: exporting
57290
- }, React.createElement("div", {
57291
- style: {
57292
- overflowX: "auto",
57293
- overflowY: "auto",
57294
- paddingTop: 20
57295
- }
57296
- }, React.createElement(Gantt, Object.assign({
57297
- key: "OdsTimelineTableExportable",
57298
- width: "100%",
57299
- height: 500,
57300
- startDateRange: startDate,
57301
- endDateRange: endDate,
57302
- taskContentRender: function taskContentRender(params) {
57303
- return React.createElement(OdsTimelineTableTaskTemplate, Object.assign({}, params));
57304
- }
57305
- }, props, {
57306
- ref: refGanttExportable,
57307
- sorting: {
57308
- mode: "none",
57309
- showSortIndexes: false
57310
- }
57311
- }), React.createElement(ContextMenu, {
57312
- enabled: false
57313
- }), exportedColumns.map(function (columnProps, index) {
57314
- return React.createElement(Column$1, Object.assign({}, columnProps, {
57315
- key: "TimelineTable_ExportPdfColumn_" + index
57316
- }));
57317
- }), React.createElement(Tasks, {
57318
- dataSource: exportableTasks
57319
- }), children, React.createElement(Sorting$1, {
57320
- mode: "none"
57321
- })))));
57322
57302
  useImperativeHandle(ref, function () {
57323
57303
  return {
57324
57304
  getSelectedRowsData: getSelectedRowsData,
@@ -57330,8 +57310,8 @@ var OdsTimelineTable = forwardRef(function (props, ref) {
57330
57310
  key: "OdsTimelineTable",
57331
57311
  width: "100%",
57332
57312
  height: 500,
57333
- startDateRange: startDate,
57334
- endDateRange: endDate,
57313
+ startDateRange: getTimelineStartDate(),
57314
+ endDateRange: getTimelineEndDate(),
57335
57315
  taskContentRender: function taskContentRender(params) {
57336
57316
  return React.createElement(OdsTimelineTableTaskTemplate, Object.assign({}, params));
57337
57317
  }
@@ -57386,8 +57366,7 @@ var OdsTimelineTable = forwardRef(function (props, ref) {
57386
57366
  icon: "exportpdf",
57387
57367
  onClick: function onClick() {
57388
57368
  if (exportableTasks.length > 0) {
57389
- setExportPdfModalOpen(true);
57390
- setExporting(true);
57369
+ exportPdf();
57391
57370
  } else {
57392
57371
  var _toolbarSettings$expo16, _toolbarSettings$expo17, _toolbarSettings$expo18;
57393
57372
  OdsNotification({
@@ -57401,7 +57380,19 @@ var OdsTimelineTable = forwardRef(function (props, ref) {
57401
57380
  }, {
57402
57381
  text: (_toolbarSettings$expo19 = toolbarSettings === null || toolbarSettings === void 0 ? void 0 : (_toolbarSettings$expo20 = toolbarSettings["export"]) === null || _toolbarSettings$expo20 === void 0 ? void 0 : (_toolbarSettings$expo21 = _toolbarSettings$expo20.excel) === null || _toolbarSettings$expo21 === void 0 ? void 0 : _toolbarSettings$expo21.title) != null ? _toolbarSettings$expo19 : "Export to Excel",
57403
57382
  icon: "exportxlsx",
57404
- onClick: exportExcel
57383
+ onClick: function onClick() {
57384
+ if (exportableTasks.length > 0) {
57385
+ exportExcel();
57386
+ } else {
57387
+ var _toolbarSettings$expo22, _toolbarSettings$expo23, _toolbarSettings$expo24;
57388
+ OdsNotification({
57389
+ title: "",
57390
+ content: (_toolbarSettings$expo22 = toolbarSettings === null || toolbarSettings === void 0 ? void 0 : (_toolbarSettings$expo23 = toolbarSettings["export"]) === null || _toolbarSettings$expo23 === void 0 ? void 0 : (_toolbarSettings$expo24 = _toolbarSettings$expo23.messages) === null || _toolbarSettings$expo24 === void 0 ? void 0 : _toolbarSettings$expo24.noRecord) != null ? _toolbarSettings$expo22 : "No record",
57391
+ type: "warning",
57392
+ placement: "bottom"
57393
+ });
57394
+ }
57395
+ }
57405
57396
  }]
57406
57397
  }]
57407
57398
  }
@@ -57412,6 +57403,10 @@ var OdsTimelineTable = forwardRef(function (props, ref) {
57412
57403
  component: function component(props) {
57413
57404
  var _toolbarSettings$colu2, _toolbarSettings$colu3, _toolbarSettings$colu4, _toolbarSettings$colu5;
57414
57405
  return OdsTimelineTableColumnChooser(_extends({}, props, {
57406
+ open: columnChooserOpen,
57407
+ onVisibilityChanged: function onVisibilityChanged(visible) {
57408
+ return setColumnChooserOpen(visible);
57409
+ },
57415
57410
  title: (_toolbarSettings$colu2 = toolbarSettings === null || toolbarSettings === void 0 ? void 0 : (_toolbarSettings$colu3 = toolbarSettings.columnChooser) === null || _toolbarSettings$colu3 === void 0 ? void 0 : _toolbarSettings$colu3.title) != null ? _toolbarSettings$colu2 : "Column Chooser",
57416
57411
  selectAllText: (_toolbarSettings$colu4 = toolbarSettings === null || toolbarSettings === void 0 ? void 0 : (_toolbarSettings$colu5 = toolbarSettings.columnChooser) === null || _toolbarSettings$colu5 === void 0 ? void 0 : _toolbarSettings$colu5.selectAllText) != null ? _toolbarSettings$colu4 : "Select All",
57417
57412
  items: columnList.filter(function (item) {
@@ -57457,7 +57452,8 @@ var OdsTimelineTable = forwardRef(function (props, ref) {
57457
57452
  }, columnProps));
57458
57453
  }
57459
57454
  }), actionColumnSettings.actionColumnEnable != false ? React.createElement(Column$1, Object.assign({
57460
- key: "OdsTimelineColumn_Actions"
57455
+ key: "OdsTimelineColumn_Actions",
57456
+ width: 100
57461
57457
  }, actionColumnProps, {
57462
57458
  caption: actionColumnSettings.actionButtonGroupCaption,
57463
57459
  cssClass: "actionButtonGroupCell",
@@ -57469,23 +57465,20 @@ var OdsTimelineTable = forwardRef(function (props, ref) {
57469
57465
  }), children, React.createElement(Sorting$1, {
57470
57466
  mode: sortingMode,
57471
57467
  showSortIndexes: showSortIndexes
57472
- })), React.createElement(Modal, {
57473
- title: (_props$toolbarSetting5 = (_props$toolbarSetting6 = props.toolbarSettings) === null || _props$toolbarSetting6 === void 0 ? void 0 : (_props$toolbarSetting7 = _props$toolbarSetting6["export"]) === null || _props$toolbarSetting7 === void 0 ? void 0 : (_props$toolbarSetting8 = _props$toolbarSetting7.pdf) === null || _props$toolbarSetting8 === void 0 ? void 0 : _props$toolbarSetting8.loadingText) != null ? _props$toolbarSetting5 : "Exporting to Pdf",
57474
- width: 1200,
57475
- open: exportPdfModalOpen,
57476
- closable: false,
57477
- footer: "",
57478
- afterOpenChange: function afterOpenChange(open) {
57479
- if (open) {
57480
- var _exportableTimelineTable = refGanttExportable.current.instance;
57481
- _exportableTimelineTable.refresh().then(function () {
57482
- setTimeout(function () {
57483
- return exportPdf();
57484
- }, 2000);
57485
- });
57486
- }
57487
- }
57488
- }, exportableTimelineTable), React.createElement(DataGrid$1, {
57468
+ })), React.createElement(Gantt, Object.assign({}, props, {
57469
+ startDateRange: getTimelineStartDate(),
57470
+ endDateRange: getTimelineEndDate(),
57471
+ width: 0,
57472
+ height: 0,
57473
+ ref: refGanttExportable,
57474
+ key: "OdsTimelineTable_Export"
57475
+ }), exportedColumns.map(function (columnProps, index) {
57476
+ return React.createElement(Column$1, Object.assign({}, columnProps, {
57477
+ key: "TimelineTable_ExportPdfColumn_" + index
57478
+ }));
57479
+ }), React.createElement(Tasks, {
57480
+ dataSource: exportableTasks
57481
+ }), children), React.createElement(DataGrid$1, {
57489
57482
  key: "DataGrid_Export",
57490
57483
  ref: refDataGridExportable,
57491
57484
  className: "odsTimelineTable-ExportDataGrid",