@bigbinary/neeto-approvals-frontend 0.2.8 → 0.2.9
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.cjs.js +156 -160
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.js +159 -164
- package/dist/index.js.map +1 -1
- package/package.json +4 -3
package/dist/index.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import React, {
|
|
1
|
+
import React, { useState, useEffect, useRef } from 'react';
|
|
2
2
|
import Container from '@bigbinary/neeto-molecules/Container';
|
|
3
|
-
import { useLocation, useHistory,
|
|
3
|
+
import { Link, useLocation, useHistory, Switch, Route, Redirect, useParams } from 'react-router-dom';
|
|
4
4
|
import i18next, { t as t$1 } from 'i18next';
|
|
5
5
|
import { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE, PLURAL, SINGULAR } from '@bigbinary/neeto-commons-frontend/constants';
|
|
6
|
-
import { Button, Tag, Pane, Typography, Label, Textarea, Table as Table$1, NoData,
|
|
7
|
-
import { curryN, isNil, curry, complement, either, isEmpty,
|
|
6
|
+
import { Button, Tag, Pane, Typography, Label, Textarea, Table as Table$1, NoData, Alert, Tab as Tab$1, Select as Select$1, Callout } from '@bigbinary/neetoui';
|
|
7
|
+
import { curryN, isNil, curry, complement, either, isEmpty, keys } from 'ramda';
|
|
8
8
|
import { useMutationWithInvalidation, useDebounce, withT } from '@bigbinary/neeto-commons-frontend/react-utils';
|
|
9
9
|
import { useTranslation, Trans } from 'react-i18next';
|
|
10
10
|
import { useQuery, useQueryClient } from 'react-query';
|
|
@@ -19,8 +19,8 @@ import { removeBy, findById } from '@bigbinary/neeto-commons-frontend/pure';
|
|
|
19
19
|
import PageLoader from '@bigbinary/neeto-molecules/PageLoader';
|
|
20
20
|
import { Form as Form$2, Input, Textarea as Textarea$1, Select } from '@bigbinary/neetoui/formik';
|
|
21
21
|
import * as yup from 'yup';
|
|
22
|
-
import { MenuHorizontal } from '@bigbinary/neeto-icons';
|
|
23
22
|
import TableWrapper from '@bigbinary/neeto-molecules/TableWrapper';
|
|
23
|
+
import MoreDropdown from '@bigbinary/neeto-molecules/MoreDropdown';
|
|
24
24
|
import NeetoHeader from '@bigbinary/neeto-molecules/Header';
|
|
25
25
|
|
|
26
26
|
function _typeof$1(obj) {
|
|
@@ -132,35 +132,6 @@ var routes = {
|
|
|
132
132
|
"public": "approvals/public/request/:id"
|
|
133
133
|
};
|
|
134
134
|
|
|
135
|
-
new URLSearchParams(window.location.search);
|
|
136
|
-
var DEFAULT_FILTER_VALUES = {
|
|
137
|
-
searchTerm: "",
|
|
138
|
-
sortBy: "",
|
|
139
|
-
orderBy: ""
|
|
140
|
-
};
|
|
141
|
-
var SEARCH_DELAY = 750;
|
|
142
|
-
var STATUSES = {
|
|
143
|
-
approved: "approved",
|
|
144
|
-
rejected: "rejected",
|
|
145
|
-
pending: "pending",
|
|
146
|
-
cancelled: "cancelled"
|
|
147
|
-
};
|
|
148
|
-
var STATUS_TAG_STYLE = {
|
|
149
|
-
pending: "primary",
|
|
150
|
-
approved: "success",
|
|
151
|
-
rejected: "danger",
|
|
152
|
-
cancelled: "warning"
|
|
153
|
-
};
|
|
154
|
-
var APPROVAL_REQUEST_FORM_INITIAL_VALUES = {
|
|
155
|
-
message: "",
|
|
156
|
-
additionalInfo: ""
|
|
157
|
-
};
|
|
158
|
-
var STATUS_UPDATED_BY = {
|
|
159
|
-
rejected: t$1("neetoApprovals.common.rejectedBy"),
|
|
160
|
-
approved: t$1("neetoApprovals.common.approvedBy"),
|
|
161
|
-
cancelled: t$1("neetoApprovals.common.cancelledBy")
|
|
162
|
-
};
|
|
163
|
-
|
|
164
135
|
function _arrayWithHoles(arr) {
|
|
165
136
|
if (Array.isArray(arr)) return arr;
|
|
166
137
|
}
|
|
@@ -286,9 +257,9 @@ var findBy = /*#__PURE__*/curry(function (pattern, array) {
|
|
|
286
257
|
return array.find(matches(pattern));
|
|
287
258
|
});
|
|
288
259
|
|
|
289
|
-
var handleEmptyPage = function handleEmptyPage(data, pageProperties,
|
|
260
|
+
var handleEmptyPage = function handleEmptyPage(data, pageProperties, handlePageChange) {
|
|
290
261
|
if (isEmpty(data) && pageProperties.page !== 1) {
|
|
291
|
-
|
|
262
|
+
handlePageChange(pageProperties.page - 1, pageProperties.pageSize);
|
|
292
263
|
}
|
|
293
264
|
};
|
|
294
265
|
|
|
@@ -349,49 +320,62 @@ var useUpdateRequest = function useUpdateRequest(options) {
|
|
|
349
320
|
}, options));
|
|
350
321
|
};
|
|
351
322
|
|
|
352
|
-
var useUrlSearchParams = function useUrlSearchParams() {
|
|
353
|
-
var _useLocation = useLocation(),
|
|
354
|
-
search = _useLocation.search;
|
|
355
|
-
return useMemo(function () {
|
|
356
|
-
return new URLSearchParams(search);
|
|
357
|
-
}, [search]);
|
|
358
|
-
};
|
|
359
|
-
|
|
360
323
|
var usePaginate = function usePaginate() {
|
|
361
|
-
var urlParams = useUrlSearchParams();
|
|
362
324
|
var _useState = useState({
|
|
363
|
-
page:
|
|
364
|
-
pageSize:
|
|
325
|
+
page: DEFAULT_PAGE_INDEX,
|
|
326
|
+
pageSize: DEFAULT_PAGE_SIZE
|
|
365
327
|
}),
|
|
366
328
|
_useState2 = _slicedToArray$1(_useState, 2),
|
|
367
329
|
pageProperties = _useState2[0],
|
|
368
330
|
setPageProperties = _useState2[1];
|
|
369
|
-
var
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
history.push({
|
|
374
|
-
search: urlParams.toString()
|
|
331
|
+
var resetPageProperties = function resetPageProperties() {
|
|
332
|
+
return setPageProperties({
|
|
333
|
+
page: DEFAULT_PAGE_INDEX,
|
|
334
|
+
pageSize: DEFAULT_PAGE_SIZE
|
|
375
335
|
});
|
|
336
|
+
};
|
|
337
|
+
var handlePageChange = function handlePageChange(page, pageSize) {
|
|
376
338
|
setPageProperties({
|
|
377
339
|
page: page,
|
|
378
340
|
pageSize: pageSize
|
|
379
341
|
});
|
|
380
|
-
}
|
|
381
|
-
useEffect(function () {
|
|
382
|
-
var page = urlParams.get("page") || DEFAULT_PAGE_INDEX;
|
|
383
|
-
var pageSize = urlParams.get("size") || DEFAULT_PAGE_SIZE;
|
|
384
|
-
setPageProperties({
|
|
385
|
-
page: Number(page),
|
|
386
|
-
pageSize: Number(pageSize)
|
|
387
|
-
});
|
|
388
|
-
}, [urlParams]);
|
|
342
|
+
};
|
|
389
343
|
return {
|
|
390
344
|
pageProperties: pageProperties,
|
|
391
|
-
|
|
345
|
+
resetPageProperties: resetPageProperties,
|
|
346
|
+
handlePageChange: handlePageChange
|
|
392
347
|
};
|
|
393
348
|
};
|
|
394
349
|
|
|
350
|
+
new URLSearchParams(window.location.search);
|
|
351
|
+
var DEFAULT_FILTER_VALUES = {
|
|
352
|
+
searchTerm: "",
|
|
353
|
+
sortBy: "",
|
|
354
|
+
orderBy: ""
|
|
355
|
+
};
|
|
356
|
+
var SEARCH_DELAY = 750;
|
|
357
|
+
var STATUSES = {
|
|
358
|
+
approved: "approved",
|
|
359
|
+
rejected: "rejected",
|
|
360
|
+
pending: "pending",
|
|
361
|
+
cancelled: "cancelled"
|
|
362
|
+
};
|
|
363
|
+
var STATUS_TAG_STYLE = {
|
|
364
|
+
pending: "primary",
|
|
365
|
+
approved: "success",
|
|
366
|
+
rejected: "danger",
|
|
367
|
+
cancelled: "warning"
|
|
368
|
+
};
|
|
369
|
+
var APPROVAL_REQUEST_FORM_INITIAL_VALUES = {
|
|
370
|
+
message: "",
|
|
371
|
+
additionalInfo: ""
|
|
372
|
+
};
|
|
373
|
+
var STATUS_UPDATED_BY = {
|
|
374
|
+
rejected: t$1("neetoApprovals.common.rejectedBy"),
|
|
375
|
+
approved: t$1("neetoApprovals.common.approvedBy"),
|
|
376
|
+
cancelled: t$1("neetoApprovals.common.cancelledBy")
|
|
377
|
+
};
|
|
378
|
+
|
|
395
379
|
dayjs.extend(utc);
|
|
396
380
|
dayjs.extend(timezone);
|
|
397
381
|
var updateApprovalDetails = function updateApprovalDetails(_ref) {
|
|
@@ -598,7 +582,7 @@ var History = function History(_ref) {
|
|
|
598
582
|
var debouncedSearchTerm = useDebounce(filters.searchTerm, SEARCH_DELAY);
|
|
599
583
|
var _usePaginate = usePaginate(),
|
|
600
584
|
pageProperties = _usePaginate.pageProperties,
|
|
601
|
-
|
|
585
|
+
handlePageChange = _usePaginate.handlePageChange;
|
|
602
586
|
var _useState3 = useState({}),
|
|
603
587
|
_useState4 = _slicedToArray$1(_useState3, 2),
|
|
604
588
|
approvalDetails = _useState4[0],
|
|
@@ -611,8 +595,9 @@ var History = function History(_ref) {
|
|
|
611
595
|
status: [STATUSES.approved, STATUSES.rejected, STATUSES.cancelled]
|
|
612
596
|
}),
|
|
613
597
|
options: {
|
|
614
|
-
onSuccess: function onSuccess(
|
|
615
|
-
|
|
598
|
+
onSuccess: function onSuccess(_ref2) {
|
|
599
|
+
var requests = _ref2.requests;
|
|
600
|
+
handleEmptyPage(requests, pageProperties, handlePageChange);
|
|
616
601
|
setApprovalDetails(function (approvalDetails) {
|
|
617
602
|
return updateApprovalDetails({
|
|
618
603
|
requestsData: requests,
|
|
@@ -631,7 +616,7 @@ var History = function History(_ref) {
|
|
|
631
616
|
totalCount = _useFetchRequests$dat4 === void 0 ? 0 : _useFetchRequests$dat4;
|
|
632
617
|
var handleTableChange = function handleTableChange(_, __, sorter) {
|
|
633
618
|
setFilters(_objectSpread$a(_objectSpread$a({}, filters), {}, {
|
|
634
|
-
sortBy: camelToSnakeCase(sorter.field),
|
|
619
|
+
sortBy: camelToSnakeCase(sorter.field || ""),
|
|
635
620
|
orderBy: sorter.order
|
|
636
621
|
}));
|
|
637
622
|
};
|
|
@@ -644,8 +629,8 @@ var History = function History(_ref) {
|
|
|
644
629
|
currentPageNumber: pageProperties.page,
|
|
645
630
|
defaultPageSize: pageProperties.pageSize,
|
|
646
631
|
rowData: approvalHistories,
|
|
632
|
+
handlePageChange: handlePageChange,
|
|
647
633
|
totalCount: totalCount,
|
|
648
|
-
handlePageChange: handleTablePagination,
|
|
649
634
|
paginationProps: {
|
|
650
635
|
hideOnSinglePage: (approvalHistories === null || approvalHistories === void 0 ? void 0 : approvalHistories.length) < DEFAULT_PAGE_SIZE + 1
|
|
651
636
|
},
|
|
@@ -688,7 +673,7 @@ var PendingRequests = function PendingRequests(_ref) {
|
|
|
688
673
|
var debouncedSearchTerm = useDebounce(filters.searchTerm, SEARCH_DELAY);
|
|
689
674
|
var _usePaginate = usePaginate(),
|
|
690
675
|
pageProperties = _usePaginate.pageProperties,
|
|
691
|
-
|
|
676
|
+
handlePageChange = _usePaginate.handlePageChange;
|
|
692
677
|
var _useTranslation = useTranslation(),
|
|
693
678
|
t = _useTranslation.t;
|
|
694
679
|
var _useFetchRequests = useFetchRequests({
|
|
@@ -697,8 +682,9 @@ var PendingRequests = function PendingRequests(_ref) {
|
|
|
697
682
|
status: [STATUSES.pending]
|
|
698
683
|
}),
|
|
699
684
|
options: {
|
|
700
|
-
onSuccess: function onSuccess(
|
|
701
|
-
|
|
685
|
+
onSuccess: function onSuccess(_ref2) {
|
|
686
|
+
var requests = _ref2.requests;
|
|
687
|
+
handleEmptyPage(requests, pageProperties, handlePageChange);
|
|
702
688
|
}
|
|
703
689
|
},
|
|
704
690
|
requestUrl: requestUrl
|
|
@@ -714,7 +700,7 @@ var PendingRequests = function PendingRequests(_ref) {
|
|
|
714
700
|
isLoading = _useUpdateRequest.isLoading;
|
|
715
701
|
var handleTableChange = function handleTableChange(_, __, sorter) {
|
|
716
702
|
setFilters(_objectSpread$9(_objectSpread$9({}, filters), {}, {
|
|
717
|
-
sortBy: camelToSnakeCase(sorter.field),
|
|
703
|
+
sortBy: camelToSnakeCase(sorter.field || ""),
|
|
718
704
|
orderBy: sorter.order
|
|
719
705
|
}));
|
|
720
706
|
};
|
|
@@ -737,8 +723,8 @@ var PendingRequests = function PendingRequests(_ref) {
|
|
|
737
723
|
currentPageNumber: pageProperties.page,
|
|
738
724
|
defaultPageSize: pageProperties.pageSize,
|
|
739
725
|
rowData: pendingRequests,
|
|
726
|
+
handlePageChange: handlePageChange,
|
|
740
727
|
totalCount: totalCount,
|
|
741
|
-
handlePageChange: handleTablePagination,
|
|
742
728
|
paginationProps: {
|
|
743
729
|
hideOnSinglePage: (pendingRequests === null || pendingRequests === void 0 ? void 0 : pendingRequests.length) < DEFAULT_PAGE_SIZE + 1
|
|
744
730
|
},
|
|
@@ -1153,53 +1139,6 @@ var TemplateDetails = function TemplateDetails(_ref) {
|
|
|
1153
1139
|
}))));
|
|
1154
1140
|
};
|
|
1155
1141
|
|
|
1156
|
-
var Menu = Dropdown.Menu,
|
|
1157
|
-
MenuItem = Dropdown.MenuItem;
|
|
1158
|
-
var columnData = function columnData(_ref) {
|
|
1159
|
-
var onEditClick = _ref.onEditClick,
|
|
1160
|
-
onDeleteClick = _ref.onDeleteClick;
|
|
1161
|
-
return [{
|
|
1162
|
-
dataIndex: "name",
|
|
1163
|
-
key: "name",
|
|
1164
|
-
sorter: true,
|
|
1165
|
-
title: i18next.t("neetoApprovals.common.name")
|
|
1166
|
-
}, {
|
|
1167
|
-
dataIndex: "approverName",
|
|
1168
|
-
key: "approverName",
|
|
1169
|
-
title: i18next.t("neetoApprovals.common.approver", SINGULAR)
|
|
1170
|
-
}, {
|
|
1171
|
-
key: "actions",
|
|
1172
|
-
ellipsis: true,
|
|
1173
|
-
render: function render(_, template) {
|
|
1174
|
-
return /*#__PURE__*/React.createElement("div", {
|
|
1175
|
-
className: "flex flex-row items-center justify-end space-x-3",
|
|
1176
|
-
onClick: function onClick(event) {
|
|
1177
|
-
return event.stopPropagation();
|
|
1178
|
-
}
|
|
1179
|
-
}, /*#__PURE__*/React.createElement(Dropdown, {
|
|
1180
|
-
autoWidth: true,
|
|
1181
|
-
buttonProps: {
|
|
1182
|
-
style: "text"
|
|
1183
|
-
},
|
|
1184
|
-
className: "flex-shrink-0",
|
|
1185
|
-
icon: MenuHorizontal,
|
|
1186
|
-
position: "bottom-end",
|
|
1187
|
-
strategy: "fixed"
|
|
1188
|
-
}, /*#__PURE__*/React.createElement(Menu, null, /*#__PURE__*/React.createElement(MenuItem.Button, {
|
|
1189
|
-
"data-cy": "approvers-edit-button",
|
|
1190
|
-
onClick: function onClick() {
|
|
1191
|
-
return onEditClick(template);
|
|
1192
|
-
}
|
|
1193
|
-
}, i18next.t("neetoApprovals.common.edit")), /*#__PURE__*/React.createElement(MenuItem.Button, {
|
|
1194
|
-
"data-cy": "approvers-delete-button",
|
|
1195
|
-
onClick: function onClick() {
|
|
1196
|
-
return onDeleteClick(template);
|
|
1197
|
-
}
|
|
1198
|
-
}, i18next.t("neetoApprovals.common.delete")))));
|
|
1199
|
-
}
|
|
1200
|
-
}];
|
|
1201
|
-
};
|
|
1202
|
-
|
|
1203
1142
|
var renderNoDataHelpText = function renderNoDataHelpText(_ref) {
|
|
1204
1143
|
var entity = _ref.entity,
|
|
1205
1144
|
url = _ref.url;
|
|
@@ -1220,14 +1159,14 @@ var renderNoDataHelpText = function renderNoDataHelpText(_ref) {
|
|
|
1220
1159
|
});
|
|
1221
1160
|
};
|
|
1222
1161
|
|
|
1223
|
-
var _excluded$1 = ["entity", "columnData", "
|
|
1162
|
+
var _excluded$1 = ["entity", "columnData", "rowData", "totalCount", "filters", "setFilters", "setIsPaneOpen", "helpDocUrl", "onEditClick", "onDeleteClick", "pageProperties"];
|
|
1224
1163
|
function ownKeys$5(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
1225
1164
|
function _objectSpread$5(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$5(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$5(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
1226
1165
|
var Table = function Table(_ref) {
|
|
1227
1166
|
var _t;
|
|
1228
1167
|
var entity = _ref.entity,
|
|
1229
1168
|
columnData = _ref.columnData,
|
|
1230
|
-
|
|
1169
|
+
rowData = _ref.rowData,
|
|
1231
1170
|
totalCount = _ref.totalCount,
|
|
1232
1171
|
filters = _ref.filters,
|
|
1233
1172
|
setFilters = _ref.setFilters,
|
|
@@ -1235,10 +1174,8 @@ var Table = function Table(_ref) {
|
|
|
1235
1174
|
helpDocUrl = _ref.helpDocUrl,
|
|
1236
1175
|
onEditClick = _ref.onEditClick,
|
|
1237
1176
|
onDeleteClick = _ref.onDeleteClick,
|
|
1177
|
+
pageProperties = _ref.pageProperties,
|
|
1238
1178
|
otherProps = _objectWithoutProperties(_ref, _excluded$1);
|
|
1239
|
-
var _usePaginate = usePaginate(),
|
|
1240
|
-
pageProperties = _usePaginate.pageProperties,
|
|
1241
|
-
handleTablePagination = _usePaginate.handleTablePagination;
|
|
1242
1179
|
var _useTranslation = useTranslation(),
|
|
1243
1180
|
t = _useTranslation.t;
|
|
1244
1181
|
var columns = columnData({
|
|
@@ -1265,7 +1202,7 @@ var Table = function Table(_ref) {
|
|
|
1265
1202
|
url: helpDocUrl
|
|
1266
1203
|
})
|
|
1267
1204
|
};
|
|
1268
|
-
if (isEmpty(
|
|
1205
|
+
if (isEmpty(rowData)) {
|
|
1269
1206
|
return /*#__PURE__*/React.createElement("div", {
|
|
1270
1207
|
className: "flex h-full w-full flex-grow items-center justify-center"
|
|
1271
1208
|
}, /*#__PURE__*/React.createElement(NoData, _extends({
|
|
@@ -1282,55 +1219,111 @@ var Table = function Table(_ref) {
|
|
|
1282
1219
|
columnData: columns,
|
|
1283
1220
|
currentPageNumber: pageProperties.page,
|
|
1284
1221
|
defaultPageSize: pageProperties.pageSize,
|
|
1285
|
-
|
|
1286
|
-
|
|
1222
|
+
scroll: {
|
|
1223
|
+
x: 0
|
|
1224
|
+
},
|
|
1225
|
+
tableLayout: "fixed",
|
|
1287
1226
|
paginationProps: {
|
|
1288
|
-
hideOnSinglePage: (
|
|
1227
|
+
hideOnSinglePage: (rowData === null || rowData === void 0 ? void 0 : rowData.length) < DEFAULT_PAGE_SIZE + 1
|
|
1289
1228
|
},
|
|
1290
1229
|
onChange: handleTableChange
|
|
1291
1230
|
}, _objectSpread$5({
|
|
1231
|
+
rowData: rowData,
|
|
1292
1232
|
totalCount: totalCount
|
|
1293
1233
|
}, otherProps))));
|
|
1294
1234
|
};
|
|
1295
1235
|
|
|
1296
|
-
var
|
|
1236
|
+
var columnData = function columnData(_ref) {
|
|
1237
|
+
var onEditClick = _ref.onEditClick,
|
|
1238
|
+
onDeleteClick = _ref.onDeleteClick;
|
|
1239
|
+
return [{
|
|
1240
|
+
dataIndex: "name",
|
|
1241
|
+
key: "name",
|
|
1242
|
+
sorter: true,
|
|
1243
|
+
title: i18next.t("neetoApprovals.common.name"),
|
|
1244
|
+
ellipsis: true,
|
|
1245
|
+
render: function render(_, template) {
|
|
1246
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
1247
|
+
className: "flex items-center justify-between gap-x-3"
|
|
1248
|
+
}, /*#__PURE__*/React.createElement(Typography, {
|
|
1249
|
+
className: "truncate",
|
|
1250
|
+
style: "body2"
|
|
1251
|
+
}, template.name), /*#__PURE__*/React.createElement(MoreDropdown, {
|
|
1252
|
+
dropdownProps: {
|
|
1253
|
+
strategy: "fixed",
|
|
1254
|
+
onClick: function onClick(e) {
|
|
1255
|
+
return e.stopPropagation();
|
|
1256
|
+
}
|
|
1257
|
+
},
|
|
1258
|
+
menuItems: [{
|
|
1259
|
+
key: "edit",
|
|
1260
|
+
label: i18next.t("neetoApprovals.common.edit"),
|
|
1261
|
+
onClick: function onClick(event) {
|
|
1262
|
+
return onEditClick(event, template);
|
|
1263
|
+
}
|
|
1264
|
+
}, {
|
|
1265
|
+
key: "delete",
|
|
1266
|
+
label: i18next.t("neetoApprovals.common.delete"),
|
|
1267
|
+
onClick: function onClick(event) {
|
|
1268
|
+
return onDeleteClick(event, template);
|
|
1269
|
+
}
|
|
1270
|
+
}]
|
|
1271
|
+
}));
|
|
1272
|
+
}
|
|
1273
|
+
}, {
|
|
1274
|
+
dataIndex: "approverName",
|
|
1275
|
+
key: "approverName",
|
|
1276
|
+
sorter: true,
|
|
1277
|
+
title: i18next.t("neetoApprovals.common.approver", SINGULAR)
|
|
1278
|
+
}];
|
|
1279
|
+
};
|
|
1280
|
+
|
|
1281
|
+
var _excluded = ["searchTerm", "isNewTemplatePaneOpen", "setIsNewTemplatePaneOpen", "helpDocUrl"];
|
|
1297
1282
|
function ownKeys$4(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
1298
1283
|
function _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$4(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$4(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
1299
1284
|
var Templates = function Templates(_ref) {
|
|
1300
1285
|
var _t, _t2, _t3;
|
|
1301
|
-
var
|
|
1286
|
+
var searchTerm = _ref.searchTerm,
|
|
1302
1287
|
isNewTemplatePaneOpen = _ref.isNewTemplatePaneOpen,
|
|
1303
|
-
setFilters = _ref.setFilters,
|
|
1304
1288
|
setIsNewTemplatePaneOpen = _ref.setIsNewTemplatePaneOpen,
|
|
1305
1289
|
helpDocUrl = _ref.helpDocUrl,
|
|
1306
1290
|
otherProps = _objectWithoutProperties(_ref, _excluded);
|
|
1307
|
-
var _useState = useState(
|
|
1291
|
+
var _useState = useState(DEFAULT_FILTER_VALUES),
|
|
1308
1292
|
_useState2 = _slicedToArray$1(_useState, 2),
|
|
1309
|
-
|
|
1310
|
-
|
|
1311
|
-
var _useState3 = useState(
|
|
1293
|
+
filters = _useState2[0],
|
|
1294
|
+
setFilters = _useState2[1];
|
|
1295
|
+
var _useState3 = useState({}),
|
|
1312
1296
|
_useState4 = _slicedToArray$1(_useState3, 2),
|
|
1313
|
-
|
|
1314
|
-
|
|
1297
|
+
selectedTemplate = _useState4[0],
|
|
1298
|
+
setSelectedTemplate = _useState4[1];
|
|
1315
1299
|
var _useState5 = useState(false),
|
|
1316
1300
|
_useState6 = _slicedToArray$1(_useState5, 2),
|
|
1317
|
-
|
|
1318
|
-
|
|
1301
|
+
isDeleteAlertOpen = _useState6[0],
|
|
1302
|
+
setIsDeleteAlertOpen = _useState6[1];
|
|
1319
1303
|
var _useState7 = useState(false),
|
|
1320
1304
|
_useState8 = _slicedToArray$1(_useState7, 2),
|
|
1321
|
-
|
|
1322
|
-
|
|
1323
|
-
var
|
|
1305
|
+
isEditPaneOpen = _useState8[0],
|
|
1306
|
+
setIsEditPaneOpen = _useState8[1];
|
|
1307
|
+
var _useState9 = useState(false),
|
|
1308
|
+
_useState10 = _slicedToArray$1(_useState9, 2),
|
|
1309
|
+
isShowPaneOpen = _useState10[0],
|
|
1310
|
+
setIsShowPaneOpen = _useState10[1];
|
|
1324
1311
|
var _usePaginate = usePaginate(),
|
|
1325
1312
|
pageProperties = _usePaginate.pageProperties,
|
|
1326
|
-
|
|
1313
|
+
handlePageChange = _usePaginate.handlePageChange,
|
|
1314
|
+
resetPageProperties = _usePaginate.resetPageProperties;
|
|
1327
1315
|
var _useTranslation = useTranslation(),
|
|
1328
1316
|
t = _useTranslation.t;
|
|
1317
|
+
var debouncedSearchTerm = useDebounce(searchTerm, SEARCH_DELAY);
|
|
1318
|
+
useEffect(function () {
|
|
1319
|
+
resetPageProperties();
|
|
1320
|
+
}, [searchTerm]);
|
|
1329
1321
|
var _useFetchTemplates = useFetchTemplates(_objectSpread$4(_objectSpread$4(_objectSpread$4({}, pageProperties), filters), {}, {
|
|
1330
1322
|
searchTerm: debouncedSearchTerm.trim()
|
|
1331
1323
|
}), {
|
|
1332
|
-
onSuccess: function onSuccess(
|
|
1333
|
-
|
|
1324
|
+
onSuccess: function onSuccess(_ref2) {
|
|
1325
|
+
var templates = _ref2.templates;
|
|
1326
|
+
handleEmptyPage(templates, pageProperties, handlePageChange);
|
|
1334
1327
|
}
|
|
1335
1328
|
}),
|
|
1336
1329
|
_useFetchTemplates$da = _useFetchTemplates.data,
|
|
@@ -1350,7 +1343,8 @@ var Templates = function Templates(_ref) {
|
|
|
1350
1343
|
setIsShowPaneOpen(false);
|
|
1351
1344
|
}
|
|
1352
1345
|
}, [selectedTemplate]);
|
|
1353
|
-
var onEditClick = function onEditClick(template) {
|
|
1346
|
+
var onEditClick = function onEditClick(event, template) {
|
|
1347
|
+
event.stopPropagation();
|
|
1354
1348
|
setSelectedTemplate(template);
|
|
1355
1349
|
setIsEditPaneOpen(true);
|
|
1356
1350
|
};
|
|
@@ -1358,7 +1352,8 @@ var Templates = function Templates(_ref) {
|
|
|
1358
1352
|
setSelectedTemplate(templateDetails);
|
|
1359
1353
|
setIsShowPaneOpen(true);
|
|
1360
1354
|
};
|
|
1361
|
-
var onDeleteClick = function onDeleteClick(template) {
|
|
1355
|
+
var onDeleteClick = function onDeleteClick(event, template) {
|
|
1356
|
+
event.stopPropagation();
|
|
1362
1357
|
setSelectedTemplate(template);
|
|
1363
1358
|
setIsDeleteAlertOpen(true);
|
|
1364
1359
|
};
|
|
@@ -1370,15 +1365,18 @@ var Templates = function Templates(_ref) {
|
|
|
1370
1365
|
};
|
|
1371
1366
|
var entity = (_t = t("neetoApprovals.common.template", PLURAL)) === null || _t === void 0 ? void 0 : _t.toLocaleLowerCase();
|
|
1372
1367
|
return /*#__PURE__*/React.createElement(React.Fragment, null, isTemplateLoading ? /*#__PURE__*/React.createElement(PageLoader, null) : /*#__PURE__*/React.createElement(Table, {
|
|
1373
|
-
|
|
1368
|
+
rowData: templates,
|
|
1374
1369
|
setIsPaneOpen: setIsNewTemplatePaneOpen,
|
|
1375
1370
|
columnData: columnData,
|
|
1376
1371
|
entity: entity,
|
|
1377
1372
|
filters: filters,
|
|
1373
|
+
handlePageChange: handlePageChange,
|
|
1378
1374
|
helpDocUrl: helpDocUrl,
|
|
1379
1375
|
onDeleteClick: onDeleteClick,
|
|
1380
1376
|
onEditClick: onEditClick,
|
|
1381
1377
|
onRowClick: onRowClick,
|
|
1378
|
+
pageProperties: pageProperties,
|
|
1379
|
+
searchTerm: searchTerm,
|
|
1382
1380
|
setFilters: setFilters,
|
|
1383
1381
|
totalCount: totalCount
|
|
1384
1382
|
}), /*#__PURE__*/React.createElement(Create, _extends({
|
|
@@ -1427,16 +1425,14 @@ function ownKeys$3(object, enumerableOnly) { var keys = Object.keys(object); if
|
|
|
1427
1425
|
function _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$3(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$3(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
1428
1426
|
var createRoutes = function createRoutes(_ref) {
|
|
1429
1427
|
var config = _ref.config,
|
|
1430
|
-
filters = _ref.filters,
|
|
1431
1428
|
isNewTemplatePaneOpen = _ref.isNewTemplatePaneOpen,
|
|
1432
|
-
|
|
1429
|
+
searchTerm = _ref.searchTerm,
|
|
1433
1430
|
setIsNewTemplatePaneOpen = _ref.setIsNewTemplatePaneOpen;
|
|
1434
1431
|
return [{
|
|
1435
1432
|
component: function component() {
|
|
1436
1433
|
return /*#__PURE__*/React.createElement(Templates, _objectSpread$3({
|
|
1437
|
-
filters: filters,
|
|
1438
1434
|
isNewTemplatePaneOpen: isNewTemplatePaneOpen,
|
|
1439
|
-
|
|
1435
|
+
searchTerm: searchTerm,
|
|
1440
1436
|
setIsNewTemplatePaneOpen: setIsNewTemplatePaneOpen
|
|
1441
1437
|
}, config));
|
|
1442
1438
|
},
|
|
@@ -1472,8 +1468,8 @@ var Header = function Header(_ref) {
|
|
|
1472
1468
|
var _currentTab$actionBlo;
|
|
1473
1469
|
var appRoutes = _ref.appRoutes,
|
|
1474
1470
|
breadcrumbs = _ref.breadcrumbs,
|
|
1475
|
-
|
|
1476
|
-
|
|
1471
|
+
setSearchTerm = _ref.setSearchTerm,
|
|
1472
|
+
searchTerm = _ref.searchTerm;
|
|
1477
1473
|
var _useTranslation = useTranslation(),
|
|
1478
1474
|
t = _useTranslation.t;
|
|
1479
1475
|
var _useLocation = useLocation(),
|
|
@@ -1486,9 +1482,9 @@ var Header = function Header(_ref) {
|
|
|
1486
1482
|
title: t("neetoApprovals.common.approval", PLURAL),
|
|
1487
1483
|
searchProps: (currentTab === null || currentTab === void 0 ? void 0 : currentTab.searchPlaceholder) && {
|
|
1488
1484
|
onChange: function onChange(event) {
|
|
1489
|
-
return
|
|
1485
|
+
return setSearchTerm(event.target.value);
|
|
1490
1486
|
},
|
|
1491
|
-
value:
|
|
1487
|
+
value: searchTerm,
|
|
1492
1488
|
placeholder: currentTab === null || currentTab === void 0 ? void 0 : currentTab.searchPlaceholder
|
|
1493
1489
|
},
|
|
1494
1490
|
breadcrumbs: breadcrumbs
|
|
@@ -1552,27 +1548,26 @@ function ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if
|
|
|
1552
1548
|
function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
1553
1549
|
var Approvals = function Approvals(_ref) {
|
|
1554
1550
|
var config = _ref.config;
|
|
1555
|
-
var _useState = useState(
|
|
1551
|
+
var _useState = useState(""),
|
|
1556
1552
|
_useState2 = _slicedToArray$1(_useState, 2),
|
|
1557
|
-
|
|
1558
|
-
|
|
1553
|
+
searchTerm = _useState2[0],
|
|
1554
|
+
setSearchTerm = _useState2[1];
|
|
1559
1555
|
var _useState3 = useState(false),
|
|
1560
1556
|
_useState4 = _slicedToArray$1(_useState3, 2),
|
|
1561
1557
|
isNewTemplatePaneOpen = _useState4[0],
|
|
1562
1558
|
setIsNewTemplatePaneOpen = _useState4[1];
|
|
1563
1559
|
var appRoutes = createRoutes({
|
|
1564
1560
|
config: config,
|
|
1565
|
-
|
|
1561
|
+
searchTerm: searchTerm,
|
|
1566
1562
|
isNewTemplatePaneOpen: isNewTemplatePaneOpen,
|
|
1567
|
-
setFilters: setFilters,
|
|
1568
1563
|
setIsNewTemplatePaneOpen: setIsNewTemplatePaneOpen
|
|
1569
1564
|
});
|
|
1570
1565
|
return /*#__PURE__*/React.createElement("div", {
|
|
1571
1566
|
className: "neeto-approvals"
|
|
1572
1567
|
}, /*#__PURE__*/React.createElement(Container, null, /*#__PURE__*/React.createElement(Header, _objectSpread$1({
|
|
1573
1568
|
appRoutes: appRoutes,
|
|
1574
|
-
|
|
1575
|
-
|
|
1569
|
+
searchTerm: searchTerm,
|
|
1570
|
+
setSearchTerm: setSearchTerm
|
|
1576
1571
|
}, config)), /*#__PURE__*/React.createElement(Tab, {
|
|
1577
1572
|
approvalsPath: config.approvalsPath
|
|
1578
1573
|
}), /*#__PURE__*/React.createElement(Switch, null, appRoutes.map(function (_ref2) {
|