amp-workflow-ui 0.1.27 → 0.1.29

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,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var React7 = require('react');
3
+ var React2 = require('react');
4
4
  var jsxRuntime = require('react/jsx-runtime');
5
5
  var Dialog = require('@mui/material/Dialog');
6
6
  var useMediaQuery = require('@mui/material/useMediaQuery');
@@ -17,7 +17,7 @@ var KeyboardArrowDownIcon = require('@mui/icons-material/KeyboardArrowDown');
17
17
 
18
18
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
19
19
 
20
- var React7__default = /*#__PURE__*/_interopDefault(React7);
20
+ var React2__default = /*#__PURE__*/_interopDefault(React2);
21
21
  var Dialog__default = /*#__PURE__*/_interopDefault(Dialog);
22
22
  var useMediaQuery__default = /*#__PURE__*/_interopDefault(useMediaQuery);
23
23
  var DialogActions6__default = /*#__PURE__*/_interopDefault(DialogActions6);
@@ -28,7 +28,7 @@ var CloseIcon__default = /*#__PURE__*/_interopDefault(CloseIcon);
28
28
  var KeyboardArrowDownIcon__default = /*#__PURE__*/_interopDefault(KeyboardArrowDownIcon);
29
29
 
30
30
  // src/context.tsx
31
- var WorkflowContext = React7.createContext(null);
31
+ var WorkflowContext = React2.createContext(null);
32
32
  function WorkflowProvider({
33
33
  value,
34
34
  children
@@ -36,7 +36,7 @@ function WorkflowProvider({
36
36
  return /* @__PURE__ */ jsxRuntime.jsx(WorkflowContext.Provider, { value, children });
37
37
  }
38
38
  function useWorkflowContext() {
39
- const ctx = React7.useContext(WorkflowContext);
39
+ const ctx = React2.useContext(WorkflowContext);
40
40
  if (!ctx) {
41
41
  throw new Error("useWorkflowContext must be used within WorkflowProvider");
42
42
  }
@@ -296,8 +296,7 @@ function WorkflowRequestCard({
296
296
  userInfo,
297
297
  helpers
298
298
  }) {
299
- var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t, _u, _v, _w;
300
- console.log("\u{1F680} ~ WorkflowRequestCard ~ requestDetails:", requestDetails);
299
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x;
301
300
  const { timeLeftDHm, getStatus, buildRedirectionUrl } = helpers;
302
301
  const userDetails = userInfo == null ? void 0 : userInfo.userInfo;
303
302
  const matchAssigneeUserLevel = ((_b = (_a = requestDetails == null ? void 0 : requestDetails.levels) == null ? void 0 : _a.find(
@@ -312,19 +311,25 @@ function WorkflowRequestCard({
312
311
  return ((_a2 = level_.escalate_assign_to) == null ? void 0 : _a2[0]) === (userDetails == null ? void 0 : userDetails.id);
313
312
  }
314
313
  )) == null ? void 0 : _d.id) === (requestDetails == null ? void 0 : requestDetails.current_level);
315
- const matchUserInAnyLevel = (_e = requestDetails == null ? void 0 : requestDetails.levels) == null ? void 0 : _e.find(
314
+ const loggedInUserLevel = (_e = requestDetails == null ? void 0 : requestDetails.levels) == null ? void 0 : _e.findIndex(
316
315
  (level_) => {
317
316
  var _a2, _b2;
318
- return ((_a2 = level_.escalate_assign_to) == null ? void 0 : _a2[0]) === (userDetails == null ? void 0 : userDetails.id) || ((_b2 = level_.assign_to) == null ? void 0 : _b2[0]) === (userDetails == null ? void 0 : userDetails.id);
317
+ return ((_a2 = level_.escalate_assign_to) == null ? void 0 : _a2[1]) === (requestDetails == null ? void 0 : requestDetails.current_level) || ((_b2 = level_.assign_to) == null ? void 0 : _b2[0]) === (requestDetails == null ? void 0 : requestDetails.current_level);
319
318
  }
320
319
  );
321
- const allCurrentAssignees = (_f = requestDetails == null ? void 0 : requestDetails.levels) == null ? void 0 : _f.map(
320
+ const matchUserInAnyLevel = (_f = requestDetails == null ? void 0 : requestDetails.levels) == null ? void 0 : _f.find(
321
+ (level_, i) => {
322
+ var _a2, _b2;
323
+ return loggedInUserLevel >= i && ((_a2 = level_.escalate_assign_to) == null ? void 0 : _a2[1]) === (requestDetails == null ? void 0 : requestDetails.current_level) || ((_b2 = level_.assign_to) == null ? void 0 : _b2[0]) === (requestDetails == null ? void 0 : requestDetails.current_level);
324
+ }
325
+ );
326
+ const allCurrentAssignees = (_g = requestDetails == null ? void 0 : requestDetails.levels) == null ? void 0 : _g.map(
322
327
  (level) => {
323
328
  var _a2;
324
329
  return (_a2 = level == null ? void 0 : level.assign_to_name) == null ? void 0 : _a2[0];
325
330
  }
326
331
  );
327
- const allCurrentEscalatedAssignees = (_g = requestDetails == null ? void 0 : requestDetails.levels) == null ? void 0 : _g.map(
332
+ const allCurrentEscalatedAssignees = (_h = requestDetails == null ? void 0 : requestDetails.levels) == null ? void 0 : _h.map(
328
333
  (level) => {
329
334
  var _a2;
330
335
  return timeLeftDHm(level == null ? void 0 : level.tat_expiry) === "0d: 0h: 0m" ? (_a2 = level == null ? void 0 : level.escalate_assign_to_name) == null ? void 0 : _a2[0] : "";
@@ -333,7 +338,7 @@ function WorkflowRequestCard({
333
338
  const allAssignees = [
334
339
  .../* @__PURE__ */ new Set([...allCurrentAssignees, ...allCurrentEscalatedAssignees])
335
340
  ].filter((item) => item);
336
- const currentLevel = (_h = requestDetails == null ? void 0 : requestDetails.levels) == null ? void 0 : _h.find(
341
+ const currentLevel = (_i = requestDetails == null ? void 0 : requestDetails.levels) == null ? void 0 : _i.find(
337
342
  (level_) => level_.id === (requestDetails == null ? void 0 : requestDetails.current_level)
338
343
  );
339
344
  const currentlyAssignedUserArray = (currentLevel == null ? void 0 : currentLevel.assign_to_name) || [];
@@ -348,22 +353,20 @@ function WorkflowRequestCard({
348
353
  return statusList2 == null ? void 0 : statusList2.filter((item) => item.status !== 3);
349
354
  };
350
355
  const redirectionUrl = buildRedirectionUrl(requestDetails);
351
- console.log("\u{1F680} ~ WorkflowRequestCard ~ redirectionUrl:", redirectionUrl);
352
- const currentStatus = ((_k = (_j = (_i = requestDetails == null ? void 0 : requestDetails.levels) == null ? void 0 : _i.find(
356
+ const currentStatus = ((_l = (_k = (_j = requestDetails == null ? void 0 : requestDetails.levels) == null ? void 0 : _j.find(
353
357
  (lvl) => lvl.id === (requestDetails == null ? void 0 : requestDetails.current_level)
354
- )) == null ? void 0 : _j.selected_status) == null ? void 0 : _k.status_id) === 1 ? "approved" : ((_n = (_m = (_l = requestDetails == null ? void 0 : requestDetails.levels) == null ? void 0 : _l.find(
358
+ )) == null ? void 0 : _k.selected_status) == null ? void 0 : _l.status_id) === 1 ? "approved" : ((_o = (_n = (_m = requestDetails == null ? void 0 : requestDetails.levels) == null ? void 0 : _m.find(
355
359
  (lvl) => lvl.id === (requestDetails == null ? void 0 : requestDetails.current_level)
356
- )) == null ? void 0 : _m.selected_status) == null ? void 0 : _n.status_id) === 3 ? "rejected" : "pending";
360
+ )) == null ? void 0 : _n.selected_status) == null ? void 0 : _o.status_id) === 3 ? "rejected" : "pending";
357
361
  getStatus(currentStatus);
358
- const descriptionDetails = (_o = requestDetails == null ? void 0 : requestDetails.template_variables) == null ? void 0 : _o.description_variables;
362
+ const descriptionDetails = (_p = requestDetails == null ? void 0 : requestDetails.template_variables) == null ? void 0 : _p.description_variables;
359
363
  const formatKey = (key) => key.replace(/_/g, " ").replace(/\b\w/g, (char) => char.toUpperCase());
360
364
  const displayEntries = descriptionDetails ? Object.entries(descriptionDetails).filter(
361
365
  ([, value]) => typeof value === "string" || typeof value === "number"
362
366
  ) : [];
363
- const userLevel = (requestDetails == null ? void 0 : requestDetails.isLevelZero) ? "L0" : "L" + (((_q = (_p = requestDetails == null ? void 0 : requestDetails.levels) == null ? void 0 : _p.findIndex(
367
+ const userLevel = (requestDetails == null ? void 0 : requestDetails.isLevelZero) ? "L0" : "L" + (((_r = (_q = requestDetails == null ? void 0 : requestDetails.levels) == null ? void 0 : _q.findIndex(
364
368
  (lvl) => lvl.id === (requestDetails == null ? void 0 : requestDetails.current_level)
365
- )) != null ? _q : -1) + 1 || "");
366
- console.log("\u{1F680} ~ WorkflowRequestCard ~ userLevel:", userLevel);
369
+ )) != null ? _r : -1) + 1 || "");
367
370
  const tatExpired = timeLeftDHm(currentLevel == null ? void 0 : currentLevel.tat_expiry) === "0d: 0h: 0m";
368
371
  return /* @__PURE__ */ jsxRuntime.jsxs(
369
372
  material.Box,
@@ -435,9 +438,9 @@ function WorkflowRequestCard({
435
438
  ) }),
436
439
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "step-line step-line-inactive" })
437
440
  ] }),
438
- (_r = requestDetails == null ? void 0 : requestDetails.levels) == null ? void 0 : _r.map((_, idx) => {
441
+ (_s = requestDetails == null ? void 0 : requestDetails.levels) == null ? void 0 : _s.map((_, idx) => {
439
442
  const level = idx + 1;
440
- return /* @__PURE__ */ jsxRuntime.jsx(React7__default.default.Fragment, { children: userLevel == "L" + level ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
443
+ return /* @__PURE__ */ jsxRuntime.jsx(React2__default.default.Fragment, { children: userLevel == "L" + level ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
441
444
  /* @__PURE__ */ jsxRuntime.jsx(material.Chip, { label: "L" + level, className: "step-chip-current" }),
442
445
  (requestDetails == null ? void 0 : requestDetails.levels.length) !== level && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "step-line step-line-inactive" })
443
446
  ] }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
@@ -503,7 +506,7 @@ function WorkflowRequestCard({
503
506
  children: [
504
507
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "assignee-label", children: "Current Assignee:" }),
505
508
  " ",
506
- allAssignees.length > 0 ? `${(requestDetails == null ? void 0 : requestDetails.isLevelZero) ? (_s = requestDetails == null ? void 0 : requestDetails.created_by_user) == null ? void 0 : _s.full_name : allAssignees[0]} +${allAssignees.length - 1}` : (requestDetails == null ? void 0 : requestDetails.isLevelZero) ? (_t = requestDetails == null ? void 0 : requestDetails.created_by_user) == null ? void 0 : _t.full_name : allAssignees[0]
509
+ allAssignees.length > 0 ? `${(requestDetails == null ? void 0 : requestDetails.isLevelZero) ? (_t = requestDetails == null ? void 0 : requestDetails.created_by_user) == null ? void 0 : _t.full_name : allAssignees[0]} +${allAssignees.length - 1}` : (requestDetails == null ? void 0 : requestDetails.isLevelZero) ? (_u = requestDetails == null ? void 0 : requestDetails.created_by_user) == null ? void 0 : _u.full_name : allAssignees[0]
507
510
  ]
508
511
  }
509
512
  )
@@ -516,7 +519,7 @@ function WorkflowRequestCard({
516
519
  children: [
517
520
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "assignee-label", children: "Current Assignee:" }),
518
521
  " ",
519
- (_u = requestDetails == null ? void 0 : requestDetails.created_by_user) == null ? void 0 : _u.full_name
522
+ (_v = requestDetails == null ? void 0 : requestDetails.created_by_user) == null ? void 0 : _v.full_name
520
523
  ]
521
524
  }
522
525
  ) }) : extraCurrentlyAssignedUserCount > 0 || tatExpired && extraCurrentlyEscalatedUserCount > 0 ? /* @__PURE__ */ jsxRuntime.jsx(
@@ -546,13 +549,13 @@ function WorkflowRequestCard({
546
549
  children: /* @__PURE__ */ jsxRuntime.jsxs(material.Typography, { className: "assignee-text", sx: { cursor: "pointer" }, children: [
547
550
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "assignee-label", children: tatExpired ? "Escalated To:" : "Current Assignee:" }),
548
551
  " ",
549
- ((requestDetails == null ? void 0 : requestDetails.isLevelZero) ? (_v = requestDetails == null ? void 0 : requestDetails.created_by_user) == null ? void 0 : _v.full_name : tatExpired ? extraCurrentlyEscalatedUserCount : extraCurrentlyAssignedUserCount) > 0 ? `${tatExpired ? currentlyEscalatedUser : currentlyAssignedUser} +${tatExpired ? extraCurrentlyEscalatedUserCount : extraCurrentlyAssignedUserCount}` : tatExpired ? currentlyEscalatedUser : currentlyAssignedUser
552
+ ((requestDetails == null ? void 0 : requestDetails.isLevelZero) ? (_w = requestDetails == null ? void 0 : requestDetails.created_by_user) == null ? void 0 : _w.full_name : tatExpired ? extraCurrentlyEscalatedUserCount : extraCurrentlyAssignedUserCount) > 0 ? `${tatExpired ? currentlyEscalatedUser : currentlyAssignedUser} +${tatExpired ? extraCurrentlyEscalatedUserCount : extraCurrentlyAssignedUserCount}` : tatExpired ? currentlyEscalatedUser : currentlyAssignedUser
550
553
  ] })
551
554
  }
552
555
  ) : /* @__PURE__ */ jsxRuntime.jsxs(material.Typography, { className: "assignee-text", sx: { cursor: "pointer" }, children: [
553
556
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "assignee-label", children: tatExpired ? "Escalated To:" : "Current Assignee:" }),
554
557
  " ",
555
- (requestDetails == null ? void 0 : requestDetails.isLevelZero) ? (_w = requestDetails == null ? void 0 : requestDetails.created_by_user) == null ? void 0 : _w.full_name : tatExpired ? currentlyEscalatedUser : currentlyAssignedUser
558
+ (requestDetails == null ? void 0 : requestDetails.isLevelZero) ? (_x = requestDetails == null ? void 0 : requestDetails.created_by_user) == null ? void 0 : _x.full_name : tatExpired ? currentlyEscalatedUser : currentlyAssignedUser
556
559
  ] })
557
560
  ] }),
558
561
  (requestDetails == null ? void 0 : requestDetails.current_status) == "pending" && (matchAssigneeUserLevel || matchEscalateUserLevel || matchUserInAnyLevel) && (userDetails == null ? void 0 : userDetails.id) != (requestDetails == null ? void 0 : requestDetails.created_by) && !(requestDetails == null ? void 0 : requestDetails.isLevelZero) ? /* @__PURE__ */ jsxRuntime.jsxs(material.Box, { className: "action-buttons", children: [
@@ -653,14 +656,14 @@ function SendBackDialog({
653
656
  onSuccess
654
657
  }) {
655
658
  const { userInfo, api } = useWorkflowContext();
656
- const [comment, setComment] = React7.useState("");
657
- const [selectedFile, setSelectedFile] = React7.useState(null);
658
- const [fileName, setFileName] = React7.useState("");
659
- const [error, setError] = React7.useState({});
660
- const [loading, setLoading] = React7.useState(false);
661
- const [fileLoading, setFileLoading] = React7.useState(false);
662
- const fileInputRef = React7.useRef(null);
663
- const [snackbar, setSnackbar] = React7.useState({
659
+ const [comment, setComment] = React2.useState("");
660
+ const [selectedFile, setSelectedFile] = React2.useState(null);
661
+ const [fileName, setFileName] = React2.useState("");
662
+ const [error, setError] = React2.useState({});
663
+ const [loading, setLoading] = React2.useState(false);
664
+ const [fileLoading, setFileLoading] = React2.useState(false);
665
+ const fileInputRef = React2.useRef(null);
666
+ const [snackbar, setSnackbar] = React2.useState({
664
667
  open: false,
665
668
  message: "",
666
669
  severity: "success"
@@ -909,10 +912,10 @@ function ApproveDialog({
909
912
  const { userInfo, api } = useWorkflowContext();
910
913
  const theme = styles.useTheme();
911
914
  useMediaQuery__default.default(theme.breakpoints.down("lg"));
912
- const [comment, setComment] = React7.useState("");
913
- const [error, setError] = React7.useState({});
914
- const [loading, setLoading] = React7.useState(false);
915
- const [snackbar, setSnackbar] = React7.useState({
915
+ const [comment, setComment] = React2.useState("");
916
+ const [error, setError] = React2.useState({});
917
+ const [loading, setLoading] = React2.useState(false);
918
+ const [snackbar, setSnackbar] = React2.useState({
916
919
  open: false,
917
920
  message: "",
918
921
  severity: "success"
@@ -1089,18 +1092,18 @@ function RejectDialog({
1089
1092
  }
1090
1093
  );
1091
1094
  };
1092
- const [rejectReasons, setRejectReasons] = React7.useState("");
1093
- const [comment, setComment] = React7.useState("");
1094
- const [error, setError] = React7.useState({ reason: "", comment: "" });
1095
- const [statusApplicableList, setStatusApplicableList] = React7.useState([]);
1096
- const [loading, setLoading] = React7.useState(false);
1097
- const [snackbar, setSnackbar] = React7.useState({
1095
+ const [rejectReasons, setRejectReasons] = React2.useState("");
1096
+ const [comment, setComment] = React2.useState("");
1097
+ const [error, setError] = React2.useState({ reason: "", comment: "" });
1098
+ const [statusApplicableList, setStatusApplicableList] = React2.useState([]);
1099
+ const [loading, setLoading] = React2.useState(false);
1100
+ const [snackbar, setSnackbar] = React2.useState({
1098
1101
  open: false,
1099
1102
  message: "",
1100
1103
  severity: "success"
1101
1104
  });
1102
1105
  const handleCloseSnackbar = () => setSnackbar((prev) => ({ ...prev, open: false }));
1103
- React7.useEffect(() => {
1106
+ React2.useEffect(() => {
1104
1107
  (async () => {
1105
1108
  var _a;
1106
1109
  try {
@@ -1306,10 +1309,10 @@ function OnHoldDialog({
1306
1309
  const { userInfo, api } = useWorkflowContext();
1307
1310
  const theme = styles.useTheme();
1308
1311
  useMediaQuery__default.default(theme.breakpoints.down("lg"));
1309
- const [comment, setComment] = React7.useState("");
1310
- const [error, setError] = React7.useState({ comment: "" });
1311
- const [loading, setLoading] = React7.useState(false);
1312
- const [snackbar, setSnackbar] = React7.useState({
1312
+ const [comment, setComment] = React2.useState("");
1313
+ const [error, setError] = React2.useState({ comment: "" });
1314
+ const [loading, setLoading] = React2.useState(false);
1315
+ const [snackbar, setSnackbar] = React2.useState({
1313
1316
  open: false,
1314
1317
  message: "",
1315
1318
  severity: "success"
@@ -1458,8 +1461,8 @@ function OnHoldDialog({
1458
1461
  }
1459
1462
  var OnHoldDialog_default = OnHoldDialog;
1460
1463
  var useDebounce = (value, delay) => {
1461
- const [debouncedValue, setDebouncedValue] = React7.useState(value);
1462
- React7.useEffect(() => {
1464
+ const [debouncedValue, setDebouncedValue] = React2.useState(value);
1465
+ React2.useEffect(() => {
1463
1466
  const timeoutId = setTimeout(() => {
1464
1467
  setDebouncedValue(value);
1465
1468
  }, delay);
@@ -1553,15 +1556,15 @@ function FilterModal({
1553
1556
  onApply
1554
1557
  }) {
1555
1558
  const { api } = useWorkflowContext();
1556
- const [approvalType, setApprovalType] = React7.useState(
1559
+ const [approvalType, setApprovalType] = React2.useState(
1557
1560
  (initialFilters == null ? void 0 : initialFilters.approvalType) || ""
1558
1561
  );
1559
- const [approvalStatus, setApprovalStatus] = React7.useState(
1562
+ const [approvalStatus, setApprovalStatus] = React2.useState(
1560
1563
  (initialFilters == null ? void 0 : initialFilters.approvalStatus) || ""
1561
1564
  );
1562
- const [sortBy, setSortBy] = React7.useState((initialFilters == null ? void 0 : initialFilters.sortBy) || "");
1563
- const [approvalTypeOptions, setApprovalTypeOptions] = React7.useState([]);
1564
- React7.useEffect(() => {
1565
+ const [sortBy, setSortBy] = React2.useState((initialFilters == null ? void 0 : initialFilters.sortBy) || "");
1566
+ const [approvalTypeOptions, setApprovalTypeOptions] = React2.useState([]);
1567
+ React2.useEffect(() => {
1565
1568
  api.get({ url: "/workflow/activities?page=1&size=1000", serviceURL: "api" }).then((res) => {
1566
1569
  var _a;
1567
1570
  console.log("\u{1F680} ~ FilterModal ~ res:", res);
@@ -1570,7 +1573,7 @@ function FilterModal({
1570
1573
  console.error("Failed to fetch approval types:", err);
1571
1574
  });
1572
1575
  }, [api]);
1573
- React7.useEffect(() => {
1576
+ React2.useEffect(() => {
1574
1577
  if (open) {
1575
1578
  setApprovalType((initialFilters == null ? void 0 : initialFilters.approvalType) || "");
1576
1579
  setApprovalStatus((initialFilters == null ? void 0 : initialFilters.approvalStatus) || "");
@@ -1795,22 +1798,23 @@ function ApprovalWorkflow({
1795
1798
  var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s;
1796
1799
  material.useTheme();
1797
1800
  const { api, urlBuilder, loadingComponent, ENV_VARIABLES } = useWorkflowContext();
1798
- const [selectedOption, setSelectedOption] = React7.useState(
1801
+ const [selectedOption, setSelectedOption] = React2.useState(
1799
1802
  selectedWorkflowsList.length ? "selected" : "Assign To Me"
1800
1803
  );
1801
1804
  console.log("\u{1F680} ~ ApprovalWorkflow ~ selectedOption:", selectedOption);
1802
- const [expandedId, setExpandedId] = React7.useState(null);
1803
- const [sendDialog, setSendDialog] = React7__default.default.useState(null);
1804
- const [approveTarget, setApproveTarget] = React7__default.default.useState(null);
1805
- const [rejectTarget, setRejectTarget] = React7__default.default.useState(null);
1806
- const [onHoldTarget, setOnHoldTarget] = React7__default.default.useState(null);
1807
- const [expandedDetails, setExpandedDetails] = React7.useState([]);
1805
+ const [expandedId, setExpandedId] = React2.useState(null);
1806
+ const [sendDialog, setSendDialog] = React2.useState(null);
1807
+ const [approveTarget, setApproveTarget] = React2.useState(null);
1808
+ const [rejectTarget, setRejectTarget] = React2.useState(null);
1809
+ const [onHoldTarget, setOnHoldTarget] = React2.useState(null);
1810
+ const [expandedDetails, setExpandedDetails] = React2.useState([]);
1808
1811
  console.log("\u{1F680} ~ ApprovalWorkflow ~ expandedDetails:", expandedDetails);
1809
- const [descriptionView, setDescriptionView] = React7.useState(null);
1810
- const [urlConfig, setUrlConfig] = React7.useState({});
1811
- const [viewMoreDetails, setViewMoreDetails] = React7.useState(null);
1812
- const [isViewMoreOpen, setIsViewMoreOpen] = React7.useState(false);
1813
- const [isFilterOpen, setIsFilterOpen] = React7.useState(false);
1812
+ const [descriptionView, setDescriptionView] = React2.useState(null);
1813
+ const [urlConfig, setUrlConfig] = React2.useState({});
1814
+ const [viewMoreDetails, setViewMoreDetails] = React2.useState(null);
1815
+ const [isViewMoreOpen, setIsViewMoreOpen] = React2.useState(false);
1816
+ const [isFilterOpen, setIsFilterOpen] = React2.useState(false);
1817
+ console.log("\u{1F680} ~ PIPELINE TEST");
1814
1818
  const handleOpenViewMore = (details) => {
1815
1819
  setViewMoreDetails(details);
1816
1820
  setIsViewMoreOpen(true);
@@ -1819,7 +1823,7 @@ function ApprovalWorkflow({
1819
1823
  setIsViewMoreOpen(false);
1820
1824
  setViewMoreDetails(null);
1821
1825
  };
1822
- const [tabs, setTabs] = React7.useState({
1826
+ const [tabs, setTabs] = React2.useState({
1823
1827
  "Assign To Me": {
1824
1828
  data: [],
1825
1829
  page: 1,
@@ -1858,13 +1862,13 @@ function ApprovalWorkflow({
1858
1862
  }
1859
1863
  });
1860
1864
  console.log("\u{1F680} ~ ApprovalWorkflow ~ tabs set:", tabs);
1861
- const [searchText, setSearchText] = React7.useState("");
1865
+ const [searchText, setSearchText] = React2.useState("");
1862
1866
  const debouncedSearchTerm = useDebounce_default(searchText, 500);
1863
- React7.useEffect(() => {
1867
+ React2.useEffect(() => {
1864
1868
  var _a2;
1865
1869
  setSearchText(((_a2 = tabs[selectedOption]) == null ? void 0 : _a2.search) || "");
1866
1870
  }, [selectedOption]);
1867
- React7.useEffect(() => {
1871
+ React2.useEffect(() => {
1868
1872
  var _a2, _b2;
1869
1873
  if (debouncedSearchTerm !== tabs[selectedOption].search && ((_a2 = tabs[selectedOption]) == null ? void 0 : _a2.initialized)) {
1870
1874
  setTabs((prev) => ({
@@ -1886,14 +1890,14 @@ function ApprovalWorkflow({
1886
1890
  );
1887
1891
  }
1888
1892
  }, [debouncedSearchTerm]);
1889
- const handleClearSearch = React7.useCallback(() => {
1893
+ const handleClearSearch = React2.useCallback(() => {
1890
1894
  setSearchText("");
1891
1895
  }, []);
1892
- const handleSearchChange = React7.useCallback((value) => {
1896
+ const handleSearchChange = React2.useCallback((value) => {
1893
1897
  setSearchText(value);
1894
1898
  }, []);
1895
- const observer = React7__default.default.useRef(null);
1896
- const lastCardRef = React7.useCallback(
1899
+ const observer = React2.useRef(null);
1900
+ const lastCardRef = React2.useCallback(
1897
1901
  (node) => {
1898
1902
  const currentTab = tabs[selectedOption];
1899
1903
  if ((currentTab == null ? void 0 : currentTab.loading) || !(currentTab == null ? void 0 : currentTab.hasMore)) return;
@@ -1913,6 +1917,24 @@ function ApprovalWorkflow({
1913
1917
  },
1914
1918
  [tabs, selectedOption]
1915
1919
  );
1920
+ const scrollRef = React2.useRef(null);
1921
+ React2.useEffect(() => {
1922
+ const handleKeyDown = (e) => {
1923
+ var _a2, _b2, _c2, _d2;
1924
+ if (((_a2 = document.activeElement) == null ? void 0 : _a2.tagName) === "INPUT" || ((_b2 = document.activeElement) == null ? void 0 : _b2.tagName) === "TEXTAREA") {
1925
+ return;
1926
+ }
1927
+ if (e.key === "ArrowUp") {
1928
+ e.preventDefault();
1929
+ (_c2 = scrollRef.current) == null ? void 0 : _c2.scrollBy({ top: -100, behavior: "smooth" });
1930
+ } else if (e.key === "ArrowDown") {
1931
+ e.preventDefault();
1932
+ (_d2 = scrollRef.current) == null ? void 0 : _d2.scrollBy({ top: 100, behavior: "smooth" });
1933
+ }
1934
+ };
1935
+ window.addEventListener("keydown", handleKeyDown);
1936
+ return () => window.removeEventListener("keydown", handleKeyDown);
1937
+ }, []);
1916
1938
  const handleSendBack = (workflowLogId) => {
1917
1939
  setSendDialog(workflowLogId);
1918
1940
  };
@@ -1945,7 +1967,7 @@ function ApprovalWorkflow({
1945
1967
  return acc;
1946
1968
  }, {});
1947
1969
  };
1948
- React7.useEffect(() => {
1970
+ React2.useEffect(() => {
1949
1971
  api.get({
1950
1972
  url: `/workflow/url-config`,
1951
1973
  serviceURL: "api"
@@ -1953,7 +1975,7 @@ function ApprovalWorkflow({
1953
1975
  setUrlConfig(formatDataUrlConfig(res == null ? void 0 : res.data));
1954
1976
  });
1955
1977
  }, []);
1956
- const fetchData = React7.useCallback(
1978
+ const fetchData = React2.useCallback(
1957
1979
  (tab, page, search, filtersOverride) => {
1958
1980
  var _a2, _b2, _c2;
1959
1981
  console.log("[DEBUG-FETCH-DATA] \u{1F3AF} fetchData called with:", {
@@ -2183,7 +2205,7 @@ function ApprovalWorkflow({
2183
2205
  serviceURL: "api"
2184
2206
  }).then((res) => setExpandedDetails(res == null ? void 0 : res.data));
2185
2207
  };
2186
- React7.useEffect(() => {
2208
+ React2.useEffect(() => {
2187
2209
  var _a2;
2188
2210
  console.log("[DEBUG-INIT] \u{1F680} Initial useEffect triggered");
2189
2211
  console.log("[DEBUG-INIT] userInfo:", userInfo);
@@ -2207,13 +2229,13 @@ function ApprovalWorkflow({
2207
2229
  console.log("[DEBUG-INIT] \u274C No userInfo.id, skipping initial fetch");
2208
2230
  }
2209
2231
  }, [userInfo]);
2210
- React7.useEffect(() => {
2232
+ React2.useEffect(() => {
2211
2233
  const tabState = tabs[selectedOption];
2212
2234
  if ((tabState == null ? void 0 : tabState.page) > 1) {
2213
2235
  fetchData(selectedOption, tabState.page, tabState.search);
2214
2236
  }
2215
2237
  }, [(_d = tabs[selectedOption]) == null ? void 0 : _d.page]);
2216
- React7.useEffect(() => {
2238
+ React2.useEffect(() => {
2217
2239
  var _a2;
2218
2240
  if (Object.keys(urlConfig).length > 0 && userInfo && tabs && tabs["Assign To Me"] && !tabs["Assign To Me"].initialized) {
2219
2241
  fetchData("Assign To Me", 1, ((_a2 = tabs["Assign To Me"]) == null ? void 0 : _a2.search) || "");
@@ -2391,6 +2413,7 @@ function ApprovalWorkflow({
2391
2413
  /* @__PURE__ */ jsxRuntime.jsxs(
2392
2414
  system.Box,
2393
2415
  {
2416
+ ref: scrollRef,
2394
2417
  className: "fixedModal hide-scrollbar",
2395
2418
  sx: {
2396
2419
  overflowY: "auto",
@@ -2620,7 +2643,7 @@ function DialogOpener({
2620
2643
  }) {
2621
2644
  const theme = material.useTheme();
2622
2645
  useMediaQuery__default.default(theme.breakpoints.down("lg"));
2623
- const [screenWidth, setScreenWidth] = React7.useState(
2646
+ const [screenWidth, setScreenWidth] = React2.useState(
2624
2647
  typeof window !== "undefined" ? window.innerWidth : 0
2625
2648
  );
2626
2649
  console.log("Dialog opener props", {
@@ -2629,7 +2652,7 @@ function DialogOpener({
2629
2652
  userInfoData,
2630
2653
  selectedWorkflowsList
2631
2654
  });
2632
- React7.useEffect(() => {
2655
+ React2.useEffect(() => {
2633
2656
  const updateScreenWidth = () => setScreenWidth(window.innerWidth);
2634
2657
  window.addEventListener("resize", updateScreenWidth);
2635
2658
  return () => window.removeEventListener("resize", updateScreenWidth);
@@ -2734,7 +2757,7 @@ function ApprovalWorkflow2(props) {
2734
2757
  ENV_VARIABLES,
2735
2758
  ...rest
2736
2759
  } = props;
2737
- console.log("\u{1F680} ~ ApprovalWorkflow ~ props:", props);
2760
+ console.log("\u{1F680} ~ PIPELINE TEST");
2738
2761
  return /* @__PURE__ */ jsxRuntime.jsx(
2739
2762
  WorkflowProvider,
2740
2763
  {