@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.js CHANGED
@@ -1,10 +1,10 @@
1
- import React, { useMemo, useState, useCallback, useEffect, useRef } from 'react';
1
+ import React, { useState, useEffect, useRef } from 'react';
2
2
  import Container from '@bigbinary/neeto-molecules/Container';
3
- import { useLocation, useHistory, Link, Switch, Route, Redirect, useParams } from 'react-router-dom';
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, Dropdown, Alert, Tab as Tab$1, Select as Select$1, Callout } from '@bigbinary/neetoui';
7
- import { curryN, isNil, curry, complement, either, isEmpty, assoc, keys } from 'ramda';
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, handleTablePagination) {
260
+ var handleEmptyPage = function handleEmptyPage(data, pageProperties, handlePageChange) {
290
261
  if (isEmpty(data) && pageProperties.page !== 1) {
291
- handleTablePagination(pageProperties.page - 1, pageProperties.pageSize);
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: Number(urlParams.get("page")) || DEFAULT_PAGE_INDEX,
364
- pageSize: Number(urlParams.get("size")) || DEFAULT_PAGE_SIZE
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 history = useHistory();
370
- var handleTablePagination = useCallback(function (page, pageSize) {
371
- urlParams.set("page", page);
372
- urlParams.set("size", pageSize);
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
- }, [urlParams, history]);
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
- handleTablePagination: handleTablePagination
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
- handleTablePagination = _usePaginate.handleTablePagination;
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(requests) {
615
- handleEmptyPage(requests, pageProperties, handleTablePagination);
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
- handleTablePagination = _usePaginate.handleTablePagination;
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(requests) {
701
- handleEmptyPage(requests, pageProperties, handleTablePagination);
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", "items", "totalCount", "filters", "setFilters", "setIsPaneOpen", "helpDocUrl", "onEditClick", "onDeleteClick"];
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
- items = _ref.items,
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(items)) {
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
- handlePageChange: handleTablePagination,
1286
- rowData: items,
1222
+ scroll: {
1223
+ x: 0
1224
+ },
1225
+ tableLayout: "fixed",
1287
1226
  paginationProps: {
1288
- hideOnSinglePage: (items === null || items === void 0 ? void 0 : items.length) < DEFAULT_PAGE_SIZE + 1
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 _excluded = ["filters", "isNewTemplatePaneOpen", "setFilters", "setIsNewTemplatePaneOpen", "helpDocUrl"];
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 filters = _ref.filters,
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
- selectedTemplate = _useState2[0],
1310
- setSelectedTemplate = _useState2[1];
1311
- var _useState3 = useState(false),
1293
+ filters = _useState2[0],
1294
+ setFilters = _useState2[1];
1295
+ var _useState3 = useState({}),
1312
1296
  _useState4 = _slicedToArray$1(_useState3, 2),
1313
- isDeleteAlertOpen = _useState4[0],
1314
- setIsDeleteAlertOpen = _useState4[1];
1297
+ selectedTemplate = _useState4[0],
1298
+ setSelectedTemplate = _useState4[1];
1315
1299
  var _useState5 = useState(false),
1316
1300
  _useState6 = _slicedToArray$1(_useState5, 2),
1317
- isEditPaneOpen = _useState6[0],
1318
- setIsEditPaneOpen = _useState6[1];
1301
+ isDeleteAlertOpen = _useState6[0],
1302
+ setIsDeleteAlertOpen = _useState6[1];
1319
1303
  var _useState7 = useState(false),
1320
1304
  _useState8 = _slicedToArray$1(_useState7, 2),
1321
- isShowPaneOpen = _useState8[0],
1322
- setIsShowPaneOpen = _useState8[1];
1323
- var debouncedSearchTerm = useDebounce(filters.searchTerm, SEARCH_DELAY);
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
- handleTablePagination = _usePaginate.handleTablePagination;
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(templates) {
1333
- handleEmptyPage(templates, pageProperties, handleTablePagination);
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
- items: templates,
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
- setFilters = _ref.setFilters,
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
- setFilters: setFilters,
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
- filters = _ref.filters,
1476
- setFilters = _ref.setFilters;
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 setFilters(assoc("searchTerm", event.target.value));
1485
+ return setSearchTerm(event.target.value);
1490
1486
  },
1491
- value: filters.searchTerm,
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(DEFAULT_FILTER_VALUES),
1551
+ var _useState = useState(""),
1556
1552
  _useState2 = _slicedToArray$1(_useState, 2),
1557
- filters = _useState2[0],
1558
- setFilters = _useState2[1];
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
- filters: filters,
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
- filters: filters,
1575
- setFilters: setFilters
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) {