flowcore-fn 10.4.1 → 10.4.2
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/pkg-index.js +454 -324
- package/dist/pkg-index.mjs +296 -168
- package/package.json +1 -1
package/dist/pkg-index.js
CHANGED
|
@@ -149,8 +149,8 @@ __export(pkg_index_exports, {
|
|
|
149
149
|
module.exports = __toCommonJS(pkg_index_exports);
|
|
150
150
|
|
|
151
151
|
// src/components/Sidebar.jsx
|
|
152
|
-
var
|
|
153
|
-
var
|
|
152
|
+
var import_react138 = require("react");
|
|
153
|
+
var import_react139 = require("@remixicon/react");
|
|
154
154
|
var import_router = require("next/router");
|
|
155
155
|
|
|
156
156
|
// src/components/workflow/WorkflowMain.jsx
|
|
@@ -7654,7 +7654,7 @@ function DocumentConfigTable({
|
|
|
7654
7654
|
onClick: () => handleSort("workflowName"),
|
|
7655
7655
|
className: "fc:py-4 fc:px-2 fc:text-sm fc:cursor-pointer fc:select-none hover:fc:text-slate-900 fc:bg-slate-50 fc:text-center fc:w-38",
|
|
7656
7656
|
children: [
|
|
7657
|
-
"Workflow
|
|
7657
|
+
"Workflow",
|
|
7658
7658
|
" ",
|
|
7659
7659
|
sortKey === "workflowName" ? sortOrder === "asc" ? "\u25B2" : "\u25BC" : "\u25B2"
|
|
7660
7660
|
]
|
|
@@ -7678,7 +7678,7 @@ function DocumentConfigTable({
|
|
|
7678
7678
|
onClick: () => handleSort("stepId"),
|
|
7679
7679
|
className: "fc:py-4 fc:px-2 fc:text-sm fc:cursor-pointer fc:select-none hover:fc:text-slate-900 fc:bg-slate-50 fc:text-center fc:w-38",
|
|
7680
7680
|
children: [
|
|
7681
|
-
"
|
|
7681
|
+
"Step Name",
|
|
7682
7682
|
" ",
|
|
7683
7683
|
sortKey === "stepId" ? sortOrder === "asc" ? "\u25B2" : "\u25BC" : "\u25B2"
|
|
7684
7684
|
]
|
|
@@ -9190,8 +9190,8 @@ function Table({
|
|
|
9190
9190
|
const q = searchQuery.toLowerCase().trim();
|
|
9191
9191
|
const filtered = apiData.filter(
|
|
9192
9192
|
(item) => {
|
|
9193
|
-
var _a, _b, _c, _d, _e, _f, _g;
|
|
9194
|
-
return !q || String((_b = (_a = item.stepPermissionId) != null ? _a : item.id) != null ? _b : "").toLowerCase().includes(q) || String((_c = item.workflowStepId) != null ? _c : "").toLowerCase().includes(q) || String((_g = (_f = (
|
|
9193
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k;
|
|
9194
|
+
return !q || String((_b = (_a = item.stepPermissionId) != null ? _a : item.id) != null ? _b : "").toLowerCase().includes(q) || String((_c = item.workflowStepId) != null ? _c : "").toLowerCase().includes(q) || String((_e = (_d = item.workflowName) != null ? _d : item.WorkflowName) != null ? _e : "").toLowerCase().includes(q) || String((_g = (_f = item.workflowTypeName) != null ? _f : item.WorkflowTypeName) != null ? _g : "").toLowerCase().includes(q) || String((_k = (_j = (_i = (_h = item.stepName) != null ? _h : item.StepName) != null ? _i : item.workflowStepName) != null ? _j : item.WorkflowStepName) != null ? _k : "").toLowerCase().includes(q);
|
|
9195
9195
|
}
|
|
9196
9196
|
);
|
|
9197
9197
|
const sorted = [...filtered].sort((a, b) => {
|
|
@@ -9216,7 +9216,9 @@ function Table({
|
|
|
9216
9216
|
);
|
|
9217
9217
|
const columns = [
|
|
9218
9218
|
// { label: "ID", key: "stepPermissionId" },
|
|
9219
|
-
{ label: "Workflow
|
|
9219
|
+
{ label: "Workflow Type", key: "workflowTypeName" },
|
|
9220
|
+
{ label: "Workflow", key: "workflowName" },
|
|
9221
|
+
{ label: "Step Name", key: "workflowStepId" },
|
|
9220
9222
|
{ label: "Can View", key: "canView" },
|
|
9221
9223
|
{ label: "Can Edit", key: "canEdit" },
|
|
9222
9224
|
{ label: "Can Approve", key: "canApprove" },
|
|
@@ -9294,14 +9296,16 @@ function Table({
|
|
|
9294
9296
|
children: "No step permissions found."
|
|
9295
9297
|
}
|
|
9296
9298
|
) }) : visibleData.map((item, index) => {
|
|
9297
|
-
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
9299
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l;
|
|
9298
9300
|
return /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(
|
|
9299
9301
|
"tr",
|
|
9300
9302
|
{
|
|
9301
9303
|
className: "hover:fc:bg-slate-50/50 fc:transition-colors",
|
|
9302
9304
|
children: [
|
|
9303
9305
|
/* @__PURE__ */ (0, import_jsx_runtime40.jsx)("td", { className: "fc:py-4 fc:px-4 fc:text-center fc:font-medium fc:text-slate-400", children: startIndex + index + 1 }),
|
|
9304
|
-
/* @__PURE__ */ (0, import_jsx_runtime40.jsx)("td", { className: "fc:py-4 fc:px-5 fc:text-center fc:text-[13px] fc:font-
|
|
9306
|
+
/* @__PURE__ */ (0, import_jsx_runtime40.jsx)("td", { className: "fc:py-4 fc:px-5 fc:text-center fc:text-[13px] fc:font-medium fc:text-slate-600 fc:whitespace-nowrap", children: (_d = (_c = item.workflowName) != null ? _c : item.WorkflowName) != null ? _d : "-" }),
|
|
9307
|
+
/* @__PURE__ */ (0, import_jsx_runtime40.jsx)("td", { className: "fc:py-4 fc:px-5 fc:text-center fc:text-[13px] fc:font-medium fc:text-slate-600 fc:whitespace-nowrap", children: (_f = (_e = item.workflowTypeName) != null ? _e : item.WorkflowTypeName) != null ? _f : "-" }),
|
|
9308
|
+
/* @__PURE__ */ (0, import_jsx_runtime40.jsx)("td", { className: "fc:py-4 fc:px-5 fc:text-center fc:text-[13px] fc:font-bold fc:text-slate-600 fc:whitespace-nowrap", children: (_l = (_i = (_h = (_g = item.stepName) != null ? _g : item.StepName) != null ? _h : item.stepName) != null ? _i : item.stepName) != null ? _l : (_k = (_j = item.stepName) != null ? _j : item.stepName) != null ? _k : "-" }),
|
|
9305
9309
|
/* @__PURE__ */ (0, import_jsx_runtime40.jsx)("td", { className: "fc:py-4 fc:px-5 fc:text-center", children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(BoolBadge, { val: item.canView }) }),
|
|
9306
9310
|
/* @__PURE__ */ (0, import_jsx_runtime40.jsx)("td", { className: "fc:py-4 fc:px-5 fc:text-center", children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(BoolBadge, { val: item.canEdit }) }),
|
|
9307
9311
|
/* @__PURE__ */ (0, import_jsx_runtime40.jsx)("td", { className: "fc:py-4 fc:px-5 fc:text-center", children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(BoolBadge, { val: item.canApprove }) }),
|
|
@@ -16425,7 +16429,9 @@ function Table4({
|
|
|
16425
16429
|
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)("div", { className: "fc:max-h-[420px] fc:overflow-auto fc:rounded-2xl fc:border fc:border-slate-200", children: /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)("table", { className: "fc:w-full fc:bg-white fc:text-left", children: [
|
|
16426
16430
|
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)("thead", { className: "fc:sticky fc:top-0 fc:z-10", children: /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)("tr", { children: [
|
|
16427
16431
|
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)("th", { className: "fc:bg-slate-50 fc:px-4 fc:py-4 fc:text-xs", children: "S.NO" }),
|
|
16428
|
-
heading("WORKFLOW
|
|
16432
|
+
heading("WORKFLOW TYPE", "workflowTypeName"),
|
|
16433
|
+
heading("WORKFLOW", "workflowName"),
|
|
16434
|
+
heading("STEP NAME", "stepName"),
|
|
16429
16435
|
heading("ASSIGNMENT TYPE", "assignmentType"),
|
|
16430
16436
|
heading("NODE TYPE", "hierarchyNodeType"),
|
|
16431
16437
|
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)("th", { className: "fc:bg-slate-50 fc:px-5 fc:py-4 fc:text-xs", children: "POOL ENABLED" }),
|
|
@@ -16434,51 +16440,56 @@ function Table4({
|
|
|
16434
16440
|
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)("tbody", { children: loading ? /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("tr", { children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
16435
16441
|
"td",
|
|
16436
16442
|
{
|
|
16437
|
-
colSpan: "
|
|
16443
|
+
colSpan: "8",
|
|
16438
16444
|
className: "fc:p-8 fc:text-center fc:text-sm fc:text-slate-500",
|
|
16439
16445
|
children: "Loading assignment rules..."
|
|
16440
16446
|
}
|
|
16441
16447
|
) }) : visibleRows.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("tr", { children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
16442
16448
|
"td",
|
|
16443
16449
|
{
|
|
16444
|
-
colSpan: "
|
|
16450
|
+
colSpan: "8",
|
|
16445
16451
|
className: "fc:p-8 fc:text-center fc:text-sm fc:text-slate-400",
|
|
16446
16452
|
children: "No assignment rules found."
|
|
16447
16453
|
}
|
|
16448
|
-
) }) : visibleRows.map((item, index) =>
|
|
16449
|
-
|
|
16450
|
-
|
|
16451
|
-
|
|
16452
|
-
|
|
16453
|
-
|
|
16454
|
-
|
|
16455
|
-
|
|
16456
|
-
|
|
16457
|
-
|
|
16458
|
-
|
|
16459
|
-
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
16460
|
-
|
|
16461
|
-
|
|
16462
|
-
|
|
16463
|
-
|
|
16464
|
-
|
|
16465
|
-
|
|
16466
|
-
|
|
16467
|
-
|
|
16468
|
-
|
|
16469
|
-
|
|
16470
|
-
|
|
16471
|
-
|
|
16472
|
-
|
|
16473
|
-
|
|
16474
|
-
|
|
16475
|
-
|
|
16476
|
-
|
|
16477
|
-
|
|
16478
|
-
|
|
16479
|
-
|
|
16480
|
-
|
|
16481
|
-
|
|
16454
|
+
) }) : visibleRows.map((item, index) => {
|
|
16455
|
+
var _a, _b;
|
|
16456
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)(
|
|
16457
|
+
"tr",
|
|
16458
|
+
{
|
|
16459
|
+
className: "fc:border-t fc:border-slate-100",
|
|
16460
|
+
children: [
|
|
16461
|
+
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)("td", { className: "fc:px-4 fc:py-4 fc:text-center fc:text-sm", children: (currentPage - 1) * pageSize + index + 1 }),
|
|
16462
|
+
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)("td", { className: "fc:px-5 fc:py-4 fc:text-sm", children: (_a = item.workflowTypeName) != null ? _a : "-" }),
|
|
16463
|
+
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)("td", { className: "fc:px-5 fc:py-4 fc:text-sm", children: (_b = item.workflowName) != null ? _b : "-" }),
|
|
16464
|
+
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)("td", { className: "fc:px-5 fc:py-4 fc:text-sm", children: item.stepName }),
|
|
16465
|
+
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)("td", { className: "fc:px-5 fc:py-4 fc:text-sm", children: item.assignmentType }),
|
|
16466
|
+
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)("td", { className: "fc:px-5 fc:py-4 fc:text-sm", children: item.hierarchyNodeType }),
|
|
16467
|
+
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)("td", { className: "fc:px-5 fc:py-4 fc:text-sm", children: item.isPoolEnabled ? "Yes" : "No" }),
|
|
16468
|
+
/* @__PURE__ */ (0, import_jsx_runtime85.jsxs)("td", { className: "fc:px-5 fc:py-4 fc:text-sm", children: [
|
|
16469
|
+
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
16470
|
+
"button",
|
|
16471
|
+
{
|
|
16472
|
+
type: "button",
|
|
16473
|
+
onClick: () => onEdit(item),
|
|
16474
|
+
className: "fc:mr-2 fc:rounded-lg fc:bg-blue-50 fc:px-3 fc:py-1 fc:text-blue-600",
|
|
16475
|
+
children: "Edit"
|
|
16476
|
+
}
|
|
16477
|
+
),
|
|
16478
|
+
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
16479
|
+
"button",
|
|
16480
|
+
{
|
|
16481
|
+
type: "button",
|
|
16482
|
+
onClick: () => onDelete(item),
|
|
16483
|
+
className: "fc:rounded-lg fc:bg-rose-50 fc:px-3 fc:py-1 fc:text-rose-600",
|
|
16484
|
+
children: "Delete"
|
|
16485
|
+
}
|
|
16486
|
+
)
|
|
16487
|
+
] })
|
|
16488
|
+
]
|
|
16489
|
+
},
|
|
16490
|
+
item.assignmentRuleId
|
|
16491
|
+
);
|
|
16492
|
+
}) })
|
|
16482
16493
|
] }) }),
|
|
16483
16494
|
/* @__PURE__ */ (0, import_jsx_runtime85.jsxs)("div", { className: "fc:flex fc:justify-end fc:gap-2 fc:text-sm", children: [
|
|
16484
16495
|
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
@@ -17020,7 +17031,7 @@ function Workflow_Step_Hierarchy_Mapping_Main() {
|
|
|
17020
17031
|
}
|
|
17021
17032
|
};
|
|
17022
17033
|
const filteredMappings = mappings.filter((mapping) => {
|
|
17023
|
-
var _a2, _b2, _c2, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q;
|
|
17034
|
+
var _a2, _b2, _c2, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r;
|
|
17024
17035
|
const query = searchQuery.trim().toLowerCase();
|
|
17025
17036
|
const stepId = (_c2 = (_b2 = (_a2 = mapping.workflowId) != null ? _a2 : mapping.WorkflowId) != null ? _b2 : mapping.workflowStepId) != null ? _c2 : mapping.WorkflowStepId;
|
|
17026
17037
|
const nodeId = (_d = mapping.hierarchyNodeId) != null ? _d : mapping.HierarchyNodeId;
|
|
@@ -17029,6 +17040,7 @@ function Workflow_Step_Hierarchy_Mapping_Main() {
|
|
|
17029
17040
|
const stepCode = (_p = (_o = mapping.workflowCode) != null ? _o : mapping.WorkflowCode) != null ? _p : workflowCodeMap[stepId];
|
|
17030
17041
|
return !query || [
|
|
17031
17042
|
(_q = mapping.workflowHierarchyNodeMappingId) != null ? _q : mapping.WorkflowHierarchyNodeMappingId,
|
|
17043
|
+
(_r = mapping.workflowTypeName) != null ? _r : mapping.WorkflowTypeName,
|
|
17032
17044
|
stepId,
|
|
17033
17045
|
stepName,
|
|
17034
17046
|
stepCode,
|
|
@@ -17115,6 +17127,7 @@ function Workflow_Step_Hierarchy_Mapping_Main() {
|
|
|
17115
17127
|
/* @__PURE__ */ (0, import_jsx_runtime88.jsx)("div", { ref: tableRef, className: "fc:overflow-x-auto", children: /* @__PURE__ */ (0, import_jsx_runtime88.jsxs)("table", { className: "fc:w-full fc:text-sm", children: [
|
|
17116
17128
|
/* @__PURE__ */ (0, import_jsx_runtime88.jsx)("thead", { children: /* @__PURE__ */ (0, import_jsx_runtime88.jsxs)("tr", { className: "fc:bg-slate-100 fc:text-slate-600", children: [
|
|
17117
17129
|
/* @__PURE__ */ (0, import_jsx_runtime88.jsx)("th", { className: "fc:p-3 fc:text-left", children: "#" }),
|
|
17130
|
+
/* @__PURE__ */ (0, import_jsx_runtime88.jsx)("th", { className: "fc:p-3 fc:text-left", children: "Workflow Type" }),
|
|
17118
17131
|
/* @__PURE__ */ (0, import_jsx_runtime88.jsx)("th", { className: "fc:p-3 fc:text-left", children: "Workflow Name" }),
|
|
17119
17132
|
/* @__PURE__ */ (0, import_jsx_runtime88.jsx)("th", { className: "fc:p-3 fc:text-left", children: "Workflow Code" }),
|
|
17120
17133
|
/* @__PURE__ */ (0, import_jsx_runtime88.jsx)("th", { className: "fc:p-3 fc:text-left", children: "Hierarchy Node Name" }),
|
|
@@ -17124,19 +17137,19 @@ function Workflow_Step_Hierarchy_Mapping_Main() {
|
|
|
17124
17137
|
/* @__PURE__ */ (0, import_jsx_runtime88.jsx)("tbody", { children: isLoading ? /* @__PURE__ */ (0, import_jsx_runtime88.jsx)("tr", { children: /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(
|
|
17125
17138
|
"td",
|
|
17126
17139
|
{
|
|
17127
|
-
colSpan:
|
|
17140
|
+
colSpan: 7,
|
|
17128
17141
|
className: "fc:p-8 fc:text-center fc:text-slate-400",
|
|
17129
17142
|
children: "Loading mappings..."
|
|
17130
17143
|
}
|
|
17131
17144
|
) }) : visibleMappings.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime88.jsx)("tr", { children: /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(
|
|
17132
17145
|
"td",
|
|
17133
17146
|
{
|
|
17134
|
-
colSpan:
|
|
17147
|
+
colSpan: 7,
|
|
17135
17148
|
className: "fc:p-8 fc:text-center fc:text-slate-400",
|
|
17136
17149
|
children: "No workflow step hierarchy mappings found."
|
|
17137
17150
|
}
|
|
17138
17151
|
) }) : visibleMappings.map((mapping, index) => {
|
|
17139
|
-
var _a2, _b2, _c2, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t;
|
|
17152
|
+
var _a2, _b2, _c2, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t, _u, _v;
|
|
17140
17153
|
const mappingId = getMappingId(mapping);
|
|
17141
17154
|
const stepId = (_c2 = (_b2 = (_a2 = mapping.workflowId) != null ? _a2 : mapping.WorkflowId) != null ? _b2 : mapping.workflowStepId) != null ? _c2 : mapping.WorkflowStepId;
|
|
17142
17155
|
const nodeId = (_d = mapping.hierarchyNodeId) != null ? _d : mapping.HierarchyNodeId;
|
|
@@ -17150,6 +17163,7 @@ function Workflow_Step_Hierarchy_Mapping_Main() {
|
|
|
17150
17163
|
className: "fc:border-t fc:border-slate-100 hover:fc:bg-slate-50",
|
|
17151
17164
|
children: [
|
|
17152
17165
|
/* @__PURE__ */ (0, import_jsx_runtime88.jsx)("td", { className: "fc:p-3", children: (safePage - 1) * pageSize + index + 1 }),
|
|
17166
|
+
/* @__PURE__ */ (0, import_jsx_runtime88.jsx)("td", { className: "fc:p-3", children: (_v = (_u = mapping.workflowTypeName) != null ? _u : mapping.WorkflowTypeName) != null ? _v : "-" }),
|
|
17153
17167
|
/* @__PURE__ */ (0, import_jsx_runtime88.jsx)("td", { className: "fc:p-3", children: stepDisplayName }),
|
|
17154
17168
|
/* @__PURE__ */ (0, import_jsx_runtime88.jsx)("td", { className: "fc:p-3", children: stepCodeDisplayName }),
|
|
17155
17169
|
/* @__PURE__ */ (0, import_jsx_runtime88.jsx)("td", { className: "fc:p-3", children: nodeDisplayName }),
|
|
@@ -19838,9 +19852,9 @@ function StatusMain() {
|
|
|
19838
19852
|
}
|
|
19839
19853
|
|
|
19840
19854
|
// src/components/inbox/InboxMain.jsx
|
|
19841
|
-
var
|
|
19855
|
+
var import_react126 = __toESM(require("react"));
|
|
19842
19856
|
var import_sweetalert231 = __toESM(require("sweetalert2"));
|
|
19843
|
-
var
|
|
19857
|
+
var import_react127 = require("@remixicon/react");
|
|
19844
19858
|
|
|
19845
19859
|
// src/components/inbox/PoolConfirmationModal.jsx
|
|
19846
19860
|
var import_react97 = __toESM(require("react"));
|
|
@@ -20728,7 +20742,7 @@ function NotificationPopover({
|
|
|
20728
20742
|
className: `fc:relative fc:h-9 fc:w-9 fc:flex fc:items-center fc:justify-center fc:border fc:rounded-xl fc:transition-all ${isOpen ? "fc:border-blue-400 fc:bg-blue-50 fc:text-blue-600 fc:shadow-sm" : "fc:border-slate-200 fc:bg-white hover:fc:bg-slate-50 fc:text-slate-600 fc:shadow-sm"}`,
|
|
20729
20743
|
children: [
|
|
20730
20744
|
isOpen ? /* @__PURE__ */ (0, import_jsx_runtime100.jsx)(import_react104.RiNotification3Fill, { size: 17 }) : /* @__PURE__ */ (0, import_jsx_runtime100.jsx)(import_react104.RiNotification3Line, { size: 17 }),
|
|
20731
|
-
/* @__PURE__ */ (0, import_jsx_runtime100.jsx)("span", { className: "fc:absolute fc:-top-1.5 fc:-right-1.5 fc:min-w-[18px] fc:h-[18px] fc:px-1 fc:flex fc:items-center fc:justify-center fc:bg-rose-500 fc:text-white fc:text-[10px] fc:font-extrabold fc:rounded-full fc:shadow-sm fc:border-2 fc:border-white fc:leading-none", children: unreadCount >
|
|
20745
|
+
unreadCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime100.jsx)("span", { className: "fc:absolute fc:-top-1.5 fc:-right-1.5 fc:min-w-[18px] fc:h-[18px] fc:px-1 fc:flex fc:items-center fc:justify-center fc:bg-rose-500 fc:text-white fc:text-[10px] fc:font-extrabold fc:rounded-full fc:shadow-sm fc:border-2 fc:border-white fc:leading-none", children: unreadCount > 99 ? "99+" : unreadCount })
|
|
20732
20746
|
]
|
|
20733
20747
|
}
|
|
20734
20748
|
),
|
|
@@ -20936,12 +20950,120 @@ function NotificationPopover({
|
|
|
20936
20950
|
}
|
|
20937
20951
|
|
|
20938
20952
|
// src/components/inbox/ReviewApplication.jsx
|
|
20939
|
-
var
|
|
20940
|
-
var
|
|
20953
|
+
var import_react124 = __toESM(require("react"));
|
|
20954
|
+
var import_react125 = require("@remixicon/react");
|
|
20955
|
+
|
|
20956
|
+
// src/components/inbox/ReviewHeaderBar.jsx
|
|
20957
|
+
var import_react106 = __toESM(require("react"));
|
|
20958
|
+
var import_react107 = require("@remixicon/react");
|
|
20959
|
+
|
|
20960
|
+
// src/components/Service/UserProfileService.js
|
|
20961
|
+
var import_react105 = require("react");
|
|
20962
|
+
init_ApiEndpointsProvider();
|
|
20963
|
+
init_ApiServicepackage();
|
|
20964
|
+
var PROFILE_STORAGE_KEY = "FLOWCORE_USER_PROFILE";
|
|
20965
|
+
var memoryCachedProfile = null;
|
|
20966
|
+
var inflightPromise = null;
|
|
20967
|
+
var getProfileEndpoint = () => {
|
|
20968
|
+
var _a, _b, _c;
|
|
20969
|
+
try {
|
|
20970
|
+
const endpoints = getApiEndpoints();
|
|
20971
|
+
if (endpoints == null ? void 0 : endpoints.ProfileApi) return endpoints.ProfileApi;
|
|
20972
|
+
if (endpoints == null ? void 0 : endpoints.profileApi) return endpoints.profileApi;
|
|
20973
|
+
if ((_a = endpoints == null ? void 0 : endpoints.flowCore) == null ? void 0 : _a.profileApi) return endpoints.flowCore.profileApi;
|
|
20974
|
+
if ((_b = endpoints == null ? void 0 : endpoints.flowCore) == null ? void 0 : _b.ProfileApi) return endpoints.flowCore.ProfileApi;
|
|
20975
|
+
if ((_c = endpoints == null ? void 0 : endpoints.flowCore) == null ? void 0 : _c.getDashboardProfile) return endpoints.flowCore.getDashboardProfile;
|
|
20976
|
+
} catch (err) {
|
|
20977
|
+
}
|
|
20978
|
+
return null;
|
|
20979
|
+
};
|
|
20980
|
+
var extractName = (data) => {
|
|
20981
|
+
if (!data || typeof data !== "object") return "";
|
|
20982
|
+
return data.name || data.Name || data.userName || data.fullName || "";
|
|
20983
|
+
};
|
|
20984
|
+
var fetchUserProfile = async (forceRefresh = false) => {
|
|
20985
|
+
if (!forceRefresh) {
|
|
20986
|
+
if (memoryCachedProfile) {
|
|
20987
|
+
return memoryCachedProfile;
|
|
20988
|
+
}
|
|
20989
|
+
if (typeof window !== "undefined") {
|
|
20990
|
+
try {
|
|
20991
|
+
const stored = sessionStorage.getItem(PROFILE_STORAGE_KEY);
|
|
20992
|
+
if (stored) {
|
|
20993
|
+
memoryCachedProfile = JSON.parse(stored);
|
|
20994
|
+
return memoryCachedProfile;
|
|
20995
|
+
}
|
|
20996
|
+
} catch (e) {
|
|
20997
|
+
}
|
|
20998
|
+
}
|
|
20999
|
+
}
|
|
21000
|
+
if (inflightPromise) {
|
|
21001
|
+
return inflightPromise;
|
|
21002
|
+
}
|
|
21003
|
+
inflightPromise = (async () => {
|
|
21004
|
+
var _a, _b, _c, _d, _e;
|
|
21005
|
+
try {
|
|
21006
|
+
const endpoint3 = getProfileEndpoint();
|
|
21007
|
+
if (!endpoint3) return null;
|
|
21008
|
+
const apiService2 = getApiService();
|
|
21009
|
+
const res = await apiService2.get(endpoint3);
|
|
21010
|
+
const data = (_e = (_d = (_c = (_a = res == null ? void 0 : res.data) == null ? void 0 : _a.data) != null ? _c : (_b = res == null ? void 0 : res.data) == null ? void 0 : _b.result) != null ? _d : res == null ? void 0 : res.data) != null ? _e : res;
|
|
21011
|
+
if (data && typeof data === "object") {
|
|
21012
|
+
memoryCachedProfile = data;
|
|
21013
|
+
if (typeof window !== "undefined") {
|
|
21014
|
+
try {
|
|
21015
|
+
sessionStorage.setItem(PROFILE_STORAGE_KEY, JSON.stringify(data));
|
|
21016
|
+
} catch (e) {
|
|
21017
|
+
}
|
|
21018
|
+
}
|
|
21019
|
+
return data;
|
|
21020
|
+
}
|
|
21021
|
+
return null;
|
|
21022
|
+
} catch (error) {
|
|
21023
|
+
console.warn("Failed to fetch dashboard profile:", error);
|
|
21024
|
+
return null;
|
|
21025
|
+
} finally {
|
|
21026
|
+
inflightPromise = null;
|
|
21027
|
+
}
|
|
21028
|
+
})();
|
|
21029
|
+
return inflightPromise;
|
|
21030
|
+
};
|
|
21031
|
+
var useUserProfile = () => {
|
|
21032
|
+
const [profile, setProfile] = (0, import_react105.useState)(() => {
|
|
21033
|
+
if (memoryCachedProfile) return memoryCachedProfile;
|
|
21034
|
+
if (typeof window !== "undefined") {
|
|
21035
|
+
try {
|
|
21036
|
+
const stored = sessionStorage.getItem(PROFILE_STORAGE_KEY);
|
|
21037
|
+
if (stored) return JSON.parse(stored);
|
|
21038
|
+
} catch (e) {
|
|
21039
|
+
}
|
|
21040
|
+
}
|
|
21041
|
+
return null;
|
|
21042
|
+
});
|
|
21043
|
+
const [userName, setUserName] = (0, import_react105.useState)(() => extractName(profile));
|
|
21044
|
+
(0, import_react105.useEffect)(() => {
|
|
21045
|
+
let isCurrent = true;
|
|
21046
|
+
fetchUserProfile().then((data) => {
|
|
21047
|
+
if (!isCurrent || !data) return;
|
|
21048
|
+
setProfile(data);
|
|
21049
|
+
const name = extractName(data);
|
|
21050
|
+
if (name) {
|
|
21051
|
+
setUserName(name);
|
|
21052
|
+
}
|
|
21053
|
+
});
|
|
21054
|
+
return () => {
|
|
21055
|
+
isCurrent = false;
|
|
21056
|
+
};
|
|
21057
|
+
}, []);
|
|
21058
|
+
const initial = userName ? userName.trim().charAt(0).toUpperCase() : "U";
|
|
21059
|
+
return {
|
|
21060
|
+
profile,
|
|
21061
|
+
userName,
|
|
21062
|
+
initial
|
|
21063
|
+
};
|
|
21064
|
+
};
|
|
20941
21065
|
|
|
20942
21066
|
// src/components/inbox/ReviewHeaderBar.jsx
|
|
20943
|
-
var import_react105 = __toESM(require("react"));
|
|
20944
|
-
var import_react106 = require("@remixicon/react");
|
|
20945
21067
|
var import_jsx_runtime101 = require("react/jsx-runtime");
|
|
20946
21068
|
function ReviewHeaderBar({
|
|
20947
21069
|
onBackToInbox,
|
|
@@ -20949,11 +21071,15 @@ function ReviewHeaderBar({
|
|
|
20949
21071
|
activeStepName,
|
|
20950
21072
|
assignedSteps = [],
|
|
20951
21073
|
onSelectWorkflowStepId,
|
|
20952
|
-
refreshKey
|
|
21074
|
+
refreshKey,
|
|
21075
|
+
userName: propUserName
|
|
20953
21076
|
}) {
|
|
20954
|
-
const
|
|
20955
|
-
const
|
|
20956
|
-
|
|
21077
|
+
const { userName: hookUserName, initial: hookInitial } = useUserProfile();
|
|
21078
|
+
const userName = propUserName || hookUserName;
|
|
21079
|
+
const userInitial = userName ? userName.trim().charAt(0).toUpperCase() : hookInitial;
|
|
21080
|
+
const [roleDropdownOpen, setRoleDropdownOpen] = (0, import_react106.useState)(false);
|
|
21081
|
+
const roleDropdownRef = (0, import_react106.useRef)(null);
|
|
21082
|
+
(0, import_react106.useEffect)(() => {
|
|
20957
21083
|
const handleOutsideClick = (e) => {
|
|
20958
21084
|
if (roleDropdownRef.current && !roleDropdownRef.current.contains(e.target)) {
|
|
20959
21085
|
setRoleDropdownOpen(false);
|
|
@@ -20974,12 +21100,12 @@ function ReviewHeaderBar({
|
|
|
20974
21100
|
title: "Back to My Files",
|
|
20975
21101
|
className: "fc:inline-flex fc:items-center fc:gap-1.5 fc:h-8 fc:px-2.5 fc:rounded-lg fc:border fc:border-slate-200 fc:bg-white fc:text-slate-600 hover:fc:bg-slate-50 hover:fc:text-blue-600 fc:transition-colors fc:shrink-0 fc:font-semibold",
|
|
20976
21102
|
children: [
|
|
20977
|
-
/* @__PURE__ */ (0, import_jsx_runtime101.jsx)(
|
|
21103
|
+
/* @__PURE__ */ (0, import_jsx_runtime101.jsx)(import_react107.RiArrowGoBackLine, { size: 15 }),
|
|
20978
21104
|
/* @__PURE__ */ (0, import_jsx_runtime101.jsx)("span", { children: "My Files" })
|
|
20979
21105
|
]
|
|
20980
21106
|
}
|
|
20981
21107
|
),
|
|
20982
|
-
/* @__PURE__ */ (0, import_jsx_runtime101.jsx)(
|
|
21108
|
+
/* @__PURE__ */ (0, import_jsx_runtime101.jsx)(import_react107.RiArrowRightSLine, { size: 14, className: "fc:text-slate-400" }),
|
|
20983
21109
|
/* @__PURE__ */ (0, import_jsx_runtime101.jsx)("span", { className: "fc:font-bold fc:text-slate-800", children: "Review Application" })
|
|
20984
21110
|
] }),
|
|
20985
21111
|
/* @__PURE__ */ (0, import_jsx_runtime101.jsxs)("div", { className: "fc:flex fc:items-center fc:gap-3", children: [
|
|
@@ -20998,12 +21124,12 @@ function ReviewHeaderBar({
|
|
|
20998
21124
|
className: "fc:relative fc:flex fc:items-center fc:gap-2.5 fc:bg-slate-50 fc:border fc:border-slate-200 fc:rounded-xl fc:p-1.5 fc:pr-3",
|
|
20999
21125
|
children: [
|
|
21000
21126
|
/* @__PURE__ */ (0, import_jsx_runtime101.jsxs)("div", { className: "fc:relative fc:shrink-0", children: [
|
|
21001
|
-
/* @__PURE__ */ (0, import_jsx_runtime101.jsx)("div", { className: "fc:w-8 fc:h-8 fc:rounded-full fc:bg-blue-600 fc:text-white fc:font-extrabold fc:text-xs fc:flex fc:items-center fc:justify-center fc:shadow-sm", children:
|
|
21127
|
+
/* @__PURE__ */ (0, import_jsx_runtime101.jsx)("div", { className: "fc:w-8 fc:h-8 fc:rounded-full fc:bg-blue-600 fc:text-white fc:font-extrabold fc:text-xs fc:flex fc:items-center fc:justify-center fc:shadow-sm", children: userInitial }),
|
|
21002
21128
|
/* @__PURE__ */ (0, import_jsx_runtime101.jsx)("span", { className: "fc:absolute fc:-bottom-0.5 fc:-right-0.5 fc:w-2 fc:h-2 fc:bg-emerald-500 fc:border-2 fc:border-white fc:rounded-full" })
|
|
21003
21129
|
] }),
|
|
21004
21130
|
/* @__PURE__ */ (0, import_jsx_runtime101.jsxs)("div", { className: "fc:flex fc:flex-col fc:justify-center", children: [
|
|
21005
21131
|
/* @__PURE__ */ (0, import_jsx_runtime101.jsxs)("div", { className: "fc:flex fc:items-center fc:gap-1.5", children: [
|
|
21006
|
-
/* @__PURE__ */ (0, import_jsx_runtime101.jsx)("span", { className: "fc:text-xs fc:font-extrabold fc:text-slate-800", children: "
|
|
21132
|
+
/* @__PURE__ */ (0, import_jsx_runtime101.jsx)("span", { className: "fc:text-xs fc:font-extrabold fc:text-slate-800", children: userName || "User" }),
|
|
21007
21133
|
/* @__PURE__ */ (0, import_jsx_runtime101.jsxs)(
|
|
21008
21134
|
"button",
|
|
21009
21135
|
{
|
|
@@ -21014,7 +21140,7 @@ function ReviewHeaderBar({
|
|
|
21014
21140
|
className: "fc:inline-flex fc:items-center fc:gap-0.5 fc:rounded fc:border fc:border-blue-200 fc:bg-blue-50 fc:px-1.5 fc:py-0.2 fc:text-[10px] fc:font-bold fc:text-blue-700 hover:fc:bg-blue-100",
|
|
21015
21141
|
children: [
|
|
21016
21142
|
activeStepName || "Scruitny",
|
|
21017
|
-
/* @__PURE__ */ (0, import_jsx_runtime101.jsx)(
|
|
21143
|
+
/* @__PURE__ */ (0, import_jsx_runtime101.jsx)(import_react107.RiArrowDownSLine, { size: 11 })
|
|
21018
21144
|
]
|
|
21019
21145
|
}
|
|
21020
21146
|
)
|
|
@@ -21077,7 +21203,7 @@ function ReviewHeaderBar({
|
|
|
21077
21203
|
type: "button",
|
|
21078
21204
|
title: "Settings",
|
|
21079
21205
|
className: "fc:w-8 fc:h-8 fc:flex fc:items-center fc:justify-center fc:rounded-lg fc:border fc:border-slate-200 fc:bg-white hover:fc:bg-slate-50 fc:text-slate-600 fc:transition-colors",
|
|
21080
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(
|
|
21206
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(import_react107.RiSettings4Line, { size: 16 })
|
|
21081
21207
|
}
|
|
21082
21208
|
)
|
|
21083
21209
|
] })
|
|
@@ -21085,8 +21211,8 @@ function ReviewHeaderBar({
|
|
|
21085
21211
|
}
|
|
21086
21212
|
|
|
21087
21213
|
// src/components/inbox/FileInfoStrip.jsx
|
|
21088
|
-
var
|
|
21089
|
-
var
|
|
21214
|
+
var import_react108 = __toESM(require("react"));
|
|
21215
|
+
var import_react109 = require("@remixicon/react");
|
|
21090
21216
|
var import_jsx_runtime102 = require("react/jsx-runtime");
|
|
21091
21217
|
function FileInfoStrip({
|
|
21092
21218
|
fileNo,
|
|
@@ -21157,7 +21283,7 @@ function FileInfoStrip({
|
|
|
21157
21283
|
type: "button",
|
|
21158
21284
|
className: "fc:inline-flex fc:items-center fc:gap-1.5 fc:px-3 fc:py-1.5 fc:rounded-xl fc:border fc:border-blue-200 fc:bg-white hover:fc:bg-blue-50 fc:text-blue-600 fc:text-xs fc:font-bold fc:shrink-0 fc:shadow-sm fc:transition-colors fc:whitespace-nowrap fc:ml-2",
|
|
21159
21285
|
children: [
|
|
21160
|
-
/* @__PURE__ */ (0, import_jsx_runtime102.jsx)(
|
|
21286
|
+
/* @__PURE__ */ (0, import_jsx_runtime102.jsx)(import_react109.RiEyeLine, { size: 14 }),
|
|
21161
21287
|
/* @__PURE__ */ (0, import_jsx_runtime102.jsx)("span", { children: "Preview Form (Read Only)" })
|
|
21162
21288
|
]
|
|
21163
21289
|
}
|
|
@@ -21168,8 +21294,8 @@ function FileInfoStrip({
|
|
|
21168
21294
|
}
|
|
21169
21295
|
|
|
21170
21296
|
// src/components/inbox/WorkflowStepper.jsx
|
|
21171
|
-
var
|
|
21172
|
-
var
|
|
21297
|
+
var import_react110 = __toESM(require("react"));
|
|
21298
|
+
var import_react111 = require("@remixicon/react");
|
|
21173
21299
|
var import_jsx_runtime103 = require("react/jsx-runtime");
|
|
21174
21300
|
function WorkflowStepper({
|
|
21175
21301
|
workflowSteps,
|
|
@@ -21204,7 +21330,7 @@ function WorkflowStepper({
|
|
|
21204
21330
|
const markerClass = isComplete ? "fc:border-emerald-600 fc:bg-emerald-600 fc:text-white" : isCurrent ? "fc:border-blue-600 fc:bg-blue-600 fc:text-white fc:ring-4 fc:ring-blue-100" : "fc:border-slate-300 fc:bg-white fc:text-slate-500";
|
|
21205
21331
|
const labelClass = isComplete ? "fc:font-bold fc:text-emerald-700" : isCurrent ? "fc:font-bold fc:text-blue-600" : "fc:font-medium fc:text-slate-600";
|
|
21206
21332
|
return /* @__PURE__ */ (0, import_jsx_runtime103.jsxs)("div", { className: "fc:flex fc:min-w-0 fc:flex-col fc:items-center fc:px-1 fc:text-center", children: [
|
|
21207
|
-
/* @__PURE__ */ (0, import_jsx_runtime103.jsx)("div", { className: `fc:flex fc:h-8 fc:w-8 fc:items-center fc:justify-center fc:rounded-full fc:border-2 fc:text-xs fc:font-bold ${markerClass}`, children: isComplete ? /* @__PURE__ */ (0, import_jsx_runtime103.jsx)(
|
|
21333
|
+
/* @__PURE__ */ (0, import_jsx_runtime103.jsx)("div", { className: `fc:flex fc:h-8 fc:w-8 fc:items-center fc:justify-center fc:rounded-full fc:border-2 fc:text-xs fc:font-bold ${markerClass}`, children: isComplete ? /* @__PURE__ */ (0, import_jsx_runtime103.jsx)(import_react111.RiCheckLine, { size: 17 }) : sequence }),
|
|
21208
21334
|
/* @__PURE__ */ (0, import_jsx_runtime103.jsxs)("span", { className: `fc:mt-2 fc:max-w-full fc:text-xs ${labelClass}`, children: [
|
|
21209
21335
|
sequence,
|
|
21210
21336
|
" ",
|
|
@@ -21217,8 +21343,8 @@ function WorkflowStepper({
|
|
|
21217
21343
|
}
|
|
21218
21344
|
|
|
21219
21345
|
// src/components/inbox/ReviewTabs.jsx
|
|
21220
|
-
var
|
|
21221
|
-
var
|
|
21346
|
+
var import_react112 = __toESM(require("react"));
|
|
21347
|
+
var import_react113 = require("@remixicon/react");
|
|
21222
21348
|
var import_jsx_runtime104 = require("react/jsx-runtime");
|
|
21223
21349
|
function ReviewTabs({ activeTab, setActiveTab }) {
|
|
21224
21350
|
return /* @__PURE__ */ (0, import_jsx_runtime104.jsxs)("div", { className: "fc:flex fc:items-center fc:justify-between fc:border-b fc:border-slate-200 fc:px-1 fc:pt-2", children: [
|
|
@@ -21230,7 +21356,7 @@ function ReviewTabs({ activeTab, setActiveTab }) {
|
|
|
21230
21356
|
onClick: () => setActiveTab("fileDetails"),
|
|
21231
21357
|
className: `fc:inline-flex fc:items-center fc:gap-2 fc:pb-3 fc:text-sm fc:transition-all fc:border-b-2 ${activeTab === "fileDetails" ? "fc:border-blue-600 fc:text-blue-600 fc:font-bold -fc:mb-[2px]" : "fc:border-transparent fc:text-slate-500 hover:fc:text-slate-800 fc:font-medium"}`,
|
|
21232
21358
|
children: [
|
|
21233
|
-
/* @__PURE__ */ (0, import_jsx_runtime104.jsx)(
|
|
21359
|
+
/* @__PURE__ */ (0, import_jsx_runtime104.jsx)(import_react113.RiFileTextLine, { size: 16 }),
|
|
21234
21360
|
/* @__PURE__ */ (0, import_jsx_runtime104.jsx)("span", { children: "File Details" })
|
|
21235
21361
|
]
|
|
21236
21362
|
}
|
|
@@ -21242,7 +21368,7 @@ function ReviewTabs({ activeTab, setActiveTab }) {
|
|
|
21242
21368
|
onClick: () => setActiveTab("workflowHistory"),
|
|
21243
21369
|
className: `fc:inline-flex fc:items-center fc:gap-2 fc:pb-3 fc:text-sm fc:transition-all fc:border-b-2 ${activeTab === "workflowHistory" ? "fc:border-blue-600 fc:text-blue-600 fc:font-bold -fc:mb-[2px]" : "fc:border-transparent fc:text-slate-500 hover:fc:text-slate-800 fc:font-medium"}`,
|
|
21244
21370
|
children: [
|
|
21245
|
-
/* @__PURE__ */ (0, import_jsx_runtime104.jsx)(
|
|
21371
|
+
/* @__PURE__ */ (0, import_jsx_runtime104.jsx)(import_react113.RiHistoryLine, { size: 16 }),
|
|
21246
21372
|
/* @__PURE__ */ (0, import_jsx_runtime104.jsx)("span", { children: "Workflow History" })
|
|
21247
21373
|
]
|
|
21248
21374
|
}
|
|
@@ -21254,9 +21380,9 @@ function ReviewTabs({ activeTab, setActiveTab }) {
|
|
|
21254
21380
|
type: "button",
|
|
21255
21381
|
className: "fc:inline-flex fc:items-center fc:gap-1.5 fc:px-3 fc:py-1.5 fc:rounded-lg fc:border fc:border-slate-200 fc:bg-white hover:fc:bg-slate-50 fc:text-xs fc:font-semibold fc:text-slate-700 fc:mb-2",
|
|
21256
21382
|
children: [
|
|
21257
|
-
/* @__PURE__ */ (0, import_jsx_runtime104.jsx)(
|
|
21383
|
+
/* @__PURE__ */ (0, import_jsx_runtime104.jsx)(import_react113.RiFilterLine, { size: 14, className: "fc:text-slate-400" }),
|
|
21258
21384
|
/* @__PURE__ */ (0, import_jsx_runtime104.jsx)("span", { children: "All movements" }),
|
|
21259
|
-
/* @__PURE__ */ (0, import_jsx_runtime104.jsx)(
|
|
21385
|
+
/* @__PURE__ */ (0, import_jsx_runtime104.jsx)(import_react113.RiArrowDownSLine, { size: 14, className: "fc:text-slate-400" })
|
|
21260
21386
|
]
|
|
21261
21387
|
}
|
|
21262
21388
|
)
|
|
@@ -21264,8 +21390,8 @@ function ReviewTabs({ activeTab, setActiveTab }) {
|
|
|
21264
21390
|
}
|
|
21265
21391
|
|
|
21266
21392
|
// src/components/inbox/WorkflowHistoryTab.jsx
|
|
21267
|
-
var
|
|
21268
|
-
var
|
|
21393
|
+
var import_react114 = __toESM(require("react"));
|
|
21394
|
+
var import_react115 = require("@remixicon/react");
|
|
21269
21395
|
var import_jsx_runtime105 = require("react/jsx-runtime");
|
|
21270
21396
|
function WorkflowHistoryTab({
|
|
21271
21397
|
fileHistory,
|
|
@@ -21301,7 +21427,7 @@ function WorkflowHistoryTab({
|
|
|
21301
21427
|
}
|
|
21302
21428
|
)
|
|
21303
21429
|
] }),
|
|
21304
|
-
/* @__PURE__ */ (0, import_jsx_runtime105.jsx)("div", { className: "fc:w-7 fc:h-7 fc:flex fc:items-center fc:justify-center fc:shrink-0", children: item.isCurrent ? /* @__PURE__ */ (0, import_jsx_runtime105.jsx)(
|
|
21430
|
+
/* @__PURE__ */ (0, import_jsx_runtime105.jsx)("div", { className: "fc:w-7 fc:h-7 fc:flex fc:items-center fc:justify-center fc:shrink-0", children: item.isCurrent ? /* @__PURE__ */ (0, import_jsx_runtime105.jsx)(import_react115.RiTimeLine, { size: 19, className: "fc:text-slate-800" }) : item.type === "return" ? /* @__PURE__ */ (0, import_jsx_runtime105.jsx)("div", { className: "fc:w-6 fc:h-6 fc:rounded-full fc:bg-[#DC2626] fc:text-white fc:flex fc:items-center fc:justify-center fc:shadow-xs", children: /* @__PURE__ */ (0, import_jsx_runtime105.jsx)(import_react115.RiArrowGoBackLine, { size: 13 }) }) : item.type === "submit" || item.type === "resubmit" ? /* @__PURE__ */ (0, import_jsx_runtime105.jsx)("div", { className: "fc:w-6 fc:h-6 fc:rounded-full fc:bg-[#059669] fc:text-white fc:flex fc:items-center fc:justify-center fc:shadow-xs", children: /* @__PURE__ */ (0, import_jsx_runtime105.jsx)(import_react115.RiSendPlane2Fill, { size: 13 }) }) : /* @__PURE__ */ (0, import_jsx_runtime105.jsx)("div", { className: "fc:w-6 fc:h-6 fc:rounded-full fc:bg-[#2563EB] fc:text-white fc:flex fc:items-center fc:justify-center fc:shadow-xs", children: /* @__PURE__ */ (0, import_jsx_runtime105.jsx)(import_react115.RiArrowRightLine, { size: 13 }) }) }),
|
|
21305
21431
|
/* @__PURE__ */ (0, import_jsx_runtime105.jsx)("span", { className: "fc:w-[155px] fc:text-xs fc:text-slate-600 fc:shrink-0", children: item.date }),
|
|
21306
21432
|
/* @__PURE__ */ (0, import_jsx_runtime105.jsxs)("div", { className: "fc:w-[145px] fc:shrink-0", children: [
|
|
21307
21433
|
/* @__PURE__ */ (0, import_jsx_runtime105.jsx)("span", { className: "fc:text-xs fc:font-bold fc:text-slate-900 fc:block fc:leading-tight", children: item.userName }),
|
|
@@ -21323,7 +21449,7 @@ function WorkflowHistoryTab({
|
|
|
21323
21449
|
onClick: () => onViewDetails(item),
|
|
21324
21450
|
className: "fc:inline-flex fc:items-center fc:gap-1.5 fc:text-xs fc:font-semibold fc:text-blue-600 hover:fc:text-blue-700 fc:shrink-0 fc:cursor-pointer",
|
|
21325
21451
|
children: [
|
|
21326
|
-
/* @__PURE__ */ (0, import_jsx_runtime105.jsx)(
|
|
21452
|
+
/* @__PURE__ */ (0, import_jsx_runtime105.jsx)(import_react115.RiEyeLine, { size: 15 }),
|
|
21327
21453
|
/* @__PURE__ */ (0, import_jsx_runtime105.jsx)("span", { children: "View details" })
|
|
21328
21454
|
]
|
|
21329
21455
|
}
|
|
@@ -21338,12 +21464,12 @@ function WorkflowHistoryTab({
|
|
|
21338
21464
|
}
|
|
21339
21465
|
|
|
21340
21466
|
// src/components/inbox/FileDetailsTab.jsx
|
|
21341
|
-
var
|
|
21342
|
-
var
|
|
21467
|
+
var import_react118 = __toESM(require("react"));
|
|
21468
|
+
var import_react119 = require("@remixicon/react");
|
|
21343
21469
|
|
|
21344
21470
|
// src/components/inbox/DynamicFormDisplay.jsx
|
|
21345
|
-
var
|
|
21346
|
-
var
|
|
21471
|
+
var import_react116 = __toESM(require("react"));
|
|
21472
|
+
var import_react117 = require("@remixicon/react");
|
|
21347
21473
|
init_ApiServicepackage();
|
|
21348
21474
|
|
|
21349
21475
|
// src/components/inbox/reviewHelpers.js
|
|
@@ -21566,7 +21692,7 @@ var AttachmentsSection = ({ section }) => {
|
|
|
21566
21692
|
const size = formatSize(file.sizeBytes);
|
|
21567
21693
|
return /* @__PURE__ */ (0, import_jsx_runtime106.jsxs)("div", { className: "fc:flex fc:items-center fc:justify-between fc:bg-[#F8FAFC] fc:rounded-xl fc:p-3 fc:border fc:border-slate-200/80", children: [
|
|
21568
21694
|
/* @__PURE__ */ (0, import_jsx_runtime106.jsxs)("div", { className: "fc:flex fc:items-center fc:gap-3 fc:min-w-0", children: [
|
|
21569
|
-
/* @__PURE__ */ (0, import_jsx_runtime106.jsx)("div", { className: "fc:w-9 fc:h-9 fc:rounded-lg fc:bg-red-100 fc:flex fc:items-center fc:justify-center fc:shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(
|
|
21695
|
+
/* @__PURE__ */ (0, import_jsx_runtime106.jsx)("div", { className: "fc:w-9 fc:h-9 fc:rounded-lg fc:bg-red-100 fc:flex fc:items-center fc:justify-center fc:shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(import_react117.RiFileTextLine, { size: 18, className: "fc:text-red-500" }) }),
|
|
21570
21696
|
/* @__PURE__ */ (0, import_jsx_runtime106.jsxs)("div", { className: "fc:min-w-0", children: [
|
|
21571
21697
|
/* @__PURE__ */ (0, import_jsx_runtime106.jsx)("span", { className: "fc:block fc:text-xs fc:font-bold fc:text-slate-800", children: file.label }),
|
|
21572
21698
|
/* @__PURE__ */ (0, import_jsx_runtime106.jsxs)("span", { className: "fc:block fc:text-[11px] fc:text-slate-500 fc:break-all", children: [
|
|
@@ -21576,19 +21702,19 @@ var AttachmentsSection = ({ section }) => {
|
|
|
21576
21702
|
] })
|
|
21577
21703
|
] }),
|
|
21578
21704
|
/* @__PURE__ */ (0, import_jsx_runtime106.jsxs)("a", { href: file.downloadUrl, download: true, className: "fc:inline-flex fc:items-center fc:gap-1.5 fc:text-xs fc:font-semibold fc:text-blue-600 hover:fc:text-blue-700 fc:shrink-0 fc:ml-3", children: [
|
|
21579
|
-
/* @__PURE__ */ (0, import_jsx_runtime106.jsx)(
|
|
21705
|
+
/* @__PURE__ */ (0, import_jsx_runtime106.jsx)(import_react117.RiDownload2Line, { size: 15 }),
|
|
21580
21706
|
/* @__PURE__ */ (0, import_jsx_runtime106.jsx)("span", { children: "Download" })
|
|
21581
21707
|
] })
|
|
21582
21708
|
] }, file.id);
|
|
21583
21709
|
}) });
|
|
21584
21710
|
};
|
|
21585
21711
|
function DynamicFormDisplay({ fileNo, maximized = false, onToggleMaximize }) {
|
|
21586
|
-
const [displayData, setDisplayData] = (0,
|
|
21587
|
-
const [activeTab, setActiveTab] = (0,
|
|
21588
|
-
const [expandedSections, setExpandedSections] = (0,
|
|
21589
|
-
const [isLoading, setIsLoading] = (0,
|
|
21590
|
-
const [loadError, setLoadError] = (0,
|
|
21591
|
-
(0,
|
|
21712
|
+
const [displayData, setDisplayData] = (0, import_react116.useState)(null);
|
|
21713
|
+
const [activeTab, setActiveTab] = (0, import_react116.useState)("");
|
|
21714
|
+
const [expandedSections, setExpandedSections] = (0, import_react116.useState)({});
|
|
21715
|
+
const [isLoading, setIsLoading] = (0, import_react116.useState)(false);
|
|
21716
|
+
const [loadError, setLoadError] = (0, import_react116.useState)("");
|
|
21717
|
+
(0, import_react116.useEffect)(() => {
|
|
21592
21718
|
if (!fileNo) {
|
|
21593
21719
|
setDisplayData(null);
|
|
21594
21720
|
setActiveTab("");
|
|
@@ -21646,7 +21772,7 @@ function DynamicFormDisplay({ fileNo, maximized = false, onToggleMaximize }) {
|
|
|
21646
21772
|
return /* @__PURE__ */ (0, import_jsx_runtime106.jsxs)("div", { className: `fc:bg-white fc:border fc:border-slate-200 fc:rounded-2xl fc:shadow-sm fc:overflow-hidden ${isMax ? "fc:w-full" : ""}`, children: [
|
|
21647
21773
|
/* @__PURE__ */ (0, import_jsx_runtime106.jsxs)("div", { className: "fc:flex fc:items-center fc:justify-between fc:px-5 fc:py-4 fc:border-b fc:border-slate-100", children: [
|
|
21648
21774
|
/* @__PURE__ */ (0, import_jsx_runtime106.jsxs)("div", { className: "fc:flex fc:items-center fc:gap-3", children: [
|
|
21649
|
-
/* @__PURE__ */ (0, import_jsx_runtime106.jsx)("div", { className: "fc:w-10 fc:h-10 fc:rounded-xl fc:bg-blue-50 fc:border fc:border-blue-100 fc:flex fc:items-center fc:justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(
|
|
21775
|
+
/* @__PURE__ */ (0, import_jsx_runtime106.jsx)("div", { className: "fc:w-10 fc:h-10 fc:rounded-xl fc:bg-blue-50 fc:border fc:border-blue-100 fc:flex fc:items-center fc:justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(import_react117.RiFileTextLine, { size: 20, className: "fc:text-blue-600" }) }),
|
|
21650
21776
|
/* @__PURE__ */ (0, import_jsx_runtime106.jsxs)("div", { children: [
|
|
21651
21777
|
/* @__PURE__ */ (0, import_jsx_runtime106.jsx)("h2", { className: "fc:text-[16px] fc:font-extrabold fc:text-slate-900", children: displayData.formName }),
|
|
21652
21778
|
/* @__PURE__ */ (0, import_jsx_runtime106.jsxs)("p", { className: "fc:text-[11px] fc:text-slate-400", children: [
|
|
@@ -21664,7 +21790,7 @@ function DynamicFormDisplay({ fileNo, maximized = false, onToggleMaximize }) {
|
|
|
21664
21790
|
className: "fc:inline-flex fc:items-center fc:gap-1.5 fc:border fc:border-slate-200 fc:rounded-lg fc:px-2.5 fc:py-1 fc:text-xs fc:font-semibold fc:text-slate-600 hover:fc:bg-slate-50 fc:transition-colors fc:shrink-0",
|
|
21665
21791
|
title: isMax ? "Restore" : "Maximize",
|
|
21666
21792
|
children: [
|
|
21667
|
-
isMax ? /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(
|
|
21793
|
+
isMax ? /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(import_react117.RiFullscreenExitLine, { size: 14 }) : /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(import_react117.RiFullscreenLine, { size: 14 }),
|
|
21668
21794
|
/* @__PURE__ */ (0, import_jsx_runtime106.jsx)("span", { children: isMax ? "Restore" : "Maximize" })
|
|
21669
21795
|
]
|
|
21670
21796
|
}
|
|
@@ -21823,7 +21949,7 @@ function FileDetailsTab({
|
|
|
21823
21949
|
"div",
|
|
21824
21950
|
{
|
|
21825
21951
|
className: `fc:w-6 fc:h-6 fc:rounded-full fc:flex fc:items-center fc:justify-center fc:shrink-0 ${m.type === "alert" ? "fc:bg-[#EF4444] fc:text-white" : m.type === "check" ? "fc:bg-[#059669] fc:text-white" : "fc:bg-[#2563EB] fc:text-white"}`,
|
|
21826
|
-
children: m.type === "alert" ? /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(
|
|
21952
|
+
children: m.type === "alert" ? /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(import_react119.RiArrowGoBackLine, { size: 13, className: "fc:stroke-[1.5]" }) : m.type === "check" ? /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(import_react119.RiCheckLine, { size: 13, className: "fc:stroke-[2.5]" }) : /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(import_react119.RiArrowRightLine, { size: 13, className: "fc:stroke-2" })
|
|
21827
21953
|
}
|
|
21828
21954
|
),
|
|
21829
21955
|
/* @__PURE__ */ (0, import_jsx_runtime107.jsxs)("div", { className: "fc:min-w-0", children: [
|
|
@@ -21846,7 +21972,7 @@ function FileDetailsTab({
|
|
|
21846
21972
|
style: { fontSize: "10px", lineHeight: "1" },
|
|
21847
21973
|
className: "fc:inline-flex fc:items-center fc:gap-1 fc:text-[10px] fc:font-medium fc:text-blue-600 hover:fc:underline fc:shrink-0 fc:ml-2 fc:z-10",
|
|
21848
21974
|
children: [
|
|
21849
|
-
/* @__PURE__ */ (0, import_jsx_runtime107.jsx)(
|
|
21975
|
+
/* @__PURE__ */ (0, import_jsx_runtime107.jsx)(import_react119.RiEyeLine, { size: 12 }),
|
|
21850
21976
|
/* @__PURE__ */ (0, import_jsx_runtime107.jsx)("span", { children: "View details" })
|
|
21851
21977
|
]
|
|
21852
21978
|
}
|
|
@@ -21866,7 +21992,7 @@ function FileDetailsTab({
|
|
|
21866
21992
|
children: [
|
|
21867
21993
|
/* @__PURE__ */ (0, import_jsx_runtime107.jsx)("span", { children: showAllMovements ? "Show fewer movements" : "Show more movements" }),
|
|
21868
21994
|
/* @__PURE__ */ (0, import_jsx_runtime107.jsx)(
|
|
21869
|
-
|
|
21995
|
+
import_react119.RiArrowDownSLine,
|
|
21870
21996
|
{
|
|
21871
21997
|
size: 15,
|
|
21872
21998
|
className: `fc:text-blue-600 fc:transition-transform ${showAllMovements ? "fc:rotate-180" : ""}`
|
|
@@ -21884,8 +22010,8 @@ function FileDetailsTab({
|
|
|
21884
22010
|
}
|
|
21885
22011
|
|
|
21886
22012
|
// src/components/inbox/MovementDetailModal.jsx
|
|
21887
|
-
var
|
|
21888
|
-
var
|
|
22013
|
+
var import_react120 = __toESM(require("react"));
|
|
22014
|
+
var import_react121 = require("@remixicon/react");
|
|
21889
22015
|
var import_jsx_runtime108 = require("react/jsx-runtime");
|
|
21890
22016
|
function MovementDetailModal({
|
|
21891
22017
|
selectedHistoryItem,
|
|
@@ -21916,7 +22042,7 @@ function MovementDetailModal({
|
|
|
21916
22042
|
children: [
|
|
21917
22043
|
/* @__PURE__ */ (0, import_jsx_runtime108.jsxs)("header", { className: "fc:flex fc:items-center fc:justify-between fc:gap-4 fc:border-b fc:border-slate-100 fc:bg-slate-50 fc:px-6 fc:py-4", children: [
|
|
21918
22044
|
/* @__PURE__ */ (0, import_jsx_runtime108.jsxs)("div", { className: "fc:flex fc:min-w-0 fc:items-center fc:gap-3", children: [
|
|
21919
|
-
/* @__PURE__ */ (0, import_jsx_runtime108.jsx)("span", { className: "fc:flex fc:h-10 fc:w-10 fc:shrink-0 fc:items-center fc:justify-center fc:rounded-xl fc:bg-blue-100 fc:text-blue-700", children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(
|
|
22045
|
+
/* @__PURE__ */ (0, import_jsx_runtime108.jsx)("span", { className: "fc:flex fc:h-10 fc:w-10 fc:shrink-0 fc:items-center fc:justify-center fc:rounded-xl fc:bg-blue-100 fc:text-blue-700", children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(import_react121.RiHistoryLine, { size: 19 }) }),
|
|
21920
22046
|
/* @__PURE__ */ (0, import_jsx_runtime108.jsxs)("div", { className: "fc:min-w-0", children: [
|
|
21921
22047
|
/* @__PURE__ */ (0, import_jsx_runtime108.jsx)("h2", { id: "movement-detail-title", className: "fc:truncate fc:text-base fc:font-bold fc:text-slate-900", children: (_d = (_c = (_a = historyDetail == null ? void 0 : historyDetail.movement) == null ? void 0 : _a.actionName) != null ? _c : (_b = historyDetail == null ? void 0 : historyDetail.movement) == null ? void 0 : _b.ActionName) != null ? _d : selectedHistoryItem.title }),
|
|
21922
22048
|
/* @__PURE__ */ (0, import_jsx_runtime108.jsxs)("p", { className: "fc:mt-0.5 fc:text-xs fc:text-slate-500", children: [
|
|
@@ -21932,7 +22058,7 @@ function MovementDetailModal({
|
|
|
21932
22058
|
onClick: onClose,
|
|
21933
22059
|
"aria-label": "Close",
|
|
21934
22060
|
className: "fc:flex fc:h-9 fc:w-9 fc:shrink-0 fc:items-center fc:justify-center fc:rounded-lg fc:text-slate-500 hover:fc:bg-slate-200/70",
|
|
21935
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(
|
|
22061
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(import_react121.RiCloseLine, { size: 20 })
|
|
21936
22062
|
}
|
|
21937
22063
|
)
|
|
21938
22064
|
] }),
|
|
@@ -22000,7 +22126,7 @@ function MovementDetailModal({
|
|
|
22000
22126
|
className: "fc:flex fc:items-center fc:justify-between fc:gap-3 fc:rounded-xl fc:border fc:border-slate-200 fc:bg-white fc:px-3.5 fc:py-3",
|
|
22001
22127
|
children: [
|
|
22002
22128
|
/* @__PURE__ */ (0, import_jsx_runtime108.jsxs)("span", { className: "fc:flex fc:min-w-0 fc:items-center fc:gap-3", children: [
|
|
22003
|
-
/* @__PURE__ */ (0, import_jsx_runtime108.jsx)("span", { className: "fc:flex fc:h-9 fc:w-9 fc:shrink-0 fc:items-center fc:justify-center fc:rounded-lg fc:bg-slate-100 fc:text-slate-600", children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(
|
|
22129
|
+
/* @__PURE__ */ (0, import_jsx_runtime108.jsx)("span", { className: "fc:flex fc:h-9 fc:w-9 fc:shrink-0 fc:items-center fc:justify-center fc:rounded-lg fc:bg-slate-100 fc:text-slate-600", children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(import_react121.RiFileTextLine, { size: 17 }) }),
|
|
22004
22130
|
/* @__PURE__ */ (0, import_jsx_runtime108.jsxs)("span", { className: "fc:min-w-0", children: [
|
|
22005
22131
|
/* @__PURE__ */ (0, import_jsx_runtime108.jsx)("span", { className: "fc:block fc:truncate fc:text-sm fc:font-medium fc:text-slate-800", children: name }),
|
|
22006
22132
|
kind && /* @__PURE__ */ (0, import_jsx_runtime108.jsx)("span", { className: "fc:block fc:text-xs fc:text-slate-500", children: kind })
|
|
@@ -22032,9 +22158,9 @@ function MovementDetailModal({
|
|
|
22032
22158
|
}
|
|
22033
22159
|
|
|
22034
22160
|
// src/components/inbox/TakeActionPanel.jsx
|
|
22035
|
-
var
|
|
22161
|
+
var import_react122 = __toESM(require("react"));
|
|
22036
22162
|
var import_sweetalert230 = __toESM(require("sweetalert2"));
|
|
22037
|
-
var
|
|
22163
|
+
var import_react123 = require("@remixicon/react");
|
|
22038
22164
|
init_ApiEndpointsProvider();
|
|
22039
22165
|
init_ApiServicepackage();
|
|
22040
22166
|
var import_jsx_runtime109 = require("react/jsx-runtime");
|
|
@@ -22048,24 +22174,24 @@ function TakeActionPanel({
|
|
|
22048
22174
|
onMinimize
|
|
22049
22175
|
}) {
|
|
22050
22176
|
var _a;
|
|
22051
|
-
const [actions, setActions] = (0,
|
|
22052
|
-
const [actionCode, setActionCode] = (0,
|
|
22053
|
-
const [remarks, setRemarks] = (0,
|
|
22054
|
-
const [isSubmitting, setIsSubmitting] = (0,
|
|
22055
|
-
const [editableFields, setEditableFields] = (0,
|
|
22056
|
-
const [selectedEditableFields, setSelectedEditableFields] = (0,
|
|
22057
|
-
const [isLoadingEditableFields, setIsLoadingEditableFields] = (0,
|
|
22058
|
-
const [editableFieldsError, setEditableFieldsError] = (0,
|
|
22059
|
-
const [officialDocuments, setOfficialDocuments] = (0,
|
|
22060
|
-
const [isLoadingOfficialDocuments, setIsLoadingOfficialDocuments] = (0,
|
|
22061
|
-
const [officialDocumentsError, setOfficialDocumentsError] = (0,
|
|
22062
|
-
const [uploadedDocuments, setUploadedDocuments] = (0,
|
|
22063
|
-
const [uploadingDocumentId, setUploadingDocumentId] = (0,
|
|
22064
|
-
const [documentUploadErrors, setDocumentUploadErrors] = (0,
|
|
22065
|
-
const documentInputRefs = (0,
|
|
22177
|
+
const [actions, setActions] = (0, import_react122.useState)(DEFAULT_ACTIONS);
|
|
22178
|
+
const [actionCode, setActionCode] = (0, import_react122.useState)("RETURN_TO_APPLICANT");
|
|
22179
|
+
const [remarks, setRemarks] = (0, import_react122.useState)("");
|
|
22180
|
+
const [isSubmitting, setIsSubmitting] = (0, import_react122.useState)(false);
|
|
22181
|
+
const [editableFields, setEditableFields] = (0, import_react122.useState)([]);
|
|
22182
|
+
const [selectedEditableFields, setSelectedEditableFields] = (0, import_react122.useState)([]);
|
|
22183
|
+
const [isLoadingEditableFields, setIsLoadingEditableFields] = (0, import_react122.useState)(false);
|
|
22184
|
+
const [editableFieldsError, setEditableFieldsError] = (0, import_react122.useState)("");
|
|
22185
|
+
const [officialDocuments, setOfficialDocuments] = (0, import_react122.useState)([]);
|
|
22186
|
+
const [isLoadingOfficialDocuments, setIsLoadingOfficialDocuments] = (0, import_react122.useState)(false);
|
|
22187
|
+
const [officialDocumentsError, setOfficialDocumentsError] = (0, import_react122.useState)("");
|
|
22188
|
+
const [uploadedDocuments, setUploadedDocuments] = (0, import_react122.useState)([]);
|
|
22189
|
+
const [uploadingDocumentId, setUploadingDocumentId] = (0, import_react122.useState)(null);
|
|
22190
|
+
const [documentUploadErrors, setDocumentUploadErrors] = (0, import_react122.useState)({});
|
|
22191
|
+
const documentInputRefs = (0, import_react122.useRef)({});
|
|
22066
22192
|
const selectedAction = actions.find((a) => a.actionCode === actionCode);
|
|
22067
22193
|
const isReturnToApplicant = ((_a = selectedAction == null ? void 0 : selectedAction.label) == null ? void 0 : _a.toLowerCase().includes("return")) || ["PULL", "RETURN_TO_APPLICANT"].includes(actionCode == null ? void 0 : actionCode.toUpperCase());
|
|
22068
|
-
(0,
|
|
22194
|
+
(0, import_react122.useEffect)(() => {
|
|
22069
22195
|
let isCurrent = true;
|
|
22070
22196
|
(async () => {
|
|
22071
22197
|
var _a2, _b, _c, _d, _e, _f, _g;
|
|
@@ -22090,7 +22216,7 @@ function TakeActionPanel({
|
|
|
22090
22216
|
isCurrent = false;
|
|
22091
22217
|
};
|
|
22092
22218
|
}, [workflowStepId, activeWorkflowStepId]);
|
|
22093
|
-
(0,
|
|
22219
|
+
(0, import_react122.useEffect)(() => {
|
|
22094
22220
|
if (!isReturnToApplicant) {
|
|
22095
22221
|
setEditableFields([]);
|
|
22096
22222
|
setSelectedEditableFields([]);
|
|
@@ -22119,7 +22245,7 @@ function TakeActionPanel({
|
|
|
22119
22245
|
isCurrent = false;
|
|
22120
22246
|
};
|
|
22121
22247
|
}, [isReturnToApplicant]);
|
|
22122
|
-
(0,
|
|
22248
|
+
(0, import_react122.useEffect)(() => {
|
|
22123
22249
|
const normalizedStepId = Number(workflowStepId);
|
|
22124
22250
|
setOfficialDocuments([]);
|
|
22125
22251
|
setUploadedDocuments([]);
|
|
@@ -22299,7 +22425,7 @@ function TakeActionPanel({
|
|
|
22299
22425
|
children: [
|
|
22300
22426
|
/* @__PURE__ */ (0, import_jsx_runtime109.jsxs)("div", { className: "fc:flex fc:items-center fc:justify-between fc:gap-2 fc:border-b fc:border-slate-100 fc:pb-3", children: [
|
|
22301
22427
|
/* @__PURE__ */ (0, import_jsx_runtime109.jsxs)("div", { className: "fc:flex fc:items-center fc:gap-2.5", children: [
|
|
22302
|
-
/* @__PURE__ */ (0, import_jsx_runtime109.jsx)("div", { className: "fc:w-8 fc:h-8 fc:rounded-lg fc:bg-[#ECFDF5] fc:text-[#059669] fc:flex fc:items-center fc:justify-center fc:border fc:border-[#A7F3D0]", children: /* @__PURE__ */ (0, import_jsx_runtime109.jsx)(
|
|
22428
|
+
/* @__PURE__ */ (0, import_jsx_runtime109.jsx)("div", { className: "fc:w-8 fc:h-8 fc:rounded-lg fc:bg-[#ECFDF5] fc:text-[#059669] fc:flex fc:items-center fc:justify-center fc:border fc:border-[#A7F3D0]", children: /* @__PURE__ */ (0, import_jsx_runtime109.jsx)(import_react123.RiCheckboxLine, { size: 18 }) }),
|
|
22303
22429
|
/* @__PURE__ */ (0, import_jsx_runtime109.jsxs)("div", { children: [
|
|
22304
22430
|
/* @__PURE__ */ (0, import_jsx_runtime109.jsx)("h2", { style: { fontSize: "15px", lineHeight: "1.25", margin: 0 }, className: "fc:text-base fc:font-bold fc:text-slate-900 fc:leading-tight", children: "Take Action" }),
|
|
22305
22431
|
/* @__PURE__ */ (0, import_jsx_runtime109.jsxs)("p", { className: "fc:text-xs fc:text-slate-400 fc:mt-0.5", children: [
|
|
@@ -22315,7 +22441,7 @@ function TakeActionPanel({
|
|
|
22315
22441
|
onClick: onMinimize || onBackToInbox,
|
|
22316
22442
|
title: "Minimize panel",
|
|
22317
22443
|
className: "fc:text-slate-400 hover:fc:text-slate-700 fc:p-1 fc:rounded-lg fc:transition-colors",
|
|
22318
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime109.jsx)(
|
|
22444
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime109.jsx)(import_react123.RiCloseLine, { size: 19 })
|
|
22319
22445
|
}
|
|
22320
22446
|
)
|
|
22321
22447
|
] }),
|
|
@@ -22474,7 +22600,7 @@ function TakeActionPanel({
|
|
|
22474
22600
|
border: isChecked ? "none" : "1.5px solid #CBD5E1",
|
|
22475
22601
|
color: "#ffffff"
|
|
22476
22602
|
},
|
|
22477
|
-
children: isChecked && /* @__PURE__ */ (0, import_jsx_runtime109.jsx)(
|
|
22603
|
+
children: isChecked && /* @__PURE__ */ (0, import_jsx_runtime109.jsx)(import_react123.RiCheckLine, { size: 12, className: "fc:stroke-[3]" })
|
|
22478
22604
|
}
|
|
22479
22605
|
),
|
|
22480
22606
|
/* @__PURE__ */ (0, import_jsx_runtime109.jsx)(
|
|
@@ -22495,7 +22621,7 @@ function TakeActionPanel({
|
|
|
22495
22621
|
/* @__PURE__ */ (0, import_jsx_runtime109.jsxs)("div", { className: "fc:border-t fc:border-slate-100 fc:pt-3 fc:space-y-1.5", children: [
|
|
22496
22622
|
/* @__PURE__ */ (0, import_jsx_runtime109.jsxs)("div", { className: "fc:flex fc:items-center fc:gap-1.5", children: [
|
|
22497
22623
|
/* @__PURE__ */ (0, import_jsx_runtime109.jsx)("span", { className: "fc:text-xs fc:font-bold fc:text-slate-900", children: "Official attachments" }),
|
|
22498
|
-
/* @__PURE__ */ (0, import_jsx_runtime109.jsx)(
|
|
22624
|
+
/* @__PURE__ */ (0, import_jsx_runtime109.jsx)(import_react123.RiInformationFill, { size: 14, className: "fc:text-slate-600" })
|
|
22499
22625
|
] }),
|
|
22500
22626
|
/* @__PURE__ */ (0, import_jsx_runtime109.jsxs)("div", { className: "fc:space-y-2 fc:pt-1", children: [
|
|
22501
22627
|
isLoadingOfficialDocuments && /* @__PURE__ */ (0, import_jsx_runtime109.jsx)("p", { className: "fc:py-3 fc:text-center fc:text-[11px] fc:text-slate-500", children: "Loading required documents..." }),
|
|
@@ -22535,7 +22661,7 @@ function TakeActionPanel({
|
|
|
22535
22661
|
),
|
|
22536
22662
|
/* @__PURE__ */ (0, import_jsx_runtime109.jsxs)("div", { className: "fc:flex fc:items-center fc:justify-between fc:gap-3", children: [
|
|
22537
22663
|
/* @__PURE__ */ (0, import_jsx_runtime109.jsxs)("div", { className: "fc:flex fc:min-w-0 fc:items-center fc:gap-2.5", children: [
|
|
22538
|
-
/* @__PURE__ */ (0, import_jsx_runtime109.jsx)(
|
|
22664
|
+
/* @__PURE__ */ (0, import_jsx_runtime109.jsx)(import_react123.RiFileTextLine, { size: 18, className: `fc:shrink-0 ${uploaded ? "fc:text-emerald-600" : "fc:text-slate-400"}` }),
|
|
22539
22665
|
/* @__PURE__ */ (0, import_jsx_runtime109.jsxs)("div", { className: "fc:min-w-0", children: [
|
|
22540
22666
|
/* @__PURE__ */ (0, import_jsx_runtime109.jsxs)("div", { className: "fc:flex fc:flex-wrap fc:items-center fc:gap-1.5", children: [
|
|
22541
22667
|
/* @__PURE__ */ (0, import_jsx_runtime109.jsx)("span", { className: "fc:max-w-[180px] fc:truncate fc:text-xs fc:font-bold fc:text-slate-800", children: documentConfig.documentName }),
|
|
@@ -22556,7 +22682,7 @@ function TakeActionPanel({
|
|
|
22556
22682
|
disabled: isSubmitting || isLoadingOfficialDocuments || uploadingDocumentId != null,
|
|
22557
22683
|
className: "fc:inline-flex fc:shrink-0 fc:items-center fc:gap-1 fc:rounded-lg fc:border fc:border-blue-200 fc:bg-white fc:px-2.5 fc:py-1.5 fc:text-xs fc:font-semibold fc:text-blue-600 fc:shadow-sm hover:fc:bg-blue-50 disabled:fc:cursor-not-allowed disabled:fc:opacity-50",
|
|
22558
22684
|
children: [
|
|
22559
|
-
/* @__PURE__ */ (0, import_jsx_runtime109.jsx)(
|
|
22685
|
+
/* @__PURE__ */ (0, import_jsx_runtime109.jsx)(import_react123.RiUpload2Line, { size: 13 }),
|
|
22560
22686
|
/* @__PURE__ */ (0, import_jsx_runtime109.jsx)("span", { children: isUploading ? "Uploading..." : uploaded ? "Replace" : "Upload" })
|
|
22561
22687
|
]
|
|
22562
22688
|
}
|
|
@@ -22605,7 +22731,7 @@ function TakeActionPanel({
|
|
|
22605
22731
|
disabled: isSubmitting,
|
|
22606
22732
|
className: "fc:inline-flex fc:items-center fc:gap-2 fc:px-6 fc:py-2.5 fc:bg-[#009E60] hover:fc:bg-[#008752] fc:text-white fc:text-xs fc:font-bold fc:rounded-xl fc:shadow-sm fc:transition-all hover:fc:scale-[1.01] active:fc:scale-95 disabled:fc:opacity-50",
|
|
22607
22733
|
children: [
|
|
22608
|
-
/* @__PURE__ */ (0, import_jsx_runtime109.jsx)(
|
|
22734
|
+
/* @__PURE__ */ (0, import_jsx_runtime109.jsx)(import_react123.RiSendPlane2Fill, { size: 15 }),
|
|
22609
22735
|
/* @__PURE__ */ (0, import_jsx_runtime109.jsx)("span", { children: isSubmitting ? "Submitting..." : "Submit Action" })
|
|
22610
22736
|
]
|
|
22611
22737
|
}
|
|
@@ -22629,23 +22755,24 @@ function ReviewApplication({
|
|
|
22629
22755
|
onSelectWorkflowStepId,
|
|
22630
22756
|
onBackToInbox,
|
|
22631
22757
|
onSubmitAction,
|
|
22632
|
-
refreshKey
|
|
22758
|
+
refreshKey,
|
|
22759
|
+
userName
|
|
22633
22760
|
}) {
|
|
22634
22761
|
var _a, _b, _c, _d, _e, _f, _g, _h, _i;
|
|
22635
|
-
const [activeTab, setActiveTab] = (0,
|
|
22636
|
-
const [showAllMovements, setShowAllMovements] = (0,
|
|
22637
|
-
const [isApplicantFormMaximized, setIsApplicantFormMaximized] = (0,
|
|
22638
|
-
const [isTakeActionMinimized, setIsTakeActionMinimized] = (0,
|
|
22639
|
-
const [workflowSteps, setWorkflowSteps] = (0,
|
|
22640
|
-
const [isLoadingWorkflowSteps, setIsLoadingWorkflowSteps] = (0,
|
|
22641
|
-
const [workflowStepsError, setWorkflowStepsError] = (0,
|
|
22642
|
-
const [fileHistory, setFileHistory] = (0,
|
|
22643
|
-
const [isLoadingFileHistory, setIsLoadingFileHistory] = (0,
|
|
22644
|
-
const [fileHistoryError, setFileHistoryError] = (0,
|
|
22645
|
-
const [selectedHistoryItem, setSelectedHistoryItem] = (0,
|
|
22646
|
-
const [historyDetail, setHistoryDetail] = (0,
|
|
22647
|
-
const [historyDetailError, setHistoryDetailError] = (0,
|
|
22648
|
-
const [isLoadingHistoryDetail, setIsLoadingHistoryDetail] = (0,
|
|
22762
|
+
const [activeTab, setActiveTab] = (0, import_react124.useState)("workflowHistory");
|
|
22763
|
+
const [showAllMovements, setShowAllMovements] = (0, import_react124.useState)(false);
|
|
22764
|
+
const [isApplicantFormMaximized, setIsApplicantFormMaximized] = (0, import_react124.useState)(false);
|
|
22765
|
+
const [isTakeActionMinimized, setIsTakeActionMinimized] = (0, import_react124.useState)(false);
|
|
22766
|
+
const [workflowSteps, setWorkflowSteps] = (0, import_react124.useState)([]);
|
|
22767
|
+
const [isLoadingWorkflowSteps, setIsLoadingWorkflowSteps] = (0, import_react124.useState)(false);
|
|
22768
|
+
const [workflowStepsError, setWorkflowStepsError] = (0, import_react124.useState)("");
|
|
22769
|
+
const [fileHistory, setFileHistory] = (0, import_react124.useState)([]);
|
|
22770
|
+
const [isLoadingFileHistory, setIsLoadingFileHistory] = (0, import_react124.useState)(false);
|
|
22771
|
+
const [fileHistoryError, setFileHistoryError] = (0, import_react124.useState)("");
|
|
22772
|
+
const [selectedHistoryItem, setSelectedHistoryItem] = (0, import_react124.useState)(null);
|
|
22773
|
+
const [historyDetail, setHistoryDetail] = (0, import_react124.useState)(null);
|
|
22774
|
+
const [historyDetailError, setHistoryDetailError] = (0, import_react124.useState)("");
|
|
22775
|
+
const [isLoadingHistoryDetail, setIsLoadingHistoryDetail] = (0, import_react124.useState)(false);
|
|
22649
22776
|
const fileNo = file == null ? void 0 : file.fileNo;
|
|
22650
22777
|
const subject = (file == null ? void 0 : file.subject) || "ElectionPetition #41";
|
|
22651
22778
|
const department = (file == null ? void 0 : file.department) && file.department !== "-" ? file.department : "Nodal 19";
|
|
@@ -22655,7 +22782,7 @@ function ReviewApplication({
|
|
|
22655
22782
|
const createdOn = (file == null ? void 0 : file.receivedDate) && file.receivedDate !== "-" ? file.receivedDate : "01 Oct 2026, 10:24 AM";
|
|
22656
22783
|
const workflowStepId = (_b = (_a = file == null ? void 0 : file.workflowStepId) != null ? _a : file == null ? void 0 : file.WorkflowStepId) != null ? _b : activeWorkflowStepId;
|
|
22657
22784
|
const fileInstanceId = (_g = (_e = (_c = file == null ? void 0 : file.fileInstanceId) != null ? _c : file == null ? void 0 : file.FileInstanceId) != null ? _e : (_d = file == null ? void 0 : file.fileInstance) == null ? void 0 : _d.fileInstanceId) != null ? _g : (_f = file == null ? void 0 : file.FileInstance) == null ? void 0 : _f.FileInstanceId;
|
|
22658
|
-
(0,
|
|
22785
|
+
(0, import_react124.useEffect)(() => {
|
|
22659
22786
|
if (!workflowStepId) {
|
|
22660
22787
|
setWorkflowSteps([]);
|
|
22661
22788
|
setWorkflowStepsError("Workflow step ID is unavailable.");
|
|
@@ -22686,7 +22813,7 @@ function ReviewApplication({
|
|
|
22686
22813
|
};
|
|
22687
22814
|
}, [workflowStepId]);
|
|
22688
22815
|
const historyNeeded = activeTab === "workflowHistory" || activeTab === "fileDetails";
|
|
22689
|
-
(0,
|
|
22816
|
+
(0, import_react124.useEffect)(() => {
|
|
22690
22817
|
if (!historyNeeded) return void 0;
|
|
22691
22818
|
const normalizedFileInstanceId = Number(fileInstanceId);
|
|
22692
22819
|
if (!Number.isInteger(normalizedFileInstanceId) || normalizedFileInstanceId <= 0) {
|
|
@@ -22762,7 +22889,8 @@ function ReviewApplication({
|
|
|
22762
22889
|
activeStepName,
|
|
22763
22890
|
assignedSteps,
|
|
22764
22891
|
onSelectWorkflowStepId,
|
|
22765
|
-
refreshKey
|
|
22892
|
+
refreshKey,
|
|
22893
|
+
userName
|
|
22766
22894
|
}
|
|
22767
22895
|
),
|
|
22768
22896
|
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "fc:p-3 md:fc:p-4 fc:flex fc:flex-row fc:gap-4 fc:items-start fc:w-full fc:min-w-0", children: [
|
|
@@ -22777,12 +22905,12 @@ function ReviewApplication({
|
|
|
22777
22905
|
title: "Back to My Files",
|
|
22778
22906
|
className: "fc:inline-flex fc:items-center fc:gap-1.5 fc:h-9 fc:px-3 fc:rounded-xl fc:border fc:border-slate-200 fc:bg-white fc:text-slate-600 hover:fc:bg-slate-50 hover:fc:text-blue-600 fc:transition-colors fc:shrink-0 fc:font-bold fc:text-xs",
|
|
22779
22907
|
children: [
|
|
22780
|
-
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)(
|
|
22908
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)(import_react125.RiArrowGoBackLine, { size: 15 }),
|
|
22781
22909
|
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { children: "My Files" })
|
|
22782
22910
|
]
|
|
22783
22911
|
}
|
|
22784
22912
|
),
|
|
22785
|
-
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("div", { className: "fc:w-10 fc:h-10 fc:rounded-xl fc:bg-blue-50 fc:border fc:border-blue-100 fc:text-blue-600 fc:flex fc:items-center fc:justify-center fc:shadow-sm", children: /* @__PURE__ */ (0, import_jsx_runtime110.jsx)(
|
|
22913
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("div", { className: "fc:w-10 fc:h-10 fc:rounded-xl fc:bg-blue-50 fc:border fc:border-blue-100 fc:text-blue-600 fc:flex fc:items-center fc:justify-center fc:shadow-sm", children: /* @__PURE__ */ (0, import_jsx_runtime110.jsx)(import_react125.RiFileTextLine, { size: 22, className: "fc:text-blue-600" }) }),
|
|
22786
22914
|
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { children: [
|
|
22787
22915
|
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("h1", { className: "fc:text-[18px] fc:font-extrabold fc:text-slate-900 fc:leading-tight", children: "Review Application" }),
|
|
22788
22916
|
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("p", { className: "fc:text-xs fc:text-slate-500 fc:mt-0.5", children: "View application details, workflow history and take action" })
|
|
@@ -22861,7 +22989,7 @@ function ReviewApplication({
|
|
|
22861
22989
|
onClick: () => setIsTakeActionMinimized(false),
|
|
22862
22990
|
className: "fc:fixed fc:bottom-6 fc:right-6 fc:z-40 fc:inline-flex fc:items-center fc:gap-2 fc:bg-[#009E60] hover:fc:bg-[#008752] fc:text-white fc:px-5 fc:py-3 fc:rounded-full fc:shadow-lg fc:shadow-emerald-600/30 fc:font-bold fc:text-sm fc:transition-all hover:fc:scale-105 active:fc:scale-95",
|
|
22863
22991
|
children: [
|
|
22864
|
-
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)(
|
|
22992
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)(import_react125.RiCheckboxLine, { size: 18 }),
|
|
22865
22993
|
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { children: "Take Action" })
|
|
22866
22994
|
]
|
|
22867
22995
|
}
|
|
@@ -22983,33 +23111,34 @@ function InboxMain({
|
|
|
22983
23111
|
icon: PropIcon,
|
|
22984
23112
|
iconBg
|
|
22985
23113
|
}) {
|
|
22986
|
-
const HeaderIcon = PropIcon || ((allowedTabs == null ? void 0 : allowedTabs.length) === 1 && allowedTabs[0] === "myFiles" ?
|
|
23114
|
+
const HeaderIcon = PropIcon || ((allowedTabs == null ? void 0 : allowedTabs.length) === 1 && allowedTabs[0] === "myFiles" ? import_react127.RiUserReceivedLine : (allowedTabs == null ? void 0 : allowedTabs.length) === 1 && allowedTabs[0] === "filePool" ? import_react127.RiInboxArchiveLine : (allowedTabs == null ? void 0 : allowedTabs.length) === 1 && allowedTabs[0] === "totalFiles" ? import_react127.RiFileUploadLine : import_react127.RiInboxLine);
|
|
22987
23115
|
const headerTitle = title || ((allowedTabs == null ? void 0 : allowedTabs.length) === 1 && allowedTabs[0] === "myFiles" ? "My Files" : (allowedTabs == null ? void 0 : allowedTabs.length) === 1 && allowedTabs[0] === "filePool" ? "Unclaimed Files" : (allowedTabs == null ? void 0 : allowedTabs.length) === 1 && allowedTabs[0] === "totalFiles" ? "Completed Files" : "Inbox");
|
|
22988
23116
|
const headerSubtitle = subtitle || ((allowedTabs == null ? void 0 : allowedTabs.length) === 1 && allowedTabs[0] === "myFiles" ? "View and process files currently assigned to your queue" : (allowedTabs == null ? void 0 : allowedTabs.length) === 1 && allowedTabs[0] === "filePool" ? "Available files in the pool waiting to be claimed" : (allowedTabs == null ? void 0 : allowedTabs.length) === 1 && allowedTabs[0] === "totalFiles" ? "Archive of all completed and processed workflow files" : "Manage, claim, and process workflow files across stages");
|
|
22989
23117
|
const headerIconBg = iconBg || ((allowedTabs == null ? void 0 : allowedTabs.length) === 1 && allowedTabs[0] === "myFiles" ? "fc:bg-gradient-to-br fc:from-emerald-500 fc:to-teal-600" : (allowedTabs == null ? void 0 : allowedTabs.length) === 1 && allowedTabs[0] === "filePool" ? "fc:bg-gradient-to-br fc:from-blue-600 fc:to-indigo-600" : (allowedTabs == null ? void 0 : allowedTabs.length) === 1 && allowedTabs[0] === "totalFiles" ? "fc:bg-gradient-to-br fc:from-slate-700 fc:to-slate-900" : "fc:bg-gradient-to-br fc:from-blue-600 fc:to-indigo-600");
|
|
22990
|
-
const [activeTab, setActiveTab] = (0,
|
|
22991
|
-
const [viewMode, setViewMode] = (0,
|
|
22992
|
-
const [reviewingFile, setReviewingFile] = (0,
|
|
22993
|
-
(0,
|
|
23118
|
+
const [activeTab, setActiveTab] = (0, import_react126.useState)(initialTab);
|
|
23119
|
+
const [viewMode, setViewMode] = (0, import_react126.useState)(initialView);
|
|
23120
|
+
const [reviewingFile, setReviewingFile] = (0, import_react126.useState)(null);
|
|
23121
|
+
(0, import_react126.useEffect)(() => {
|
|
22994
23122
|
if (initialTab) setActiveTab(initialTab);
|
|
22995
23123
|
}, [initialTab]);
|
|
22996
|
-
(0,
|
|
23124
|
+
(0, import_react126.useEffect)(() => {
|
|
22997
23125
|
if (initialView) setViewMode(initialView);
|
|
22998
23126
|
}, [initialView]);
|
|
22999
|
-
const
|
|
23000
|
-
const [
|
|
23001
|
-
const [
|
|
23002
|
-
const
|
|
23127
|
+
const { userName, initial: userInitial } = useUserProfile();
|
|
23128
|
+
const [assignedSteps, setAssignedSteps] = (0, import_react126.useState)([]);
|
|
23129
|
+
const [activeWorkflowStepId, setActiveWorkflowStepId] = (0, import_react126.useState)(null);
|
|
23130
|
+
const [roleDropdownOpen, setRoleDropdownOpen] = (0, import_react126.useState)(false);
|
|
23131
|
+
const roleDropdownRef = (0, import_react126.useRef)(null);
|
|
23003
23132
|
const activeRoleDetails = assignedSteps.find(
|
|
23004
23133
|
(step) => Number(step.workflowStepId) === Number(activeWorkflowStepId)
|
|
23005
23134
|
);
|
|
23006
23135
|
const activeRole = (activeRoleDetails == null ? void 0 : activeRoleDetails.stepName) || "No Assigned Step";
|
|
23007
|
-
const [filePoolFiles, setFilePoolFiles] = (0,
|
|
23008
|
-
const [myFiles, setMyFiles] = (0,
|
|
23009
|
-
const [totalFiles, setTotalFiles] = (0,
|
|
23010
|
-
const [refreshKey, setRefreshKey] = (0,
|
|
23011
|
-
const [isUnclaiming, setIsUnclaiming] = (0,
|
|
23012
|
-
(0,
|
|
23136
|
+
const [filePoolFiles, setFilePoolFiles] = (0, import_react126.useState)([]);
|
|
23137
|
+
const [myFiles, setMyFiles] = (0, import_react126.useState)([]);
|
|
23138
|
+
const [totalFiles, setTotalFiles] = (0, import_react126.useState)([]);
|
|
23139
|
+
const [refreshKey, setRefreshKey] = (0, import_react126.useState)(0);
|
|
23140
|
+
const [isUnclaiming, setIsUnclaiming] = (0, import_react126.useState)(false);
|
|
23141
|
+
(0, import_react126.useEffect)(() => {
|
|
23013
23142
|
let isCurrent = true;
|
|
23014
23143
|
const loadAssignedSteps = async () => {
|
|
23015
23144
|
var _a, _b;
|
|
@@ -23068,7 +23197,7 @@ function InboxMain({
|
|
|
23068
23197
|
isCurrent = false;
|
|
23069
23198
|
};
|
|
23070
23199
|
}, []);
|
|
23071
|
-
(0,
|
|
23200
|
+
(0, import_react126.useEffect)(() => {
|
|
23072
23201
|
let isCurrent = true;
|
|
23073
23202
|
const loadStepFiles = async () => {
|
|
23074
23203
|
var _a, _b;
|
|
@@ -23127,31 +23256,31 @@ function InboxMain({
|
|
|
23127
23256
|
isCurrent = false;
|
|
23128
23257
|
};
|
|
23129
23258
|
}, [activeWorkflowStepId, refreshKey]);
|
|
23130
|
-
const [dynamicColumns, setDynamicColumns] = (0,
|
|
23259
|
+
const [dynamicColumns, setDynamicColumns] = (0, import_react126.useState)([
|
|
23131
23260
|
{ key: "department", label: "Department", width: "190px", visible: true },
|
|
23132
23261
|
{ key: "applicant", label: "Applicant / Entity", width: "210px", visible: true },
|
|
23133
23262
|
{ key: "category", label: "Category / Type", width: "170px", visible: true },
|
|
23134
23263
|
{ key: "financialYear", label: "Financial Year", width: "120px", visible: true }
|
|
23135
23264
|
]);
|
|
23136
|
-
const [columnDropdownOpen, setColumnDropdownOpen] = (0,
|
|
23137
|
-
const columnDropdownRef = (0,
|
|
23138
|
-
const [searchQuery, setSearchQuery] = (0,
|
|
23139
|
-
const [priorityFilter, setPriorityFilter] = (0,
|
|
23140
|
-
const [pageSize, setPageSize] = (0,
|
|
23141
|
-
const [currentPage, setCurrentPage] = (0,
|
|
23142
|
-
const [sortColumn, setSortColumn] = (0,
|
|
23143
|
-
const [sortDirection, setSortDirection] = (0,
|
|
23144
|
-
const [poolModalOpen, setPoolModalOpen] = (0,
|
|
23145
|
-
const [selectedPoolFile, setSelectedPoolFile] = (0,
|
|
23146
|
-
const [isClaimingPool, setIsClaimingPool] = (0,
|
|
23147
|
-
const [actionModalOpen, setActionModalOpen] = (0,
|
|
23148
|
-
const [selectedActionFile, setSelectedActionFile] = (0,
|
|
23149
|
-
const [viewModalOpen, setViewModalOpen] = (0,
|
|
23150
|
-
const [selectedViewFile, setSelectedViewFile] = (0,
|
|
23151
|
-
const tableRef = (0,
|
|
23152
|
-
const [hoveredFileCard, setHoveredFileCard] = (0,
|
|
23153
|
-
const [hoverTimeoutId, setHoverTimeoutId] = (0,
|
|
23154
|
-
const hiddenDynamicColumns = (0,
|
|
23265
|
+
const [columnDropdownOpen, setColumnDropdownOpen] = (0, import_react126.useState)(false);
|
|
23266
|
+
const columnDropdownRef = (0, import_react126.useRef)(null);
|
|
23267
|
+
const [searchQuery, setSearchQuery] = (0, import_react126.useState)("");
|
|
23268
|
+
const [priorityFilter, setPriorityFilter] = (0, import_react126.useState)("all");
|
|
23269
|
+
const [pageSize, setPageSize] = (0, import_react126.useState)(10);
|
|
23270
|
+
const [currentPage, setCurrentPage] = (0, import_react126.useState)(1);
|
|
23271
|
+
const [sortColumn, setSortColumn] = (0, import_react126.useState)("");
|
|
23272
|
+
const [sortDirection, setSortDirection] = (0, import_react126.useState)("asc");
|
|
23273
|
+
const [poolModalOpen, setPoolModalOpen] = (0, import_react126.useState)(false);
|
|
23274
|
+
const [selectedPoolFile, setSelectedPoolFile] = (0, import_react126.useState)(null);
|
|
23275
|
+
const [isClaimingPool, setIsClaimingPool] = (0, import_react126.useState)(false);
|
|
23276
|
+
const [actionModalOpen, setActionModalOpen] = (0, import_react126.useState)(false);
|
|
23277
|
+
const [selectedActionFile, setSelectedActionFile] = (0, import_react126.useState)(null);
|
|
23278
|
+
const [viewModalOpen, setViewModalOpen] = (0, import_react126.useState)(false);
|
|
23279
|
+
const [selectedViewFile, setSelectedViewFile] = (0, import_react126.useState)(null);
|
|
23280
|
+
const tableRef = (0, import_react126.useRef)(null);
|
|
23281
|
+
const [hoveredFileCard, setHoveredFileCard] = (0, import_react126.useState)(null);
|
|
23282
|
+
const [hoverTimeoutId, setHoverTimeoutId] = (0, import_react126.useState)(null);
|
|
23283
|
+
const hiddenDynamicColumns = (0, import_react126.useMemo)(
|
|
23155
23284
|
() => dynamicColumns.filter((col) => !col.visible),
|
|
23156
23285
|
[dynamicColumns]
|
|
23157
23286
|
);
|
|
@@ -23209,12 +23338,12 @@ function InboxMain({
|
|
|
23209
23338
|
}, 120);
|
|
23210
23339
|
setHoverTimeoutId(timer);
|
|
23211
23340
|
};
|
|
23212
|
-
(0,
|
|
23341
|
+
(0, import_react126.useEffect)(() => {
|
|
23213
23342
|
return () => {
|
|
23214
23343
|
if (hoverTimeoutId) clearTimeout(hoverTimeoutId);
|
|
23215
23344
|
};
|
|
23216
23345
|
}, [hoverTimeoutId]);
|
|
23217
|
-
(0,
|
|
23346
|
+
(0, import_react126.useEffect)(() => {
|
|
23218
23347
|
const handleScroll = () => {
|
|
23219
23348
|
if (hoveredFileCard) {
|
|
23220
23349
|
setHoveredFileCard(null);
|
|
@@ -23223,7 +23352,7 @@ function InboxMain({
|
|
|
23223
23352
|
window.addEventListener("scroll", handleScroll, true);
|
|
23224
23353
|
return () => window.removeEventListener("scroll", handleScroll, true);
|
|
23225
23354
|
}, [hoveredFileCard]);
|
|
23226
|
-
(0,
|
|
23355
|
+
(0, import_react126.useEffect)(() => {
|
|
23227
23356
|
const handleOutsideClick = (e) => {
|
|
23228
23357
|
if (columnDropdownRef.current && !columnDropdownRef.current.contains(e.target)) {
|
|
23229
23358
|
setColumnDropdownOpen(false);
|
|
@@ -23234,7 +23363,7 @@ function InboxMain({
|
|
|
23234
23363
|
}
|
|
23235
23364
|
return () => document.removeEventListener("mousedown", handleOutsideClick);
|
|
23236
23365
|
}, [columnDropdownOpen]);
|
|
23237
|
-
(0,
|
|
23366
|
+
(0, import_react126.useEffect)(() => {
|
|
23238
23367
|
const handleOutsideClick = (e) => {
|
|
23239
23368
|
if (roleDropdownRef.current && !roleDropdownRef.current.contains(e.target)) {
|
|
23240
23369
|
setRoleDropdownOpen(false);
|
|
@@ -23253,7 +23382,7 @@ function InboxMain({
|
|
|
23253
23382
|
const handleSelectAllColumns = (val) => {
|
|
23254
23383
|
setDynamicColumns((prev) => prev.map((col) => __spreadProps(__spreadValues({}, col), { visible: val })));
|
|
23255
23384
|
};
|
|
23256
|
-
const currentTabRawData = (0,
|
|
23385
|
+
const currentTabRawData = (0, import_react126.useMemo)(() => {
|
|
23257
23386
|
switch (activeTab) {
|
|
23258
23387
|
case "filePool":
|
|
23259
23388
|
return filePoolFiles;
|
|
@@ -23265,7 +23394,7 @@ function InboxMain({
|
|
|
23265
23394
|
return filePoolFiles;
|
|
23266
23395
|
}
|
|
23267
23396
|
}, [activeTab, filePoolFiles, myFiles, totalFiles]);
|
|
23268
|
-
const filteredData = (0,
|
|
23397
|
+
const filteredData = (0, import_react126.useMemo)(() => {
|
|
23269
23398
|
let result = [...currentTabRawData];
|
|
23270
23399
|
if (searchQuery.trim()) {
|
|
23271
23400
|
const q = searchQuery.toLowerCase().trim();
|
|
@@ -23309,9 +23438,9 @@ function InboxMain({
|
|
|
23309
23438
|
};
|
|
23310
23439
|
const renderSortIndicator = (column) => {
|
|
23311
23440
|
if (sortColumn !== column) {
|
|
23312
|
-
return /* @__PURE__ */ (0, import_jsx_runtime111.jsx)(
|
|
23441
|
+
return /* @__PURE__ */ (0, import_jsx_runtime111.jsx)(import_react127.RiArrowUpDownLine, { size: 13, className: "fc:text-slate-300 fc:ml-1" });
|
|
23313
23442
|
}
|
|
23314
|
-
return sortDirection === "asc" ? /* @__PURE__ */ (0, import_jsx_runtime111.jsx)(
|
|
23443
|
+
return sortDirection === "asc" ? /* @__PURE__ */ (0, import_jsx_runtime111.jsx)(import_react127.RiArrowUpSLine, { size: 15, className: "fc:text-blue-600 fc:ml-1" }) : /* @__PURE__ */ (0, import_jsx_runtime111.jsx)(import_react127.RiArrowDownSLine, { size: 15, className: "fc:text-blue-600 fc:ml-1" });
|
|
23315
23444
|
};
|
|
23316
23445
|
const handleOpenPoolModal = (file) => {
|
|
23317
23446
|
setSelectedPoolFile(file);
|
|
@@ -23496,7 +23625,7 @@ function InboxMain({
|
|
|
23496
23625
|
link.click();
|
|
23497
23626
|
document.body.removeChild(link);
|
|
23498
23627
|
};
|
|
23499
|
-
const visibleDynamicColumns = (0,
|
|
23628
|
+
const visibleDynamicColumns = (0, import_react126.useMemo)(
|
|
23500
23629
|
() => dynamicColumns.filter((c) => c.visible),
|
|
23501
23630
|
[dynamicColumns]
|
|
23502
23631
|
);
|
|
@@ -23514,7 +23643,8 @@ function InboxMain({
|
|
|
23514
23643
|
},
|
|
23515
23644
|
onBackToInbox: () => setViewMode("table"),
|
|
23516
23645
|
onSubmitAction: handleActionSubmit,
|
|
23517
|
-
refreshKey
|
|
23646
|
+
refreshKey,
|
|
23647
|
+
userName
|
|
23518
23648
|
}
|
|
23519
23649
|
);
|
|
23520
23650
|
}
|
|
@@ -23541,12 +23671,12 @@ function InboxMain({
|
|
|
23541
23671
|
),
|
|
23542
23672
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsxs)("div", { className: "fc:relative fc:flex fc:items-center fc:gap-3 fc:bg-slate-50/90 fc:border fc:border-slate-200/80 fc:rounded-2xl fc:p-1.5 fc:pr-3.5 fc:shadow-sm", ref: roleDropdownRef, children: [
|
|
23543
23673
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsxs)("div", { className: "fc:relative fc:shrink-0", children: [
|
|
23544
|
-
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)("div", { className: "fc:w-9 fc:h-9 fc:rounded-xl fc:bg-gradient-to-br fc:from-blue-600 fc:to-indigo-600 fc:text-white fc:font-extrabold fc:text-xs fc:flex fc:items-center fc:justify-center fc:shadow-sm", children:
|
|
23674
|
+
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)("div", { className: "fc:w-9 fc:h-9 fc:rounded-xl fc:bg-gradient-to-br fc:from-blue-600 fc:to-indigo-600 fc:text-white fc:font-extrabold fc:text-xs fc:flex fc:items-center fc:justify-center fc:shadow-sm", children: userInitial }),
|
|
23545
23675
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)("span", { className: "fc:absolute fc:-bottom-0.5 fc:-right-0.5 fc:w-2.5 fc:h-2.5 fc:bg-emerald-500 fc:border-2 fc:border-white fc:rounded-full" })
|
|
23546
23676
|
] }),
|
|
23547
23677
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsxs)("div", { className: "fc:flex fc:flex-col fc:justify-center", children: [
|
|
23548
23678
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsxs)("div", { className: "fc:flex fc:items-center fc:gap-2", children: [
|
|
23549
|
-
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)("span", { className: "fc:text-xs fc:font-extrabold fc:text-slate-800", children: "
|
|
23679
|
+
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)("span", { className: "fc:text-xs fc:font-extrabold fc:text-slate-800", children: userName || "User" }),
|
|
23550
23680
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsxs)(
|
|
23551
23681
|
"button",
|
|
23552
23682
|
{
|
|
@@ -23557,7 +23687,7 @@ function InboxMain({
|
|
|
23557
23687
|
className: "fc:inline-flex fc:items-center fc:gap-1 fc:rounded-lg fc:border fc:border-blue-200 fc:bg-blue-50 fc:px-2 fc:py-1 fc:text-[10px] fc:font-bold fc:text-blue-700 fc:transition-colors hover:fc:bg-blue-100 focus-visible:fc:outline-none focus-visible:fc:ring-2 focus-visible:fc:ring-blue-400",
|
|
23558
23688
|
children: [
|
|
23559
23689
|
activeRole,
|
|
23560
|
-
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(
|
|
23690
|
+
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(import_react127.RiArrowDownSLine, { size: 12 })
|
|
23561
23691
|
]
|
|
23562
23692
|
}
|
|
23563
23693
|
)
|
|
@@ -23620,7 +23750,7 @@ function InboxMain({
|
|
|
23620
23750
|
onClick: handleRefresh,
|
|
23621
23751
|
title: "Refresh Table",
|
|
23622
23752
|
className: "fc:h-9 fc:w-9 fc:flex fc:items-center fc:justify-center fc:border fc:border-slate-200 fc:rounded-xl fc:text-slate-600 hover:fc:bg-slate-50 fc:bg-white fc:shadow-sm fc:transition-all",
|
|
23623
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime111.jsx)(
|
|
23753
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime111.jsx)(import_react127.RiRefreshLine, { size: 16 })
|
|
23624
23754
|
}
|
|
23625
23755
|
)
|
|
23626
23756
|
] })
|
|
@@ -23636,7 +23766,7 @@ function InboxMain({
|
|
|
23636
23766
|
onClick: () => handleTabChange("filePool"),
|
|
23637
23767
|
className: `fc:flex fc:items-center fc:gap-2.5 fc:px-4 fc:py-2 fc:rounded-xl fc:text-xs fc:font-bold fc:transition-all ${activeTab === "filePool" ? "fc:bg-blue-600 fc:text-white fc:shadow-md fc:shadow-blue-500/25" : "fc:text-slate-600 hover:fc:text-slate-900 hover:fc:bg-white/60"}`,
|
|
23638
23768
|
children: [
|
|
23639
|
-
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(
|
|
23769
|
+
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(import_react127.RiInboxArchiveLine, { size: 16 }),
|
|
23640
23770
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)("span", { children: "Unclaimed Files" }),
|
|
23641
23771
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(
|
|
23642
23772
|
"span",
|
|
@@ -23659,7 +23789,7 @@ function InboxMain({
|
|
|
23659
23789
|
onClick: () => handleTabChange("myFiles"),
|
|
23660
23790
|
className: `fc:flex fc:items-center fc:gap-2.5 fc:px-4 fc:py-2 fc:rounded-xl fc:text-xs fc:font-bold fc:transition-all ${activeTab === "myFiles" ? "fc:bg-emerald-600 fc:text-white fc:shadow-md fc:shadow-emerald-500/25" : "fc:text-slate-600 hover:fc:text-slate-900 hover:fc:bg-white/60"}`,
|
|
23661
23791
|
children: [
|
|
23662
|
-
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(
|
|
23792
|
+
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(import_react127.RiUserReceivedLine, { size: 16 }),
|
|
23663
23793
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)("span", { children: "My Files" }),
|
|
23664
23794
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(
|
|
23665
23795
|
"span",
|
|
@@ -23682,7 +23812,7 @@ function InboxMain({
|
|
|
23682
23812
|
onClick: () => handleTabChange("totalFiles"),
|
|
23683
23813
|
className: `fc:flex fc:items-center fc:gap-2.5 fc:px-4 fc:py-2 fc:rounded-xl fc:text-xs fc:font-bold fc:transition-all ${activeTab === "totalFiles" ? "fc:bg-slate-800 fc:text-white fc:shadow-md fc:shadow-slate-800/25" : "fc:text-slate-600 hover:fc:text-slate-900 hover:fc:bg-white/60"}`,
|
|
23684
23814
|
children: [
|
|
23685
|
-
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(
|
|
23815
|
+
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(import_react127.RiFileUploadLine, { size: 16 }),
|
|
23686
23816
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)("span", { children: "Completed Files" }),
|
|
23687
23817
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(
|
|
23688
23818
|
"span",
|
|
@@ -23716,7 +23846,7 @@ function InboxMain({
|
|
|
23716
23846
|
}
|
|
23717
23847
|
),
|
|
23718
23848
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(
|
|
23719
|
-
|
|
23849
|
+
import_react127.RiSearchLine,
|
|
23720
23850
|
{
|
|
23721
23851
|
size: 15,
|
|
23722
23852
|
className: "fc:absolute fc:left-3 fc:top-2.5 fc:text-slate-400 fc:pointer-events-none"
|
|
@@ -23731,7 +23861,7 @@ function InboxMain({
|
|
|
23731
23861
|
onClick: () => setColumnDropdownOpen((prev) => !prev),
|
|
23732
23862
|
className: `fc:h-9 fc:px-3 fc:flex fc:items-center fc:gap-2 fc:border fc:rounded-xl fc:text-xs fc:font-bold fc:transition-all ${columnDropdownOpen ? "fc:border-blue-500 fc:bg-blue-50/60 fc:text-blue-700 fc:ring-2 fc:ring-blue-500/10" : "fc:border-slate-200 fc:bg-white fc:text-slate-700 hover:fc:bg-slate-50"}`,
|
|
23733
23863
|
children: [
|
|
23734
|
-
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(
|
|
23864
|
+
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(import_react127.RiLayoutColumnLine, { size: 15, className: "fc:text-blue-600" }),
|
|
23735
23865
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)("span", { children: "Dynamic Columns" }),
|
|
23736
23866
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsxs)("span", { className: "fc:bg-blue-100 fc:text-blue-700 fc:text-[10px] fc:font-extrabold fc:px-1.5 fc:py-0.2 fc:rounded-full", children: [
|
|
23737
23867
|
visibleDynamicColumns.length,
|
|
@@ -23814,7 +23944,7 @@ function InboxMain({
|
|
|
23814
23944
|
title: "Export as CSV",
|
|
23815
23945
|
className: "fc:h-9 fc:px-3 fc:flex fc:items-center fc:gap-1.5 fc:border fc:border-slate-200 fc:rounded-xl fc:text-xs fc:font-bold fc:text-slate-700 hover:fc:bg-slate-50 fc:transition-all",
|
|
23816
23946
|
children: [
|
|
23817
|
-
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(
|
|
23947
|
+
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(import_react127.RiDownload2Line, { size: 15 }),
|
|
23818
23948
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)("span", { className: "fc:hidden sm:fc:inline", children: "Export" })
|
|
23819
23949
|
]
|
|
23820
23950
|
}
|
|
@@ -23995,7 +24125,7 @@ function InboxMain({
|
|
|
23995
24125
|
colSpan: 10 + visibleDynamicColumns.length + (activeTab === "totalFiles" ? 1 : 0),
|
|
23996
24126
|
className: "fc:py-12 fc:text-center",
|
|
23997
24127
|
children: /* @__PURE__ */ (0, import_jsx_runtime111.jsxs)("div", { className: "fc:flex fc:flex-col fc:items-center fc:justify-center fc:gap-2 fc:text-slate-400", children: [
|
|
23998
|
-
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(
|
|
24128
|
+
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(import_react127.RiInboxLine, { size: 36, className: "fc:text-slate-300" }),
|
|
23999
24129
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)("p", { className: "fc:text-sm fc:font-bold fc:text-slate-600", children: "No Files Found" }),
|
|
24000
24130
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)("p", { className: "fc:text-xs", children: searchQuery ? `No records matching "${searchQuery}" in ${activeTab}` : `There are currently no files in ${activeTab}` })
|
|
24001
24131
|
] })
|
|
@@ -24032,7 +24162,7 @@ function InboxMain({
|
|
|
24032
24162
|
children: [
|
|
24033
24163
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)("span", { className: "fc:text-xs fc:font-extrabold hover:fc:underline", children: row.fileNumber }),
|
|
24034
24164
|
hasHiddenDynamicColumns && /* @__PURE__ */ (0, import_jsx_runtime111.jsxs)("span", { className: "fc:inline-flex fc:items-center fc:gap-0.5 fc:px-1.5 fc:py-0.2 fc:rounded fc:bg-amber-100/90 fc:text-amber-800 fc:text-[9px] fc:font-black fc:border fc:border-amber-200/80", children: [
|
|
24035
|
-
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(
|
|
24165
|
+
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(import_react127.RiEyeOffLine, { size: 10 }),
|
|
24036
24166
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)("span", { children: hiddenDynamicColumns.length })
|
|
24037
24167
|
] })
|
|
24038
24168
|
]
|
|
@@ -24218,7 +24348,7 @@ function InboxMain({
|
|
|
24218
24348
|
style: { fontSize: "12px" },
|
|
24219
24349
|
className: "fc:inline-flex fc:items-center fc:gap-1.5 fc:h-8 fc:px-3 fc:bg-blue-600 hover:fc:bg-blue-700 fc:text-white fc:font-bold fc:rounded-xl fc:shadow-sm fc:shadow-blue-500/20 fc:transition-all hover:fc:scale-[1.02] active:fc:scale-95",
|
|
24220
24350
|
children: [
|
|
24221
|
-
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(
|
|
24351
|
+
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(import_react127.RiInboxArchiveLine, { size: 14 }),
|
|
24222
24352
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)("span", { children: "Claim" })
|
|
24223
24353
|
]
|
|
24224
24354
|
}
|
|
@@ -24232,7 +24362,7 @@ function InboxMain({
|
|
|
24232
24362
|
style: { fontSize: "11px" },
|
|
24233
24363
|
className: "fc:inline-flex fc:items-center fc:justify-center fc:gap-1 fc:h-8 fc:px-2 fc:whitespace-nowrap fc:bg-emerald-600 hover:fc:bg-emerald-700 fc:text-white fc:font-bold fc:rounded-lg fc:shadow-sm fc:shadow-emerald-500/20 fc:transition-all hover:fc:scale-[1.02] active:fc:scale-95",
|
|
24234
24364
|
children: [
|
|
24235
|
-
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(
|
|
24365
|
+
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(import_react127.RiFileUploadLine, { size: 13 }),
|
|
24236
24366
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)("span", { children: "Take Action" })
|
|
24237
24367
|
]
|
|
24238
24368
|
}
|
|
@@ -24257,7 +24387,7 @@ function InboxMain({
|
|
|
24257
24387
|
style: { fontSize: "12px" },
|
|
24258
24388
|
className: "fc:inline-flex fc:items-center fc:gap-1.5 fc:h-8 fc:px-3 fc:bg-slate-100 hover:fc:bg-slate-200 fc:text-slate-700 fc:font-bold fc:rounded-xl fc:transition-all hover:fc:scale-[1.02] active:fc:scale-95",
|
|
24259
24389
|
children: [
|
|
24260
|
-
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(
|
|
24390
|
+
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(import_react127.RiEyeLine, { size: 14 }),
|
|
24261
24391
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)("span", { children: "View" })
|
|
24262
24392
|
]
|
|
24263
24393
|
}
|
|
@@ -24297,7 +24427,7 @@ function InboxMain({
|
|
|
24297
24427
|
),
|
|
24298
24428
|
Array.from({ length: totalPages }, (_, i) => i + 1).filter((p) => p === 1 || p === totalPages || Math.abs(p - currentPage) <= 1).map((p, idx, arr) => {
|
|
24299
24429
|
const prev = arr[idx - 1];
|
|
24300
|
-
return /* @__PURE__ */ (0, import_jsx_runtime111.jsxs)(
|
|
24430
|
+
return /* @__PURE__ */ (0, import_jsx_runtime111.jsxs)(import_react126.default.Fragment, { children: [
|
|
24301
24431
|
prev && p - prev > 1 && /* @__PURE__ */ (0, import_jsx_runtime111.jsx)("span", { className: "fc:px-1 fc:text-xs fc:text-slate-400", children: "..." }),
|
|
24302
24432
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(
|
|
24303
24433
|
"button",
|
|
@@ -24381,7 +24511,7 @@ function InboxMain({
|
|
|
24381
24511
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)("span", { className: "fc:text-[11px] fc:font-bold fc:text-slate-600", children: "Hidden Fields" })
|
|
24382
24512
|
] }),
|
|
24383
24513
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsxs)("span", { className: "fc:inline-flex fc:items-center fc:gap-1 fc:text-[10px] fc:font-extrabold fc:px-2 fc:py-0.5 fc:rounded-md fc:bg-amber-50 fc:text-amber-800 fc:border fc:border-amber-200/80", children: [
|
|
24384
|
-
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(
|
|
24514
|
+
/* @__PURE__ */ (0, import_jsx_runtime111.jsx)(import_react127.RiEyeOffLine, { size: 11 }),
|
|
24385
24515
|
/* @__PURE__ */ (0, import_jsx_runtime111.jsxs)("span", { children: [
|
|
24386
24516
|
hiddenDynamicColumns.length,
|
|
24387
24517
|
" Hidden"
|
|
@@ -24419,8 +24549,8 @@ function InboxMain({
|
|
|
24419
24549
|
}
|
|
24420
24550
|
|
|
24421
24551
|
// src/components/inbox/MyFilesMain.jsx
|
|
24422
|
-
var
|
|
24423
|
-
var
|
|
24552
|
+
var import_react128 = __toESM(require("react"));
|
|
24553
|
+
var import_react129 = require("@remixicon/react");
|
|
24424
24554
|
var import_jsx_runtime112 = require("react/jsx-runtime");
|
|
24425
24555
|
function MyFilesMain(props) {
|
|
24426
24556
|
return /* @__PURE__ */ (0, import_jsx_runtime112.jsx)(
|
|
@@ -24431,15 +24561,15 @@ function MyFilesMain(props) {
|
|
|
24431
24561
|
allowedTabs: ["myFiles"],
|
|
24432
24562
|
title: "My Files",
|
|
24433
24563
|
subtitle: "View and process files currently assigned to your queue",
|
|
24434
|
-
icon:
|
|
24564
|
+
icon: import_react129.RiUserReceivedLine,
|
|
24435
24565
|
iconBg: "fc:bg-gradient-to-br fc:from-emerald-500 fc:to-teal-600"
|
|
24436
24566
|
}, props)
|
|
24437
24567
|
);
|
|
24438
24568
|
}
|
|
24439
24569
|
|
|
24440
24570
|
// src/components/inbox/UnclaimedFilesMain.jsx
|
|
24441
|
-
var
|
|
24442
|
-
var
|
|
24571
|
+
var import_react130 = __toESM(require("react"));
|
|
24572
|
+
var import_react131 = require("@remixicon/react");
|
|
24443
24573
|
var import_jsx_runtime113 = require("react/jsx-runtime");
|
|
24444
24574
|
function UnclaimedFilesMain(props) {
|
|
24445
24575
|
return /* @__PURE__ */ (0, import_jsx_runtime113.jsx)(
|
|
@@ -24450,15 +24580,15 @@ function UnclaimedFilesMain(props) {
|
|
|
24450
24580
|
allowedTabs: ["filePool"],
|
|
24451
24581
|
title: "Unclaimed Files",
|
|
24452
24582
|
subtitle: "Available files in the pool waiting to be claimed by users",
|
|
24453
|
-
icon:
|
|
24583
|
+
icon: import_react131.RiInboxArchiveLine,
|
|
24454
24584
|
iconBg: "fc:bg-gradient-to-br fc:from-blue-600 fc:to-indigo-600"
|
|
24455
24585
|
}, props)
|
|
24456
24586
|
);
|
|
24457
24587
|
}
|
|
24458
24588
|
|
|
24459
24589
|
// src/components/inbox/CompletedFilesMain.jsx
|
|
24460
|
-
var
|
|
24461
|
-
var
|
|
24590
|
+
var import_react132 = __toESM(require("react"));
|
|
24591
|
+
var import_react133 = require("@remixicon/react");
|
|
24462
24592
|
var import_jsx_runtime114 = require("react/jsx-runtime");
|
|
24463
24593
|
function CompletedFilesMain(props) {
|
|
24464
24594
|
return /* @__PURE__ */ (0, import_jsx_runtime114.jsx)(
|
|
@@ -24469,23 +24599,23 @@ function CompletedFilesMain(props) {
|
|
|
24469
24599
|
allowedTabs: ["totalFiles"],
|
|
24470
24600
|
title: "Completed Files",
|
|
24471
24601
|
subtitle: "Archive of all completed and processed workflow files",
|
|
24472
|
-
icon:
|
|
24602
|
+
icon: import_react133.RiFileUploadLine,
|
|
24473
24603
|
iconBg: "fc:bg-gradient-to-br fc:from-slate-700 fc:to-slate-900"
|
|
24474
24604
|
}, props)
|
|
24475
24605
|
);
|
|
24476
24606
|
}
|
|
24477
24607
|
|
|
24478
24608
|
// src/components/track-application/TrackApplicationMain.jsx
|
|
24479
|
-
var
|
|
24609
|
+
var import_react136 = __toESM(require("react"));
|
|
24480
24610
|
var import_sweetalert232 = __toESM(require("sweetalert2"));
|
|
24481
|
-
var
|
|
24611
|
+
var import_react137 = require("@remixicon/react");
|
|
24482
24612
|
|
|
24483
24613
|
// src/components/track-application/TrackingSlipModal.jsx
|
|
24484
|
-
var
|
|
24485
|
-
var
|
|
24614
|
+
var import_react134 = __toESM(require("react"));
|
|
24615
|
+
var import_react135 = require("@remixicon/react");
|
|
24486
24616
|
var import_jsx_runtime115 = require("react/jsx-runtime");
|
|
24487
24617
|
function TrackingSlipModal({ isOpen, onClose, application }) {
|
|
24488
|
-
(0,
|
|
24618
|
+
(0, import_react134.useEffect)(() => {
|
|
24489
24619
|
if (!isOpen) return;
|
|
24490
24620
|
const handleKeyDown = (e) => {
|
|
24491
24621
|
if (e.key === "Escape") onClose();
|
|
@@ -24508,7 +24638,7 @@ function TrackingSlipModal({ isOpen, onClose, application }) {
|
|
|
24508
24638
|
/* @__PURE__ */ (0, import_jsx_runtime115.jsxs)("div", { className: "fc:relative fc:w-full fc:max-w-2xl fc:bg-white fc:rounded-3xl fc:flex fc:flex-col fc:z-10 fc:shadow-2xl fc:overflow-hidden print:fc:shadow-none print:fc:rounded-none print:fc:max-w-none print:fc:w-full", children: [
|
|
24509
24639
|
/* @__PURE__ */ (0, import_jsx_runtime115.jsxs)("div", { className: "fc:flex fc:justify-between fc:items-center fc:px-6 fc:py-4 fc:border-b fc:border-slate-100 fc:bg-slate-50/70 print:fc:bg-white", children: [
|
|
24510
24640
|
/* @__PURE__ */ (0, import_jsx_runtime115.jsxs)("div", { className: "fc:flex fc:items-center fc:gap-3", children: [
|
|
24511
|
-
/* @__PURE__ */ (0, import_jsx_runtime115.jsx)("div", { className: "fc:w-10 fc:h-10 fc:bg-gradient-to-br fc:from-blue-600 fc:to-indigo-600 fc:text-white fc:rounded-xl fc:flex fc:items-center fc:justify-center fc:shadow-md fc:shadow-blue-500/20", children: /* @__PURE__ */ (0, import_jsx_runtime115.jsx)(
|
|
24641
|
+
/* @__PURE__ */ (0, import_jsx_runtime115.jsx)("div", { className: "fc:w-10 fc:h-10 fc:bg-gradient-to-br fc:from-blue-600 fc:to-indigo-600 fc:text-white fc:rounded-xl fc:flex fc:items-center fc:justify-center fc:shadow-md fc:shadow-blue-500/20", children: /* @__PURE__ */ (0, import_jsx_runtime115.jsx)(import_react135.RiRouteLine, { size: 20 }) }),
|
|
24512
24642
|
/* @__PURE__ */ (0, import_jsx_runtime115.jsxs)("div", { children: [
|
|
24513
24643
|
/* @__PURE__ */ (0, import_jsx_runtime115.jsx)("h3", { className: "fc:text-base fc:font-bold fc:text-slate-800", children: "Application Tracking Acknowledgement" }),
|
|
24514
24644
|
/* @__PURE__ */ (0, import_jsx_runtime115.jsxs)("p", { className: "fc:text-xs fc:text-slate-500", children: [
|
|
@@ -24525,7 +24655,7 @@ function TrackingSlipModal({ isOpen, onClose, application }) {
|
|
|
24525
24655
|
onClick: handlePrint,
|
|
24526
24656
|
className: "fc:flex fc:items-center fc:gap-1.5 fc:px-3.5 fc:py-1.5 fc:bg-blue-600 hover:fc:bg-blue-700 fc:text-white fc:text-xs fc:font-bold fc:rounded-xl fc:shadow-sm fc:transition-all",
|
|
24527
24657
|
children: [
|
|
24528
|
-
/* @__PURE__ */ (0, import_jsx_runtime115.jsx)(
|
|
24658
|
+
/* @__PURE__ */ (0, import_jsx_runtime115.jsx)(import_react135.RiPrinterLine, { size: 15 }),
|
|
24529
24659
|
/* @__PURE__ */ (0, import_jsx_runtime115.jsx)("span", { children: "Print Slip" })
|
|
24530
24660
|
]
|
|
24531
24661
|
}
|
|
@@ -24536,7 +24666,7 @@ function TrackingSlipModal({ isOpen, onClose, application }) {
|
|
|
24536
24666
|
type: "button",
|
|
24537
24667
|
onClick: onClose,
|
|
24538
24668
|
className: "fc:text-slate-400 hover:fc:text-slate-600 hover:fc:bg-slate-100 fc:p-1.5 fc:rounded-full fc:transition-all",
|
|
24539
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime115.jsx)(
|
|
24669
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime115.jsx)(import_react135.RiCloseLine, { size: 20 })
|
|
24540
24670
|
}
|
|
24541
24671
|
)
|
|
24542
24672
|
] })
|
|
@@ -24554,7 +24684,7 @@ function TrackingSlipModal({ isOpen, onClose, application }) {
|
|
|
24554
24684
|
] }),
|
|
24555
24685
|
/* @__PURE__ */ (0, import_jsx_runtime115.jsxs)("div", { className: "fc:p-4 fc:bg-slate-50/70 fc:rounded-2xl fc:border fc:border-slate-100", children: [
|
|
24556
24686
|
/* @__PURE__ */ (0, import_jsx_runtime115.jsxs)("div", { className: "fc:flex fc:items-center fc:gap-1.5 fc:text-xs fc:font-bold fc:text-slate-500 fc:mb-1", children: [
|
|
24557
|
-
/* @__PURE__ */ (0, import_jsx_runtime115.jsx)(
|
|
24687
|
+
/* @__PURE__ */ (0, import_jsx_runtime115.jsx)(import_react135.RiFileTextLine, { size: 15 }),
|
|
24558
24688
|
/* @__PURE__ */ (0, import_jsx_runtime115.jsx)("span", { children: "Subject / Proposal" })
|
|
24559
24689
|
] }),
|
|
24560
24690
|
/* @__PURE__ */ (0, import_jsx_runtime115.jsx)("p", { className: "fc:text-sm fc:font-semibold fc:text-slate-800 fc:leading-relaxed", children: application.subject })
|
|
@@ -24651,7 +24781,7 @@ function TrackingSlipModal({ isOpen, onClose, application }) {
|
|
|
24651
24781
|
onClick: handlePrint,
|
|
24652
24782
|
className: "fc:flex fc:items-center fc:gap-1.5 fc:px-4 fc:py-2 fc:bg-blue-600 hover:fc:bg-blue-700 fc:text-white fc:text-xs fc:font-bold fc:rounded-xl fc:shadow-sm fc:transition-all",
|
|
24653
24783
|
children: [
|
|
24654
|
-
/* @__PURE__ */ (0, import_jsx_runtime115.jsx)(
|
|
24784
|
+
/* @__PURE__ */ (0, import_jsx_runtime115.jsx)(import_react135.RiPrinterLine, { size: 15 }),
|
|
24655
24785
|
/* @__PURE__ */ (0, import_jsx_runtime115.jsx)("span", { children: "Print Receipt" })
|
|
24656
24786
|
]
|
|
24657
24787
|
}
|
|
@@ -24666,17 +24796,17 @@ var import_jsx_runtime116 = require("react/jsx-runtime");
|
|
|
24666
24796
|
var APPLICATION_DATABASE = [];
|
|
24667
24797
|
function TrackApplicationMain() {
|
|
24668
24798
|
var _a, _b, _c;
|
|
24669
|
-
const [trackQuery, setTrackQuery] = (0,
|
|
24670
|
-
const [selectedApplication, setSelectedApplication] = (0,
|
|
24671
|
-
const [activeTab, setActiveTab] = (0,
|
|
24672
|
-
const [viewMode, setViewMode] = (0,
|
|
24673
|
-
const [tableSearch, setTableSearch] = (0,
|
|
24674
|
-
const [priorityFilter, setPriorityFilter] = (0,
|
|
24675
|
-
const [pageSize, setPageSize] = (0,
|
|
24676
|
-
const [currentPage, setCurrentPage] = (0,
|
|
24677
|
-
const [sortColumn, setSortColumn] = (0,
|
|
24678
|
-
const [sortDirection, setSortDirection] = (0,
|
|
24679
|
-
const [slipModalOpen, setSlipModalOpen] = (0,
|
|
24799
|
+
const [trackQuery, setTrackQuery] = (0, import_react136.useState)("");
|
|
24800
|
+
const [selectedApplication, setSelectedApplication] = (0, import_react136.useState)(null);
|
|
24801
|
+
const [activeTab, setActiveTab] = (0, import_react136.useState)("timeline");
|
|
24802
|
+
const [viewMode, setViewMode] = (0, import_react136.useState)("tracker");
|
|
24803
|
+
const [tableSearch, setTableSearch] = (0, import_react136.useState)("");
|
|
24804
|
+
const [priorityFilter, setPriorityFilter] = (0, import_react136.useState)("all");
|
|
24805
|
+
const [pageSize, setPageSize] = (0, import_react136.useState)(10);
|
|
24806
|
+
const [currentPage, setCurrentPage] = (0, import_react136.useState)(1);
|
|
24807
|
+
const [sortColumn, setSortColumn] = (0, import_react136.useState)("");
|
|
24808
|
+
const [sortDirection, setSortDirection] = (0, import_react136.useState)("asc");
|
|
24809
|
+
const [slipModalOpen, setSlipModalOpen] = (0, import_react136.useState)(false);
|
|
24680
24810
|
const handleTrack = async (fileNoToTrack) => {
|
|
24681
24811
|
const targetNo = (fileNoToTrack || trackQuery).trim().toUpperCase();
|
|
24682
24812
|
if (!targetNo) {
|
|
@@ -24709,7 +24839,7 @@ function TrackApplicationMain() {
|
|
|
24709
24839
|
showConfirmButton: false
|
|
24710
24840
|
});
|
|
24711
24841
|
};
|
|
24712
|
-
const filteredRegistryData = (0,
|
|
24842
|
+
const filteredRegistryData = (0, import_react136.useMemo)(() => {
|
|
24713
24843
|
return APPLICATION_DATABASE.filter((app) => {
|
|
24714
24844
|
const q = tableSearch.toLowerCase();
|
|
24715
24845
|
const matchSearch = !q || app.fileNumber.toLowerCase().includes(q) || app.subject.toLowerCase().includes(q) || app.workflowName.toLowerCase().includes(q) || app.applicant.toLowerCase().includes(q) || app.department.toLowerCase().includes(q) || app.status.toLowerCase().includes(q);
|
|
@@ -24738,9 +24868,9 @@ function TrackApplicationMain() {
|
|
|
24738
24868
|
};
|
|
24739
24869
|
const getSortIcon = (col) => {
|
|
24740
24870
|
if (sortColumn !== col) {
|
|
24741
|
-
return /* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
24871
|
+
return /* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiArrowUpDownLine, { size: 13, className: "fc:text-slate-400" });
|
|
24742
24872
|
}
|
|
24743
|
-
return sortDirection === "asc" ? /* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
24873
|
+
return sortDirection === "asc" ? /* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiArrowUpSLine, { size: 14, className: "fc:text-blue-600" }) : /* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiArrowDownSLine, { size: 14, className: "fc:text-blue-600" });
|
|
24744
24874
|
};
|
|
24745
24875
|
const handleExportCSV = () => {
|
|
24746
24876
|
const headers = [
|
|
@@ -24780,7 +24910,7 @@ function TrackApplicationMain() {
|
|
|
24780
24910
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("div", { className: "fc:absolute fc:inset-x-0 fc:top-0 fc:h-1 fc:bg-gradient-to-r fc:from-blue-600 fc:via-cyan-500 fc:to-indigo-600" }),
|
|
24781
24911
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsxs)("div", { className: "fc:relative fc:flex fc:items-center fc:justify-between fc:px-6 fc:py-3 fc:gap-4", children: [
|
|
24782
24912
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsxs)("div", { className: "fc:flex fc:items-center fc:gap-3.5", children: [
|
|
24783
|
-
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("div", { className: "fc:flex fc:h-11 fc:w-11 fc:items-center fc:justify-center fc:rounded-xl fc:bg-gradient-to-br fc:from-blue-600 fc:to-indigo-600 fc:text-white fc:shadow-md fc:shadow-blue-500/20 fc:shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
24913
|
+
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("div", { className: "fc:flex fc:h-11 fc:w-11 fc:items-center fc:justify-center fc:rounded-xl fc:bg-gradient-to-br fc:from-blue-600 fc:to-indigo-600 fc:text-white fc:shadow-md fc:shadow-blue-500/20 fc:shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiRouteLine, { size: 22 }) }),
|
|
24784
24914
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsxs)("div", { children: [
|
|
24785
24915
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("h1", { className: "fc:text-xl fc:font-extrabold fc:text-slate-800 fc:tracking-tight fc:leading-tight", children: "Track Application" }),
|
|
24786
24916
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("p", { className: "fc:text-[11px] fc:text-slate-500 fc:mt-0.5", children: "Real-time lifecycle tracking, stage progression, SLA timeline, and movement audit" })
|
|
@@ -24795,7 +24925,7 @@ function TrackApplicationMain() {
|
|
|
24795
24925
|
onClick: () => handleTrack(selectedApplication == null ? void 0 : selectedApplication.fileNumber),
|
|
24796
24926
|
title: "Refresh Tracking Data",
|
|
24797
24927
|
className: "fc:h-9 fc:w-9 fc:flex fc:items-center fc:justify-center fc:border fc:border-slate-200 fc:rounded-xl fc:text-slate-600 hover:fc:bg-slate-50 fc:bg-white fc:shadow-sm fc:transition-all fc:cursor-pointer",
|
|
24798
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
24928
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiRefreshLine, { size: 16 })
|
|
24799
24929
|
}
|
|
24800
24930
|
)
|
|
24801
24931
|
] })
|
|
@@ -24810,7 +24940,7 @@ function TrackApplicationMain() {
|
|
|
24810
24940
|
onClick: () => setViewMode("tracker"),
|
|
24811
24941
|
className: `fc:flex fc:items-center fc:gap-2 fc:px-3.5 fc:py-2 fc:rounded-lg fc:text-xs fc:font-bold fc:transition-all ${viewMode === "tracker" ? "fc:bg-blue-600 fc:text-white fc:shadow-sm" : "fc:text-slate-600 hover:fc:text-slate-900"}`,
|
|
24812
24942
|
children: [
|
|
24813
|
-
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
24943
|
+
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiRouteLine, { size: 15 }),
|
|
24814
24944
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("span", { children: "Tracking Dashboard" })
|
|
24815
24945
|
]
|
|
24816
24946
|
}
|
|
@@ -24822,7 +24952,7 @@ function TrackApplicationMain() {
|
|
|
24822
24952
|
onClick: () => setViewMode("registry"),
|
|
24823
24953
|
className: `fc:flex fc:items-center fc:gap-2 fc:px-3.5 fc:py-2 fc:rounded-lg fc:text-xs fc:font-bold fc:transition-all ${viewMode === "registry" ? "fc:bg-blue-600 fc:text-white fc:shadow-sm" : "fc:text-slate-600 hover:fc:text-slate-900"}`,
|
|
24824
24954
|
children: [
|
|
24825
|
-
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
24955
|
+
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiFileListLine, { size: 15 }),
|
|
24826
24956
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("span", { children: "Applications Registry" }),
|
|
24827
24957
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
24828
24958
|
"span",
|
|
@@ -24837,7 +24967,7 @@ function TrackApplicationMain() {
|
|
|
24837
24967
|
] }),
|
|
24838
24968
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsxs)("div", { className: "fc:flex fc:items-center fc:gap-2 fc:flex-1 lg:fc:max-w-md", children: [
|
|
24839
24969
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsxs)("div", { className: "fc:relative fc:flex-1", children: [
|
|
24840
|
-
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("span", { className: "fc:absolute fc:left-3 fc:top-1/2 fc:-translate-y-1/2 fc:text-slate-400", children: /* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
24970
|
+
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("span", { className: "fc:absolute fc:left-3 fc:top-1/2 fc:-translate-y-1/2 fc:text-slate-400", children: /* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiSearchLine, { size: 16 }) }),
|
|
24841
24971
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
24842
24972
|
"input",
|
|
24843
24973
|
{
|
|
@@ -24855,7 +24985,7 @@ function TrackApplicationMain() {
|
|
|
24855
24985
|
type: "button",
|
|
24856
24986
|
onClick: () => setTrackQuery(""),
|
|
24857
24987
|
className: "fc:absolute fc:right-2.5 fc:top-1/2 fc:-translate-y-1/2 fc:text-slate-400 hover:fc:text-slate-600",
|
|
24858
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
24988
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiCloseLine, { size: 14 })
|
|
24859
24989
|
}
|
|
24860
24990
|
)
|
|
24861
24991
|
] }),
|
|
@@ -24866,7 +24996,7 @@ function TrackApplicationMain() {
|
|
|
24866
24996
|
onClick: () => handleTrack(),
|
|
24867
24997
|
className: "fc:flex fc:items-center fc:gap-1.5 fc:px-4 fc:py-2 fc:bg-blue-600 hover:fc:bg-blue-700 fc:text-white fc:text-xs fc:font-bold fc:rounded-xl fc:shadow-sm fc:transition-all fc:shrink-0 fc:cursor-pointer disabled:fc:opacity-50",
|
|
24868
24998
|
children: [
|
|
24869
|
-
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
24999
|
+
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiRouteLine, { size: 14 }),
|
|
24870
25000
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("span", { children: "Track Now" })
|
|
24871
25001
|
]
|
|
24872
25002
|
}
|
|
@@ -24883,7 +25013,7 @@ function TrackApplicationMain() {
|
|
|
24883
25013
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsxs)("div", { className: "fc:flex fc:items-center fc:justify-between fc:gap-3 fc:flex-wrap", children: [
|
|
24884
25014
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsxs)("div", { className: "fc:flex fc:items-center fc:gap-2 fc:flex-wrap", children: [
|
|
24885
25015
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsxs)("div", { className: "fc:inline-flex fc:items-center fc:gap-1.5 fc:bg-blue-600 fc:text-white fc:text-xs fc:font-bold fc:px-3 fc:py-1 fc:rounded-lg fc:shadow-sm", children: [
|
|
24886
|
-
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
25016
|
+
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiRouteLine, { size: 13 }),
|
|
24887
25017
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsxs)("span", { children: [
|
|
24888
25018
|
"App No: ",
|
|
24889
25019
|
selectedApplication.fileNumber
|
|
@@ -24896,7 +25026,7 @@ function TrackApplicationMain() {
|
|
|
24896
25026
|
onClick: () => handleCopyFileNumber(selectedApplication.fileNumber),
|
|
24897
25027
|
title: "Copy Application Number",
|
|
24898
25028
|
className: "fc:text-blue-600 hover:fc:text-blue-800 fc:p-1 fc:rounded-md hover:fc:bg-blue-100/70 fc:transition-all",
|
|
24899
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
25029
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiFileCopyLine, { size: 14 })
|
|
24900
25030
|
}
|
|
24901
25031
|
),
|
|
24902
25032
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("span", { className: "fc:text-xs fc:font-bold fc:px-2.5 fc:py-0.5 fc:rounded-full fc:bg-white fc:border fc:border-slate-200 fc:text-slate-800", children: selectedApplication.workflowName }),
|
|
@@ -24922,7 +25052,7 @@ function TrackApplicationMain() {
|
|
|
24922
25052
|
onClick: () => setSlipModalOpen(true),
|
|
24923
25053
|
className: "fc:flex fc:items-center fc:gap-1.5 fc:px-3 fc:py-1.5 fc:bg-blue-600 hover:fc:bg-blue-700 fc:text-white fc:text-xs fc:font-bold fc:rounded-xl fc:shadow-sm fc:transition-all fc:shrink-0",
|
|
24924
25054
|
children: [
|
|
24925
|
-
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
25055
|
+
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiPrinterLine, { size: 13 }),
|
|
24926
25056
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("span", { children: "Print Tracking Slip" })
|
|
24927
25057
|
]
|
|
24928
25058
|
}
|
|
@@ -24932,17 +25062,17 @@ function TrackApplicationMain() {
|
|
|
24932
25062
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsxs)("div", { className: "fc:flex fc:items-center fc:justify-between fc:gap-3 fc:mt-2.5 fc:pt-2.5 fc:border-t fc:border-blue-100/70 fc:text-xs fc:text-slate-600 fc:flex-wrap", children: [
|
|
24933
25063
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsxs)("div", { className: "fc:flex fc:items-center fc:gap-4 fc:flex-wrap", children: [
|
|
24934
25064
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsxs)("span", { className: "fc:flex fc:items-center fc:gap-1", children: [
|
|
24935
|
-
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
25065
|
+
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiBuildingLine, { size: 13, className: "fc:text-slate-400" }),
|
|
24936
25066
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("span", { className: "fc:text-slate-400", children: "Dept:" }),
|
|
24937
25067
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("strong", { className: "fc:text-slate-700", children: selectedApplication.department })
|
|
24938
25068
|
] }),
|
|
24939
25069
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsxs)("span", { className: "fc:flex fc:items-center fc:gap-1", children: [
|
|
24940
|
-
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
25070
|
+
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiUserLine, { size: 13, className: "fc:text-slate-400" }),
|
|
24941
25071
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("span", { className: "fc:text-slate-400", children: "Applicant:" }),
|
|
24942
25072
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("strong", { className: "fc:text-slate-700", children: selectedApplication.applicant })
|
|
24943
25073
|
] }),
|
|
24944
25074
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsxs)("span", { className: "fc:flex fc:items-center fc:gap-1", children: [
|
|
24945
|
-
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
25075
|
+
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiTimeLine, { size: 13, className: "fc:text-slate-400" }),
|
|
24946
25076
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("span", { className: "fc:text-slate-400", children: "Submitted:" }),
|
|
24947
25077
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("strong", { className: "fc:text-slate-700", children: selectedApplication.receivedDate })
|
|
24948
25078
|
] })
|
|
@@ -25010,7 +25140,7 @@ function TrackApplicationMain() {
|
|
|
25010
25140
|
"span",
|
|
25011
25141
|
{
|
|
25012
25142
|
className: `fc:w-5 fc:h-5 fc:rounded-full fc:flex fc:items-center fc:justify-center fc:text-[10px] fc:font-extrabold fc:shrink-0 ${isCompleted ? "fc:bg-emerald-600 fc:text-white" : isInProgress ? "fc:bg-blue-600 fc:text-white" : "fc:bg-slate-200 fc:text-slate-600"}`,
|
|
25013
|
-
children: isCompleted ? /* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
25143
|
+
children: isCompleted ? /* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiCheckLine, { size: 12 }) : idx + 1
|
|
25014
25144
|
}
|
|
25015
25145
|
),
|
|
25016
25146
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
@@ -25060,7 +25190,7 @@ function TrackApplicationMain() {
|
|
|
25060
25190
|
onClick: () => setActiveTab("timeline"),
|
|
25061
25191
|
className: `fc:flex fc:items-center fc:gap-1.5 fc:px-3.5 fc:py-2 fc:text-xs fc:font-bold fc:border-b-2 fc:transition-all ${activeTab === "timeline" ? "fc:border-blue-600 fc:text-blue-600 fc:bg-white fc:rounded-t-lg" : "fc:border-transparent fc:text-slate-600 hover:fc:text-slate-900"}`,
|
|
25062
25192
|
children: [
|
|
25063
|
-
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
25193
|
+
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiRouteLine, { size: 14 }),
|
|
25064
25194
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("span", { children: "Movement History & Audit Trail" }),
|
|
25065
25195
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("span", { className: "fc:bg-slate-200 fc:text-slate-700 fc:px-1.5 fc:py-0.2 fc:rounded-full fc:text-[9px]", children: ((_b = selectedApplication.movementHistory) == null ? void 0 : _b.length) || 0 })
|
|
25066
25196
|
]
|
|
@@ -25073,7 +25203,7 @@ function TrackApplicationMain() {
|
|
|
25073
25203
|
onClick: () => setActiveTab("details"),
|
|
25074
25204
|
className: `fc:flex fc:items-center fc:gap-1.5 fc:px-3.5 fc:py-2 fc:text-xs fc:font-bold fc:border-b-2 fc:transition-all ${activeTab === "details" ? "fc:border-blue-600 fc:text-blue-600 fc:bg-white fc:rounded-t-lg" : "fc:border-transparent fc:text-slate-600 hover:fc:text-slate-900"}`,
|
|
25075
25205
|
children: [
|
|
25076
|
-
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
25206
|
+
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiFileListLine, { size: 14 }),
|
|
25077
25207
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("span", { children: "Application Full Attributes" })
|
|
25078
25208
|
]
|
|
25079
25209
|
}
|
|
@@ -25085,7 +25215,7 @@ function TrackApplicationMain() {
|
|
|
25085
25215
|
onClick: () => setActiveTab("documents"),
|
|
25086
25216
|
className: `fc:flex fc:items-center fc:gap-1.5 fc:px-3.5 fc:py-2 fc:text-xs fc:font-bold fc:border-b-2 fc:transition-all ${activeTab === "documents" ? "fc:border-blue-600 fc:text-blue-600 fc:bg-white fc:rounded-t-lg" : "fc:border-transparent fc:text-slate-600 hover:fc:text-slate-900"}`,
|
|
25087
25217
|
children: [
|
|
25088
|
-
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
25218
|
+
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiFileTextLine, { size: 14 }),
|
|
25089
25219
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("span", { children: "Uploaded Documents" }),
|
|
25090
25220
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("span", { className: "fc:bg-slate-200 fc:text-slate-700 fc:px-1.5 fc:py-0.2 fc:rounded-full fc:text-[9px]", children: ((_c = selectedApplication.documents) == null ? void 0 : _c.length) || 0 })
|
|
25091
25221
|
]
|
|
@@ -25190,7 +25320,7 @@ function TrackApplicationMain() {
|
|
|
25190
25320
|
] })
|
|
25191
25321
|
] }),
|
|
25192
25322
|
!selectedApplication && /* @__PURE__ */ (0, import_jsx_runtime116.jsxs)("div", { className: "fc:flex fc:min-h-72 fc:flex-col fc:items-center fc:justify-center fc:gap-2 fc:text-center", children: [
|
|
25193
|
-
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
25323
|
+
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiRouteLine, { size: 28, className: "fc:text-slate-300" }),
|
|
25194
25324
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("h2", { className: "fc:text-sm fc:font-bold fc:text-slate-700", children: "No tracking data available" }),
|
|
25195
25325
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("p", { className: "fc:max-w-md fc:text-xs fc:text-slate-500", children: "Configure the application tracking endpoint to load real application status and movement details." })
|
|
25196
25326
|
] })
|
|
@@ -25203,7 +25333,7 @@ function TrackApplicationMain() {
|
|
|
25203
25333
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsxs)("div", { className: "fc:flex fc:justify-between fc:items-center fc:gap-3 fc:pb-3 fc:border-b fc:border-slate-100 fc:flex-wrap", children: [
|
|
25204
25334
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsxs)("div", { className: "fc:flex fc:items-center fc:gap-2.5 fc:flex-1 fc:max-w-md", children: [
|
|
25205
25335
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsxs)("div", { className: "fc:relative fc:w-full", children: [
|
|
25206
|
-
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("span", { className: "fc:absolute fc:left-3 fc:top-1/2 fc:-translate-y-1/2 fc:text-slate-400", children: /* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
25336
|
+
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("span", { className: "fc:absolute fc:left-3 fc:top-1/2 fc:-translate-y-1/2 fc:text-slate-400", children: /* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiSearchLine, { size: 15 }) }),
|
|
25207
25337
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
25208
25338
|
"input",
|
|
25209
25339
|
{
|
|
@@ -25245,7 +25375,7 @@ function TrackApplicationMain() {
|
|
|
25245
25375
|
onClick: handleExportCSV,
|
|
25246
25376
|
className: "fc:flex fc:items-center fc:gap-1.5 fc:px-3 fc:py-1.5 fc:border fc:border-slate-200 fc:rounded-xl fc:text-xs fc:font-bold fc:text-slate-600 hover:fc:bg-slate-50 fc:transition-all",
|
|
25247
25377
|
children: [
|
|
25248
|
-
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
25378
|
+
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiDownload2Line, { size: 14 }),
|
|
25249
25379
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("span", { children: "Export CSV" })
|
|
25250
25380
|
]
|
|
25251
25381
|
}
|
|
@@ -25390,7 +25520,7 @@ function TrackApplicationMain() {
|
|
|
25390
25520
|
onClick: () => handleTrack(item.fileNumber),
|
|
25391
25521
|
className: "fc:inline-flex fc:items-center fc:gap-1 fc:px-3 fc:py-1 fc:bg-blue-600 hover:fc:bg-blue-700 fc:text-white fc:font-bold fc:text-xs fc:rounded-full fc:transition-all fc:shadow-sm",
|
|
25392
25522
|
children: [
|
|
25393
|
-
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(
|
|
25523
|
+
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_react137.RiRouteLine, { size: 13 }),
|
|
25394
25524
|
/* @__PURE__ */ (0, import_jsx_runtime116.jsx)("span", { children: "Track" })
|
|
25395
25525
|
]
|
|
25396
25526
|
}
|
|
@@ -25465,48 +25595,48 @@ function Sidebar({ isOpen, onToggle, childrens, sidebar, sidebarConfig }) {
|
|
|
25465
25595
|
const router = (0, import_router.useRouter)();
|
|
25466
25596
|
const resolvedSidebarConfig = sidebar != null ? sidebar : sidebarConfig;
|
|
25467
25597
|
const masterWorkflowItems = [
|
|
25468
|
-
{ name: "Workflow Type", component: "workflowType", icon:
|
|
25469
|
-
{ name: "Workflow", component: "workflow", icon:
|
|
25470
|
-
{ name: "Workflow Step", component: "workflowStep", icon:
|
|
25471
|
-
{ name: "Workflow Transition", component: "workflowTransition", icon:
|
|
25472
|
-
{ name: "Module", component: "module", icon:
|
|
25473
|
-
{ name: "Status", component: "status", icon:
|
|
25598
|
+
{ name: "Workflow Type", component: "workflowType", icon: import_react139.RiGitMergeLine, configKey: "isWorkflowType" },
|
|
25599
|
+
{ name: "Workflow", component: "workflow", icon: import_react139.RiNodeTree, configKey: "isWorkflow" },
|
|
25600
|
+
{ name: "Workflow Step", component: "workflowStep", icon: import_react139.RiGitBranchLine, configKey: "isWorkflowStep" },
|
|
25601
|
+
{ name: "Workflow Transition", component: "workflowTransition", icon: import_react139.RiCornerDownRightLine, configKey: "isWorkflowTransition" },
|
|
25602
|
+
{ name: "Module", component: "module", icon: import_react139.RiFolder3Line, configKey: "isModule" },
|
|
25603
|
+
{ name: "Status", component: "status", icon: import_react139.RiCheckboxCircleLine, configKey: "isStatus" }
|
|
25474
25604
|
];
|
|
25475
25605
|
const masterPermissionItems = [
|
|
25476
|
-
{ name: "Step Permission", component: "step_permission_main", icon:
|
|
25477
|
-
{ name: "Applicant Editable Fields", component: "FormFieldMain", icon:
|
|
25478
|
-
{ name: "Assignment Rule", component: "AssignmentRuleMain", icon:
|
|
25606
|
+
{ name: "Step Permission", component: "step_permission_main", icon: import_react139.RiUserSettingsLine, configKey: "isStepPermission" },
|
|
25607
|
+
{ name: "Applicant Editable Fields", component: "FormFieldMain", icon: import_react139.RiFileList3Line, configKey: "isFormField" },
|
|
25608
|
+
{ name: "Assignment Rule", component: "AssignmentRuleMain", icon: import_react139.RiFileShieldLine, configKey: "isAssignmentRule" }
|
|
25479
25609
|
];
|
|
25480
25610
|
const masterHierarchyItems = [
|
|
25481
|
-
{ name: "Hierarchy Node", component: "HierarchyNodeMain", icon:
|
|
25482
|
-
{ name: "Workflow Hierarchy Node Mapping", component: "Workflow_Step_Hierarchy_Mapping_Main", icon:
|
|
25483
|
-
{ name: "Workflow Step User Mapping", component: "User_hierarchy_mapping_main", icon:
|
|
25484
|
-
{ name: "Workflow Settings", component: "WorkflowSettingMain", icon:
|
|
25611
|
+
{ name: "Hierarchy Node", component: "HierarchyNodeMain", icon: import_react139.RiNodeTree, configKey: "isHierarchyNode" },
|
|
25612
|
+
{ name: "Workflow Hierarchy Node Mapping", component: "Workflow_Step_Hierarchy_Mapping_Main", icon: import_react139.RiUserSharedLine, configKey: "isWorkflowHierarchyMapping" },
|
|
25613
|
+
{ name: "Workflow Step User Mapping", component: "User_hierarchy_mapping_main", icon: import_react139.RiUserSharedLine, configKey: "isUserHierarchyMapping" },
|
|
25614
|
+
{ name: "Workflow Settings", component: "WorkflowSettingMain", icon: import_react139.RiSettings4Line, configKey: "isWorkflowSettings" }
|
|
25485
25615
|
];
|
|
25486
25616
|
const masterDocumentItems = [
|
|
25487
|
-
{ name: "Document Configuration", component: "DocumentConfigurationmain", icon:
|
|
25617
|
+
{ name: "Document Configuration", component: "DocumentConfigurationmain", icon: import_react139.RiFileSettingsLine, configKey: "isDocumentConfiguration" }
|
|
25488
25618
|
];
|
|
25489
25619
|
const masterFileItems = [
|
|
25490
25620
|
// { name: "Inbox", component: "InboxMain", icon: RiInboxLine, configKey: "isInbox", badge: 6 },
|
|
25491
|
-
{ name: "My Files", component: "MyFilesMain", icon:
|
|
25492
|
-
{ name: "Unclaimed Files", component: "UnclaimedFilesMain", icon:
|
|
25493
|
-
{ name: "Completed Files", component: "CompletedFilesMain", icon:
|
|
25494
|
-
{ name: "Business Entity", component: "BusinessEntitymain", icon:
|
|
25495
|
-
{ name: "File Instance", component: "FileInstanceMain", icon:
|
|
25496
|
-
{ name: "File Pool", component: "FilePoolMain", icon:
|
|
25497
|
-
{ name: "Uploaded Document", component: "UploadedDocumentMain", icon:
|
|
25621
|
+
{ name: "My Files", component: "MyFilesMain", icon: import_react139.RiUserReceivedLine, configKey: "isMyFiles" },
|
|
25622
|
+
{ name: "Unclaimed Files", component: "UnclaimedFilesMain", icon: import_react139.RiInboxArchiveLine, configKey: "isUnclaimedFiles" },
|
|
25623
|
+
{ name: "Completed Files", component: "CompletedFilesMain", icon: import_react139.RiFileUploadLine, configKey: "isCompletedFiles" },
|
|
25624
|
+
{ name: "Business Entity", component: "BusinessEntitymain", icon: import_react139.RiFileList3Line, configKey: "isBusinessEntity" },
|
|
25625
|
+
{ name: "File Instance", component: "FileInstanceMain", icon: import_react139.RiFileList3Line, configKey: "isFileInstance" },
|
|
25626
|
+
{ name: "File Pool", component: "FilePoolMain", icon: import_react139.RiDatabase2Line, configKey: "isFilePool" },
|
|
25627
|
+
{ name: "Uploaded Document", component: "UploadedDocumentMain", icon: import_react139.RiFileUploadLine, configKey: "isUploadedDocument" }
|
|
25498
25628
|
];
|
|
25499
25629
|
const masterCommunicationItems = [
|
|
25500
|
-
{ name: "Notification", component: "Notification_main", icon:
|
|
25501
|
-
{ name: "Comment", component: "Comment_main", icon:
|
|
25630
|
+
{ name: "Notification", component: "Notification_main", icon: import_react139.RiNotification4Line, configKey: "isNotification" },
|
|
25631
|
+
{ name: "Comment", component: "Comment_main", icon: import_react139.RiChat3Line, configKey: "isComment" }
|
|
25502
25632
|
];
|
|
25503
25633
|
const masterTaskItems = [
|
|
25504
|
-
{ name: "Task Instance", component: "TaskInstanceMain", icon:
|
|
25634
|
+
{ name: "Task Instance", component: "TaskInstanceMain", icon: import_react139.RiCheckboxMultipleLine, configKey: "isTaskInstance" }
|
|
25505
25635
|
];
|
|
25506
25636
|
const masterTrackingItems = [
|
|
25507
|
-
{ name: "Audit Log", component: "AuditLogmain", icon:
|
|
25508
|
-
{ name: "Movement History", component: "MovementHistorymain", icon:
|
|
25509
|
-
{ name: "Track Application", component: "TrackApplicationMain", icon:
|
|
25637
|
+
{ name: "Audit Log", component: "AuditLogmain", icon: import_react139.RiShieldCheckLine, configKey: "isAuditLog" },
|
|
25638
|
+
{ name: "Movement History", component: "MovementHistorymain", icon: import_react139.RiHistoryLine, configKey: "isMovementHistory" },
|
|
25639
|
+
{ name: "Track Application", component: "TrackApplicationMain", icon: import_react139.RiHistoryLine, configKey: "isTrackApplication" }
|
|
25510
25640
|
];
|
|
25511
25641
|
const getConfigObject = () => {
|
|
25512
25642
|
if (!resolvedSidebarConfig) return null;
|
|
@@ -25544,21 +25674,21 @@ function Sidebar({ isOpen, onToggle, childrens, sidebar, sidebarConfig }) {
|
|
|
25544
25674
|
...trackingItems,
|
|
25545
25675
|
...communicationItems
|
|
25546
25676
|
];
|
|
25547
|
-
const [activeComponent, setActiveComponent] = (0,
|
|
25677
|
+
const [activeComponent, setActiveComponent] = (0, import_react138.useState)(() => {
|
|
25548
25678
|
const all = getAllAvailableItems();
|
|
25549
25679
|
const inboxItem = all.find((item) => item.component === "InboxMain");
|
|
25550
25680
|
if (inboxItem) return "InboxMain";
|
|
25551
25681
|
return all.length > 0 ? all[0].component : null;
|
|
25552
25682
|
});
|
|
25553
|
-
const [workflowOpen, setWorkflowOpen] = (0,
|
|
25554
|
-
const [permissionOpen, setPermissionOpen] = (0,
|
|
25555
|
-
const [hierarchyOpen, setHierarchyOpen] = (0,
|
|
25556
|
-
const [documentOpen, setDocumentOpen] = (0,
|
|
25557
|
-
const [filesOpen, setFilesOpen] = (0,
|
|
25558
|
-
const [tasksOpen, setTasksOpen] = (0,
|
|
25559
|
-
const [trackingOpen, setTrackingOpen] = (0,
|
|
25560
|
-
const [communicationOpen, setCommunicationOpen] = (0,
|
|
25561
|
-
(0,
|
|
25683
|
+
const [workflowOpen, setWorkflowOpen] = (0, import_react138.useState)(false);
|
|
25684
|
+
const [permissionOpen, setPermissionOpen] = (0, import_react138.useState)(false);
|
|
25685
|
+
const [hierarchyOpen, setHierarchyOpen] = (0, import_react138.useState)(false);
|
|
25686
|
+
const [documentOpen, setDocumentOpen] = (0, import_react138.useState)(false);
|
|
25687
|
+
const [filesOpen, setFilesOpen] = (0, import_react138.useState)(true);
|
|
25688
|
+
const [tasksOpen, setTasksOpen] = (0, import_react138.useState)(false);
|
|
25689
|
+
const [trackingOpen, setTrackingOpen] = (0, import_react138.useState)(false);
|
|
25690
|
+
const [communicationOpen, setCommunicationOpen] = (0, import_react138.useState)(false);
|
|
25691
|
+
(0, import_react138.useEffect)(() => {
|
|
25562
25692
|
if (workflowItems.some((item) => item.component === activeComponent)) {
|
|
25563
25693
|
setWorkflowOpen(true);
|
|
25564
25694
|
} else if (permissionItems.some((item) => item.component === activeComponent)) {
|
|
@@ -25617,7 +25747,7 @@ function Sidebar({ isOpen, onToggle, childrens, sidebar, sidebarConfig }) {
|
|
|
25617
25747
|
const renderContent = () => {
|
|
25618
25748
|
if (!hasAnyAccess) {
|
|
25619
25749
|
return /* @__PURE__ */ (0, import_jsx_runtime117.jsxs)("div", { className: "fc:flex fc:flex-col fc:items-center fc:justify-center fc:h-full fc:p-6 fc:text-center", children: [
|
|
25620
|
-
/* @__PURE__ */ (0, import_jsx_runtime117.jsx)("div", { className: "fc:bg-red-50 fc:text-red-500 fc:p-4 fc:rounded-full fc:mb-4", children: /* @__PURE__ */ (0, import_jsx_runtime117.jsx)(
|
|
25750
|
+
/* @__PURE__ */ (0, import_jsx_runtime117.jsx)("div", { className: "fc:bg-red-50 fc:text-red-500 fc:p-4 fc:rounded-full fc:mb-4", children: /* @__PURE__ */ (0, import_jsx_runtime117.jsx)(import_react139.RiLockPasswordLine, { size: 32 }) }),
|
|
25621
25751
|
/* @__PURE__ */ (0, import_jsx_runtime117.jsx)("h2", { className: "fc:text-lg fc:font-bold fc:text-[#101318] fc:mb-1", children: "Access Restricted" }),
|
|
25622
25752
|
/* @__PURE__ */ (0, import_jsx_runtime117.jsx)("p", { className: "fc:text-sm fc:text-[#64748B] fc:max-w-md", children: "You do not have permission to access any modules or workflow sections. Please contact your administrator for access rights." })
|
|
25623
25753
|
] });
|
|
@@ -25717,7 +25847,7 @@ function Sidebar({ isOpen, onToggle, childrens, sidebar, sidebarConfig }) {
|
|
|
25717
25847
|
"span",
|
|
25718
25848
|
{
|
|
25719
25849
|
className: `fc:text-[#7E8B9E] text-[#7E8B9E] fc:shrink-0 shrink-0 fc:ml-2 ml-2 fc:transition-transform transition-transform fc:duration-200 duration-200 ${open ? "fc:rotate-90 rotate-90 fc:text-[#344261] text-[#344261]" : "rotate-0"}`,
|
|
25720
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime117.jsx)(
|
|
25850
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime117.jsx)(import_react139.RiArrowRightSLine, { size: 18 })
|
|
25721
25851
|
}
|
|
25722
25852
|
)
|
|
25723
25853
|
]
|
|
@@ -25748,7 +25878,7 @@ function Sidebar({ isOpen, onToggle, childrens, sidebar, sidebarConfig }) {
|
|
|
25748
25878
|
};
|
|
25749
25879
|
if (configObj && !hasSidebarAccess) {
|
|
25750
25880
|
return /* @__PURE__ */ (0, import_jsx_runtime117.jsx)("div", { className: "fc:flex fc:min-h-screen fc:w-full fc:items-center fc:justify-center fc:bg-[#F5F7FB] fc:p-6", children: /* @__PURE__ */ (0, import_jsx_runtime117.jsxs)("div", { className: "fc:max-w-md fc:rounded-2xl fc:border fc:border-red-200 fc:bg-red-50 fc:p-6 fc:text-center fc:shadow-sm", children: [
|
|
25751
|
-
/* @__PURE__ */ (0, import_jsx_runtime117.jsx)("div", { className: "fc:mb-4 fc:flex fc:justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime117.jsx)("div", { className: "fc:flex fc:h-14 fc:w-14 fc:items-center fc:justify-center fc:rounded-full fc:bg-red-100 fc:text-red-500", children: /* @__PURE__ */ (0, import_jsx_runtime117.jsx)(
|
|
25881
|
+
/* @__PURE__ */ (0, import_jsx_runtime117.jsx)("div", { className: "fc:mb-4 fc:flex fc:justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime117.jsx)("div", { className: "fc:flex fc:h-14 fc:w-14 fc:items-center fc:justify-center fc:rounded-full fc:bg-red-100 fc:text-red-500", children: /* @__PURE__ */ (0, import_jsx_runtime117.jsx)(import_react139.RiLockPasswordLine, { size: 28 }) }) }),
|
|
25752
25882
|
/* @__PURE__ */ (0, import_jsx_runtime117.jsx)("h2", { className: "fc:mb-2 fc:text-lg fc:font-bold fc:text-red-600", children: "Access Restricted" }),
|
|
25753
25883
|
/* @__PURE__ */ (0, import_jsx_runtime117.jsx)("p", { className: "fc:text-sm fc:text-[#405170]", children: "You do not have permission to access FlowCore. Please contact your administrator." })
|
|
25754
25884
|
] }) });
|
|
@@ -25785,7 +25915,7 @@ function Sidebar({ isOpen, onToggle, childrens, sidebar, sidebarConfig }) {
|
|
|
25785
25915
|
type: "button",
|
|
25786
25916
|
onClick: onToggle,
|
|
25787
25917
|
className: "fc:flex flex fc:h-8 h-8 fc:w-8 w-8 fc:items-center items-center fc:justify-center justify-center fc:rounded-lg rounded-lg hover:fc:bg-gray-100 hover:bg-gray-100 fc:transition-colors transition-colors",
|
|
25788
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime117.jsx)(
|
|
25918
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime117.jsx)(import_react139.RiMenuLine, { size: 18 })
|
|
25789
25919
|
}
|
|
25790
25920
|
)
|
|
25791
25921
|
] }),
|
|
@@ -25793,19 +25923,19 @@ function Sidebar({ isOpen, onToggle, childrens, sidebar, sidebarConfig }) {
|
|
|
25793
25923
|
(workflowItems.length > 0 || permissionItems.length > 0 || hierarchyItems.length > 0 || documentItems.length > 0) && /* @__PURE__ */ (0, import_jsx_runtime117.jsxs)(import_jsx_runtime117.Fragment, { children: [
|
|
25794
25924
|
/* @__PURE__ */ (0, import_jsx_runtime117.jsx)("p", { className: "fc:mb-[10px] mb-[10px] fc:px-[10px] px-[10px] fc:text-[12px] text-[12px] fc:font-bold font-bold fc:uppercase uppercase fc:leading-[16px] leading-[16px] fc:tracking-[0.5px] tracking-[0.5px] fc:text-[#3C4D74] text-[#3C4D74]", children: "Configuration Masters" }),
|
|
25795
25925
|
/* @__PURE__ */ (0, import_jsx_runtime117.jsxs)("div", { className: "fc:flex flex fc:flex-col flex-col fc:gap-[2px] gap-[2px]", children: [
|
|
25796
|
-
renderDropdown("Workflow", workflowOpen, setWorkflowOpen, workflowItems,
|
|
25797
|
-
renderDropdown("Permissions", permissionOpen, setPermissionOpen, permissionItems,
|
|
25798
|
-
renderDropdown("Documents", documentOpen, setDocumentOpen, documentItems,
|
|
25799
|
-
renderDropdown("Hierarchy", hierarchyOpen, setHierarchyOpen, hierarchyItems,
|
|
25926
|
+
renderDropdown("Workflow", workflowOpen, setWorkflowOpen, workflowItems, import_react139.RiNodeTree),
|
|
25927
|
+
renderDropdown("Permissions", permissionOpen, setPermissionOpen, permissionItems, import_react139.RiShieldUserLine),
|
|
25928
|
+
renderDropdown("Documents", documentOpen, setDocumentOpen, documentItems, import_react139.RiFileSettingsLine),
|
|
25929
|
+
renderDropdown("Hierarchy", hierarchyOpen, setHierarchyOpen, hierarchyItems, import_react139.RiNodeTree)
|
|
25800
25930
|
] })
|
|
25801
25931
|
] }),
|
|
25802
25932
|
(fileItems.length > 0 || taskItems.length > 0 || trackingItems.length > 0 || communicationItems.length > 0) && /* @__PURE__ */ (0, import_jsx_runtime117.jsxs)(import_jsx_runtime117.Fragment, { children: [
|
|
25803
25933
|
/* @__PURE__ */ (0, import_jsx_runtime117.jsx)("p", { className: "fc:mb-[10px] mb-[10px] fc:px-[10px] px-[10px] fc:mt-[24px] mt-[24px] fc:text-[12px] text-[12px] fc:font-bold font-bold fc:uppercase uppercase fc:leading-[16px] leading-[16px] fc:tracking-[0.5px] tracking-[0.5px] fc:text-[#3C4D74] text-[#3C4D74]", children: "Runtime" }),
|
|
25804
25934
|
/* @__PURE__ */ (0, import_jsx_runtime117.jsxs)("div", { className: "fc:flex flex fc:flex-col flex-col fc:gap-[2px] gap-[2px]", children: [
|
|
25805
|
-
renderDropdown("Files", filesOpen, setFilesOpen, fileItems,
|
|
25806
|
-
renderDropdown("Tasks", tasksOpen, setTasksOpen, taskItems,
|
|
25807
|
-
renderDropdown("Tracking", trackingOpen, setTrackingOpen, trackingItems,
|
|
25808
|
-
renderDropdown("Communication", communicationOpen, setCommunicationOpen, communicationItems,
|
|
25935
|
+
renderDropdown("Files", filesOpen, setFilesOpen, fileItems, import_react139.RiFolder3Line),
|
|
25936
|
+
renderDropdown("Tasks", tasksOpen, setTasksOpen, taskItems, import_react139.RiCheckboxCircleLine),
|
|
25937
|
+
renderDropdown("Tracking", trackingOpen, setTrackingOpen, trackingItems, import_react139.RiRouteLine),
|
|
25938
|
+
renderDropdown("Communication", communicationOpen, setCommunicationOpen, communicationItems, import_react139.RiMessage2Line)
|
|
25809
25939
|
] })
|
|
25810
25940
|
] })
|
|
25811
25941
|
] }),
|
|
@@ -25815,7 +25945,7 @@ function Sidebar({ isOpen, onToggle, childrens, sidebar, sidebarConfig }) {
|
|
|
25815
25945
|
type: "button",
|
|
25816
25946
|
className: "fc:flex flex fc:h-[50px] h-[50px] fc:w-full w-full fc:items-center items-center fc:gap-[12px] gap-[12px] fc:rounded-[10px] rounded-[10px] fc:border border fc:border-[#E1E5ED] border-[#E1E5ED] fc:bg-white bg-white fc:px-[14px] px-[14px] fc:text-left text-left fc:text-[15px] text-[15px] fc:font-semibold font-semibold fc:text-[#2D3A58] text-[#2D3A58] fc:shadow-sm shadow-sm hover:fc:bg-[#F7F8FC] hover:bg-[#F7F8FC] fc:transition transition",
|
|
25817
25947
|
children: [
|
|
25818
|
-
/* @__PURE__ */ (0, import_jsx_runtime117.jsx)(
|
|
25948
|
+
/* @__PURE__ */ (0, import_jsx_runtime117.jsx)(import_react139.RiSettings4Line, { size: 20 }),
|
|
25819
25949
|
/* @__PURE__ */ (0, import_jsx_runtime117.jsx)("span", { children: "Settings" })
|
|
25820
25950
|
]
|
|
25821
25951
|
}
|
|
@@ -25838,17 +25968,17 @@ function Sidebar({ isOpen, onToggle, childrens, sidebar, sidebarConfig }) {
|
|
|
25838
25968
|
onClick: onToggle,
|
|
25839
25969
|
"aria-label": "Open sidebar",
|
|
25840
25970
|
className: "fc:fixed fixed fc:left-[16px] left-[16px] fc:top-[30px] top-[30px] fc:z-[100] z-[100] fc:flex flex fc:h-[46px] h-[46px] fc:w-[46px] w-[46px] fc:items-center items-center fc:justify-center justify-center fc:rounded-[9px] rounded-[9px] fc:border border fc:border-[#E1E5ED] border-[#E1E5ED] fc:bg-white bg-white fc:text-[#344261] text-[#344261] fc:shadow-[0_2px_8px_rgba(0,0,0,0.08)] shadow-[0_2px_8px_rgba(0,0,0,0.08)] fc:transition-colors transition-colors hover:fc:bg-gray-100 hover:bg-gray-100",
|
|
25841
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime117.jsx)(
|
|
25971
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime117.jsx)(import_react139.RiMenuLine, { size: 18 })
|
|
25842
25972
|
}
|
|
25843
25973
|
)
|
|
25844
25974
|
] });
|
|
25845
25975
|
}
|
|
25846
25976
|
|
|
25847
25977
|
// src/components/Layout.jsx
|
|
25848
|
-
var
|
|
25978
|
+
var import_react140 = require("react");
|
|
25849
25979
|
var import_jsx_runtime118 = require("react/jsx-runtime");
|
|
25850
25980
|
var Layout = ({ children, sidebar, sidebarConfig }) => {
|
|
25851
|
-
const [isOpen, setIsOpen] = (0,
|
|
25981
|
+
const [isOpen, setIsOpen] = (0, import_react140.useState)(true);
|
|
25852
25982
|
const resolvedSidebarConfig = sidebar != null ? sidebar : sidebarConfig;
|
|
25853
25983
|
return /* @__PURE__ */ (0, import_jsx_runtime118.jsx)(
|
|
25854
25984
|
"div",
|