ods-component-lib 1.18.222 → 1.18.225

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.
@@ -30,7 +30,7 @@ interface IUploadRequestModel {
30
30
  operatorId: number;
31
31
  }
32
32
  declare type FileUploadProps = {
33
- image: any | null;
33
+ file: any | null;
34
34
  title: string;
35
35
  uploadTitle?: string;
36
36
  defaultFileList?: UploadProps["defaultFileList"];
@@ -46,7 +46,7 @@ declare type FileUploadProps = {
46
46
  maxFileSizeMB?: number;
47
47
  moduleType?: number;
48
48
  operatorId?: number;
49
- uploadFile?: (request: IUploadRequestModel) => void;
49
+ uploadFile?: (request: IUploadRequestModel[]) => void;
50
50
  };
51
51
  declare function OdsFileUploadv2(props: FileUploadProps): React.JSX.Element;
52
52
  export default OdsFileUploadv2;
@@ -15,6 +15,10 @@ export interface IMultiCellEditableDataGridProps {
15
15
  onFastUpdateFailed?: (errorInfo: any) => void;
16
16
  }
17
17
  export declare type IActionButtonsTooltipType = "raw" | "styled";
18
+ export interface IActionButtonGroup extends Partial<IButtonGroup> {
19
+ elementType?: "button" | "element";
20
+ element?: JSX.Element;
21
+ }
18
22
  export interface IOdsDataGridProps extends IDataGridOptions, IMultiCellEditableDataGridProps {
19
23
  dataGridPageName?: string;
20
24
  language: string;
@@ -22,7 +26,7 @@ export interface IOdsDataGridProps extends IDataGridOptions, IMultiCellEditableD
22
26
  filterEnabledShow: boolean;
23
27
  pageTitle?: string;
24
28
  toolbarButtonGroup?: IButtonGroup[];
25
- actionButtonGroup?: IButtonGroup[];
29
+ actionButtonGroup?: IActionButtonGroup[];
26
30
  actionButtonGroupCaption?: string;
27
31
  columns: any[];
28
32
  pageSize?: number;
package/dist/index.js CHANGED
@@ -1968,7 +1968,6 @@ var OdsFilterPlus = function OdsFilterPlus(props) {
1968
1968
  activeTabKey = _useState[0],
1969
1969
  setActiveTabKey = _useState[1];
1970
1970
  var advancedRef = React__default.createRef();
1971
- var advanceFilterTabsRows = React.useRef([]);
1972
1971
  var _useState2 = React.useState(true),
1973
1972
  showFilter = _useState2[0],
1974
1973
  setShowFilter = _useState2[1];
@@ -2069,58 +2068,6 @@ var OdsFilterPlus = function OdsFilterPlus(props) {
2069
2068
  return _temp && _temp.then ? _temp.then(_temp2) : _temp2();
2070
2069
  });
2071
2070
  };
2072
- var addAdditionalRowsToAdvanceFilterTabs = function addAdditionalRowsToAdvanceFilterTabs(children) {
2073
- if (children.length > 6) {
2074
- var _advanceFilterTabsRow;
2075
- var additionalRows = children.slice(6).map(function (filterRow) {
2076
- return {
2077
- colSize: filterRow.colSize,
2078
- element: filterRow.element
2079
- };
2080
- });
2081
- (_advanceFilterTabsRow = advanceFilterTabsRows.current).push.apply(_advanceFilterTabsRow, additionalRows);
2082
- }
2083
- };
2084
- var FilterList = function FilterList(_ref2) {
2085
- var isDisplayInline = _ref2.isDisplayInline;
2086
- return React__default.createElement(antd.Row, {
2087
- gutter: 12
2088
- }, filterRow.map(function (item, index) {
2089
- return React__default.createElement(antd.Col, Object.assign({
2090
- key: index
2091
- }, item.colSize || defaultColSize({
2092
- isDisplayInline: isDisplayInline
2093
- }), {
2094
- className: (filterRow === null || filterRow === void 0 ? void 0 : filterRow.length) > 6 ? "mb-4" : ""
2095
- }), item.element);
2096
- }));
2097
- };
2098
- var FilterTabsList = function FilterTabsList(_ref3) {
2099
- var tabs = _ref3.tabs,
2100
- isDisplayInline = _ref3.isDisplayInline;
2101
- advanceFilterTabsRows.current = [];
2102
- tabs.forEach(function (tab) {
2103
- if (tab.children && tab.children.length > 6) {
2104
- addAdditionalRowsToAdvanceFilterTabs(tab.children);
2105
- }
2106
- });
2107
- return React__default.createElement(React__default.Fragment, null, tabs.map(function (tab) {
2108
- return tab.children ? React__default.createElement(antd.Row, {
2109
- gutter: 12,
2110
- key: tab.key
2111
- }, tab.children.slice(0, 6).map(function (filterRow, index) {
2112
- return React__default.createElement(antd.Col, Object.assign({
2113
- key: index,
2114
- xs: 24,
2115
- sm: 12,
2116
- md: 8,
2117
- lg: 4
2118
- }, filterRow.colSize || defaultColSize({
2119
- isDisplayInline: isDisplayInline
2120
- })), filterRow.element);
2121
- })) : null;
2122
- }));
2123
- };
2124
2071
  React.useEffect(function () {
2125
2072
  var _props$tabs;
2126
2073
  var selectedTab = (_props$tabs = props.tabs) === null || _props$tabs === void 0 ? void 0 : _props$tabs.find(function (tab) {
@@ -2130,34 +2077,8 @@ var OdsFilterPlus = function OdsFilterPlus(props) {
2130
2077
  setHasAdvancedFilters(selectedTab.isAdvanceSearchEnable !== false && selectedTab.children.length > 5);
2131
2078
  }
2132
2079
  }, [activeTabKey, props.tabs]);
2133
- var FilterTabsContainer = function FilterTabsContainer() {
2134
- return React__default.createElement(OdsTab, {
2135
- activeKey: activeTabKey,
2136
- onChange: onTabChange,
2137
- items: props.tabs.map(function (tab) {
2138
- return {
2139
- key: tab.key,
2140
- label: tab.label,
2141
- children: React__default.createElement(FilterTabsList, {
2142
- tabs: [tab],
2143
- isDisplayInline: true
2144
- }),
2145
- icon: tab.icon
2146
- };
2147
- })
2148
- });
2149
- };
2150
2080
  var onTabChange = function onTabChange(key) {
2151
2081
  setActiveTabKey(key);
2152
- advanceFilterTabsRows.current = [];
2153
- var selectedTab = props.tabs.find(function (tab) {
2154
- return tab.key === key;
2155
- });
2156
- if (selectedTab && selectedTab.children) {
2157
- if (selectedTab.children.length > 6) {
2158
- addAdditionalRowsToAdvanceFilterTabs(selectedTab.children);
2159
- }
2160
- }
2161
2082
  };
2162
2083
  var ActionButtons = function ActionButtons() {
2163
2084
  return React__default.createElement("div", {
@@ -2255,22 +2176,58 @@ var OdsFilterPlus = function OdsFilterPlus(props) {
2255
2176
  className: styles.filterBody
2256
2177
  }, hasTabFilter && React__default.createElement("div", {
2257
2178
  className: styles.filterInlineDisplayWrapper
2258
- }, React__default.createElement(FilterTabsContainer, null), React__default.createElement("div", {
2179
+ }, React__default.createElement(OdsTab, {
2180
+ activeKey: activeTabKey,
2181
+ onChange: onTabChange,
2182
+ items: props.tabs.map(function (tab) {
2183
+ return {
2184
+ key: tab.key,
2185
+ label: tab.label,
2186
+ children: React__default.createElement(antd.Row, {
2187
+ gutter: 12,
2188
+ key: tab.key
2189
+ }, tab.children ? tab.children.slice(0, 6).map(function (filterRow, index) {
2190
+ return React__default.createElement(antd.Col, Object.assign({
2191
+ key: index,
2192
+ xs: 24,
2193
+ sm: 12,
2194
+ md: 8,
2195
+ lg: 4
2196
+ }, filterRow.colSize || defaultColSize({
2197
+ isDisplayInline: shouldDisplayButtonsInline
2198
+ })), filterRow.element);
2199
+ }) : null),
2200
+ icon: tab.icon
2201
+ };
2202
+ })
2203
+ }), " ", React__default.createElement("div", {
2259
2204
  className: advancedFilterStyles.advancedFilterRowWrapper,
2260
2205
  ref: advancedRef
2261
2206
  }, React__default.createElement("div", {
2262
2207
  className: advancedFilterStyles.advancedFilterRow
2263
2208
  }, React__default.createElement(antd.Row, {
2264
2209
  gutter: [12, 16]
2265
- }, advanceFilterTabsRows.current.map(function (item, index) {
2266
- return React__default.createElement(antd.Col, Object.assign({
2267
- key: index
2268
- }, item.colSize || defaultColSize({})), item.element);
2210
+ }, props.tabs.map(function (tab) {
2211
+ if (tab.key === activeTabKey && tab.children) {
2212
+ var additionalRows = tab.children.slice(6).map(function (filterRow, rowIndex) {
2213
+ return React__default.createElement(antd.Col, Object.assign({
2214
+ key: rowIndex
2215
+ }, filterRow.colSize || defaultColSize({})), filterRow.element);
2216
+ });
2217
+ return additionalRows;
2218
+ }
2219
+ return null;
2269
2220
  })))), shouldDisplayButtonsInline && React__default.createElement(ActionButtons, null)), hasFilterRow && !hasTabFilter && React__default.createElement("div", {
2270
2221
  className: styles.filterInlineDisplayWrapper
2271
- }, React__default.createElement(FilterList, {
2272
- isDisplayInline: shouldDisplayButtonsInline
2273
- }), shouldDisplayButtonsInline && React__default.createElement(ActionButtons, null)), hasAdvancedFilters && !hasTabFilter && React__default.createElement("div", {
2222
+ }, React__default.createElement(antd.Row, {
2223
+ gutter: 12
2224
+ }, filterRow.map(function (item, index) {
2225
+ return React__default.createElement(antd.Col, Object.assign({
2226
+ key: index
2227
+ }, item.colSize || defaultColSize({
2228
+ isDisplayInline: shouldDisplayButtonsInline
2229
+ })), item.element);
2230
+ })), shouldDisplayButtonsInline && React__default.createElement(ActionButtons, null)), hasAdvancedFilters && !hasTabFilter && React__default.createElement("div", {
2274
2231
  className: advancedFilterStyles.advancedFilterRowWrapper,
2275
2232
  ref: advancedRef
2276
2233
  }, React__default.createElement("div", {
@@ -35356,20 +35313,26 @@ var OdsServerSideDatagrid = function OdsServerSideDatagrid(props) {
35356
35313
  }, []);
35357
35314
  function actionCellRender(cellData, props) {
35358
35315
  var kebabMenuButtons = props.actionButtonGroup && props.actionButtonGroup.length > 3 && !props.edit ? props.actionButtonGroup.slice(2).map(function (button) {
35359
- return {
35360
- icon: button.icon,
35361
- onClick: function onClick(event) {
35362
- var customEvent = {
35363
- column: cellData.column,
35364
- component: cellData.component,
35365
- element: cellData.element,
35366
- event: event,
35367
- model: cellData.data,
35368
- row: cellData.row
35369
- };
35370
- button.onClick(customEvent);
35371
- }
35372
- };
35316
+ if (button.elementType === "element" && button.element) {
35317
+ return {
35318
+ icon: button.element
35319
+ };
35320
+ } else {
35321
+ return {
35322
+ icon: button.icon,
35323
+ onClick: function onClick(event) {
35324
+ var customEvent = {
35325
+ column: cellData.column,
35326
+ component: cellData.component,
35327
+ element: cellData.element,
35328
+ event: event,
35329
+ model: cellData.data,
35330
+ row: cellData.row
35331
+ };
35332
+ button.onClick(customEvent);
35333
+ }
35334
+ };
35335
+ }
35373
35336
  }) : [];
35374
35337
  var buttonElements = [];
35375
35338
  {
@@ -36400,7 +36363,7 @@ var ModuleType;
36400
36363
  })(ModuleType || (ModuleType = {}));
36401
36364
  var Text$2 = antd.Typography.Text;
36402
36365
  function OdsFileUploadv2(props) {
36403
- var image = props.image,
36366
+ var file = props.file,
36404
36367
  removeFile = props.removeFile,
36405
36368
  title = props.title,
36406
36369
  uploadTitle = props.uploadTitle,
@@ -36495,23 +36458,19 @@ function OdsFileUploadv2(props) {
36495
36458
  },
36496
36459
  onChange: function onChange(info) {
36497
36460
  if (info.fileList) {
36498
- var updatedFileList = info.fileList.map(function (file) {
36499
- if (file.originFileObj) {
36500
- if (!fileList.includes(file.uid)) {
36501
- uploadFile({
36502
- uid: file.uid,
36503
- file: file.originFileObj,
36504
- fileName: file.name,
36505
- fileType: getFileType(file.name),
36506
- moduleType: moduleType,
36507
- operatorId: operatorId
36508
- });
36509
- }
36510
- }
36511
- return file;
36461
+ var filesToUpload = info.fileList.map(function (file) {
36462
+ return {
36463
+ uid: file.uid,
36464
+ file: file.originFileObj,
36465
+ fileName: file.name,
36466
+ fileType: getFileType(file.name),
36467
+ moduleType: moduleType,
36468
+ operatorId: operatorId
36469
+ };
36512
36470
  });
36513
- setFileList(updatedFileList);
36514
- }
36471
+ uploadFile(filesToUpload);
36472
+ setFileList(info.fileList);
36473
+ } else setFileList(null);
36515
36474
  },
36516
36475
  onRemove: function onRemove(file) {
36517
36476
  confirm({
@@ -36527,14 +36486,16 @@ function OdsFileUploadv2(props) {
36527
36486
  return item.uid !== file.uid;
36528
36487
  });
36529
36488
  setFileList(updatedFileList);
36530
- removeFile && removeFile({
36531
- uid: file.uid,
36532
- file: file.originFileObj,
36533
- fileName: file.name,
36534
- fileType: getFileType(file.name),
36535
- moduleType: moduleType,
36536
- operatorId: operatorId
36537
- });
36489
+ if (removeFile) {
36490
+ removeFile({
36491
+ uid: file.uid,
36492
+ file: file.originFileObj,
36493
+ fileName: file.name,
36494
+ fileType: getFileType(file.name),
36495
+ moduleType: moduleType,
36496
+ operatorId: operatorId
36497
+ });
36498
+ }
36538
36499
  },
36539
36500
  onCancel: function onCancel() {}
36540
36501
  });
@@ -36549,11 +36510,11 @@ function OdsFileUploadv2(props) {
36549
36510
  return setPreviewOpen(false);
36550
36511
  };
36551
36512
  var handlePreview = function handlePreview() {
36552
- setPreviewOpen(true);
36513
+ return setPreviewOpen(true);
36553
36514
  };
36554
36515
  React.useEffect(function () {
36555
- if (image) {
36556
- var formattedFiles = isMultipleDoc ? image.map(function (file) {
36516
+ if (file) {
36517
+ var formattedFiles = isMultipleDoc ? file.map(function (file) {
36557
36518
  return {
36558
36519
  uid: file.uid,
36559
36520
  name: file.filename,
@@ -36564,11 +36525,11 @@ function OdsFileUploadv2(props) {
36564
36525
  uid: v4(),
36565
36526
  name: "file",
36566
36527
  status: "done",
36567
- url: image
36528
+ url: file
36568
36529
  }];
36569
36530
  setFileList(formattedFiles);
36570
36531
  }
36571
- }, [image]);
36532
+ }, [file]);
36572
36533
  var renderPreviewContent = function renderPreviewContent(fileName, previewSrc) {
36573
36534
  if (previewSrc === null) {
36574
36535
  return "";
@@ -37917,22 +37878,30 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
37917
37878
  }, [data, filteredRowCount, constants$2.loadedPageCount, props.pageSize, constants$2.totalRecordCount, filterApplied.current]);
37918
37879
  function actionCellRender(cellData, props) {
37919
37880
  var kebabMenuButtons = props.actionButtonGroup && props.actionButtonGroup.length >= 2 && !props.edit ? props.actionButtonGroup.slice(2).map(function (button) {
37920
- return {
37921
- icon: React__default.createElement(DynamicIcon, {
37922
- iconName: button.icon
37923
- }),
37924
- onClick: function onClick(event) {
37925
- var customEvent = {
37926
- column: cellData.column,
37927
- component: cellData.component,
37928
- element: cellData.element,
37929
- event: event,
37930
- model: cellData.data,
37931
- row: cellData.row
37932
- };
37933
- button.onClick(customEvent);
37934
- }
37935
- };
37881
+ if (button.elementType === "element" && button.element) {
37882
+ return {
37883
+ icon: button.element
37884
+ };
37885
+ } else {
37886
+ return {
37887
+ icon: React__default.createElement(DynamicIcon, {
37888
+ iconName: button.icon
37889
+ }),
37890
+ onClick: function onClick(event) {
37891
+ var customEvent = {
37892
+ column: cellData.column,
37893
+ component: cellData.component,
37894
+ element: cellData.element,
37895
+ event: event,
37896
+ model: cellData.data,
37897
+ row: cellData.row
37898
+ };
37899
+ if (button.onClick) {
37900
+ button.onClick(customEvent);
37901
+ }
37902
+ }
37903
+ };
37904
+ }
37936
37905
  }) : [];
37937
37906
  var buttonElements = [];
37938
37907
  {