flowcore-fn 2.9.5 → 3.0.0

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.
@@ -460,11 +460,8 @@ function WorkflowPage() {
460
460
  return /* @__PURE__ */ jsx4(WorkflowStep, {});
461
461
  }
462
462
 
463
- // src/components/Layout.jsx
464
- import { useState as useState9 } from "react";
465
-
466
463
  // src/components/Sidebar.jsx
467
- import { useEffect as useEffect2, useState as useState8 } from "react";
464
+ import { useState as useState8 } from "react";
468
465
  import {
469
466
  RiMenuLine,
470
467
  RiGitMergeLine,
@@ -1054,32 +1051,172 @@ function WorkflowMasterMain() {
1054
1051
  ] });
1055
1052
  }
1056
1053
 
1057
- // src/components/WorkFlowTransition/Transitiontable.js
1058
- import React6, { useState as useState5 } from "react";
1059
- import Link3 from "next/link";
1054
+ // src/components/WorkflowType/WorkflowTypeMains.js
1055
+ import React8, { useState as useState5 } from "react";
1060
1056
 
1061
- // src/components/WorkFlowTransition/AddWorkFlowTransitionModal.js
1057
+ // src/components/WorkflowType/SearchBar.jsx
1062
1058
  import React4 from "react";
1063
1059
  import { jsx as jsx7, jsxs as jsxs6 } from "react/jsx-runtime";
1064
- function AddWorkTransitionStepModal({ onClose }) {
1065
- return /* @__PURE__ */ jsxs6("div", { className: "fixed inset-0 z-50 flex items-center justify-center p-4", children: [
1060
+ function SearchBar() {
1061
+ return /* @__PURE__ */ jsxs6("div", { className: "relative max-w-sm w-full", children: [
1062
+ /* @__PURE__ */ jsx7("span", { className: "absolute inset-y-0 left-0 flex items-center pl-3.5 pointer-events-none", children: /* @__PURE__ */ jsx7("svg", { className: "w-4.5 h-4.5 text-slate-400", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx7("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2", d: "M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z" }) }) }),
1066
1063
  /* @__PURE__ */ jsx7(
1064
+ "input",
1065
+ {
1066
+ type: "text",
1067
+ placeholder: "Search workflow name or code...",
1068
+ className: "w-full pl-10 pr-4 py-2.5 border border-slate-200 rounded-xl text-sm bg-slate-50/50 focus:outline-none focus:ring-4 focus:ring-blue-500/10 focus:border-blue-500 text-slate-700 placeholder-slate-400 transition-all shadow-sm"
1069
+ }
1070
+ )
1071
+ ] });
1072
+ }
1073
+
1074
+ // src/components/WorkflowType/WorkflowTypeTable.jsx
1075
+ import React5, { useState as useState4 } from "react";
1076
+ import { jsx as jsx8, jsxs as jsxs7 } from "react/jsx-runtime";
1077
+ function WorkflowTypeTable({ pageSize }) {
1078
+ const initialData = [
1079
+ { id: "1", name: "Citizen Petition Workflow", code: "PET-001", type: "Petition", version: "1", published: true, status: true },
1080
+ { id: "2", name: "Building Permission Workflow", code: "BLD-001", type: "Building Permission", version: "1", published: true, status: true },
1081
+ { id: "3", name: "Leave Application Workflow", code: "LEV-001", type: "Leave", version: "1", published: false, status: true },
1082
+ { id: "4", name: "Grievance Redressal Workflow", code: "GRV-001", type: "Grievance", version: "2", published: true, status: true },
1083
+ { id: "5", name: "Trade License Workflow", code: "TRD-001", type: "Trade License", version: "1", published: true, status: true },
1084
+ { id: "6", name: "Document Verification", code: "DOC-001", type: "Verification", version: "1", published: true, status: true }
1085
+ ];
1086
+ const [data, setData] = useState4(initialData);
1087
+ const [sortOrder, setSortOrder] = useState4("asc");
1088
+ const [currentPage, setCurrentPage] = useState4(1);
1089
+ const totalPages = Math.ceil(data.length / pageSize) || 1;
1090
+ const startIndex = (currentPage - 1) * pageSize;
1091
+ const visibleData = data.slice(startIndex, startIndex + pageSize);
1092
+ const handleSort = (columnKey) => {
1093
+ const isAsc = sortOrder === "asc";
1094
+ setSortOrder(isAsc ? "desc" : "asc");
1095
+ const sortedData = [...data].sort((a, b) => {
1096
+ if (a[columnKey] < b[columnKey]) return isAsc ? -1 : 1;
1097
+ if (a[columnKey] > b[columnKey]) return isAsc ? 1 : -1;
1098
+ return 0;
1099
+ });
1100
+ setData(sortedData);
1101
+ };
1102
+ const toggleSwitch = (id) => {
1103
+ const updatedData = data.map(
1104
+ (item) => item.id === id ? __spreadProps(__spreadValues({}, item), { status: !item.status }) : item
1105
+ );
1106
+ setData(updatedData);
1107
+ };
1108
+ return /* @__PURE__ */ jsxs7("div", { className: "space-y-5", children: [
1109
+ /* @__PURE__ */ jsx8("div", { className: "w-full overflow-x-auto border border-slate-200 rounded-2xl shadow-sm", children: /* @__PURE__ */ jsxs7("table", { className: "w-full text-left border-collapse bg-white", children: [
1110
+ /* @__PURE__ */ jsx8("thead", { children: /* @__PURE__ */ jsxs7("tr", { className: "bg-slate-50/70 border-b border-slate-200 text-xs font-bold uppercase tracking-wider text-slate-500", children: [
1111
+ /* @__PURE__ */ jsx8("th", { className: "py-4.5 px-5 w-20 text-center", children: "S.No" }),
1112
+ /* @__PURE__ */ jsxs7("th", { onClick: () => handleSort("name"), className: "py-4.5 px-5 text-sm cursor-pointer select-none hover:text-slate-900", children: [
1113
+ "Workflow Name ",
1114
+ sortOrder === "asc" ? "\u25B2" : "\u25BC"
1115
+ ] }),
1116
+ /* @__PURE__ */ jsxs7("th", { onClick: () => handleSort("code"), className: "py-4.5 px-5 cursor-pointer select-none hover:text-slate-900", children: [
1117
+ "Workflow Code ",
1118
+ sortOrder === "asc" ? "\u25B2" : "\u25BC"
1119
+ ] }),
1120
+ /* @__PURE__ */ jsxs7("th", { onClick: () => handleSort("type"), className: "py-4.5 px-5 cursor-pointer select-none hover:text-slate-900", children: [
1121
+ "Workflow Type ",
1122
+ sortOrder === "asc" ? "\u25B2" : "\u25BC"
1123
+ ] }),
1124
+ /* @__PURE__ */ jsx8("th", { className: "py-4.5 px-5 text-center", children: "Version" }),
1125
+ /* @__PURE__ */ jsx8("th", { className: "py-4.5 px-5 text-center", children: "Published" }),
1126
+ /* @__PURE__ */ jsx8("th", { className: "py-4.5 px-5 text-center", children: "Status" })
1127
+ ] }) }),
1128
+ /* @__PURE__ */ jsx8("tbody", { className: "divide-y divide-slate-100 text-sm text-slate-600", children: visibleData.map((item, index) => /* @__PURE__ */ jsxs7("tr", { className: "hover:bg-slate-50/50 transition-colors", children: [
1129
+ /* @__PURE__ */ jsx8("td", { className: "py-4 px-5 text-center font-medium text-slate-400", children: startIndex + index + 1 }),
1130
+ /* @__PURE__ */ jsx8("td", { className: "py-4 px-5 font-bold text-slate-900 text-[14px]", children: item.name }),
1131
+ /* @__PURE__ */ jsx8("td", { className: "py-4 px-5 text-slate-500", children: item.code }),
1132
+ /* @__PURE__ */ jsx8("td", { className: "py-4 px-5 text-slate-500", children: item.type }),
1133
+ /* @__PURE__ */ jsx8("td", { className: "py-4 px-5 text-center font-semibold text-slate-700", children: item.version }),
1134
+ /* @__PURE__ */ jsx8("td", { className: "py-4 px-5 text-center", children: /* @__PURE__ */ jsx8("span", { className: `px-2.5 py-1 rounded-md text-xs font-medium ${item.published ? "bg-green-50 text-green-700 border border-green-200" : "bg-red-50 text-red-700 border border-red-200"}`, children: item.published ? "\u2713 Yes" : "\u2715 No" }) }),
1135
+ /* @__PURE__ */ jsx8("td", { className: "py-4 px-5 text-center", children: /* @__PURE__ */ jsx8("div", { className: "flex justify-center items-center", children: /* @__PURE__ */ jsx8(
1136
+ "button",
1137
+ {
1138
+ type: "button",
1139
+ onClick: () => toggleSwitch(item.id),
1140
+ className: `relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out outline-none ${item.status ? "bg-blue-600" : "bg-slate-200"}`,
1141
+ children: /* @__PURE__ */ jsx8(
1142
+ "span",
1143
+ {
1144
+ className: `pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out ${item.status ? "translate-x-5" : "translate-x-0"}`
1145
+ }
1146
+ )
1147
+ }
1148
+ ) }) })
1149
+ ] }, item.id)) })
1150
+ ] }) }),
1151
+ /* @__PURE__ */ jsxs7("div", { className: "flex items-center justify-end gap-1 text-[13px] text-slate-700 font-normal mt-4 bg-slate-50/50 p-3 rounded-xl border border-slate-100", children: [
1152
+ /* @__PURE__ */ jsx8(
1153
+ "button",
1154
+ {
1155
+ onClick: () => setCurrentPage(1),
1156
+ className: "px-2.5 py-1 text-slate-500 hover:text-slate-900 transition-colors",
1157
+ children: "First"
1158
+ }
1159
+ ),
1160
+ /* @__PURE__ */ jsx8(
1161
+ "button",
1162
+ {
1163
+ onClick: () => setCurrentPage((prev) => Math.max(prev - 1, 1)),
1164
+ className: "px-2.5 py-1 text-slate-500 hover:text-slate-900 transition-colors mr-2",
1165
+ children: "\u2039 Prev"
1166
+ }
1167
+ ),
1168
+ [1, 2, 3, 4].map((pageNumber) => /* @__PURE__ */ jsx8(
1169
+ "button",
1170
+ {
1171
+ onClick: () => setCurrentPage(pageNumber),
1172
+ className: `px-3 py-1 text-center rounded transition-all min-w-[28px] ${currentPage === pageNumber ? "bg-blue-600 text-white font-medium shadow-sm" : "text-slate-600 hover:bg-slate-100"}`,
1173
+ children: pageNumber
1174
+ },
1175
+ pageNumber
1176
+ )),
1177
+ /* @__PURE__ */ jsx8(
1178
+ "button",
1179
+ {
1180
+ onClick: () => setCurrentPage((prev) => Math.min(prev + 1, 7)),
1181
+ className: "px-2.5 py-1 text-slate-500 hover:text-slate-900 transition-colors ml-2",
1182
+ children: "Next \u203A"
1183
+ }
1184
+ ),
1185
+ /* @__PURE__ */ jsx8(
1186
+ "button",
1187
+ {
1188
+ onClick: () => setCurrentPage(7),
1189
+ className: "px-2.5 py-1 text-slate-500 hover:text-slate-900 transition-colors",
1190
+ children: "Last"
1191
+ }
1192
+ )
1193
+ ] })
1194
+ ] });
1195
+ }
1196
+
1197
+ // src/components/WorkflowType/AddWorkflowTypeModal.jsx
1198
+ import React6 from "react";
1199
+ import { jsx as jsx9, jsxs as jsxs8 } from "react/jsx-runtime";
1200
+ function AddWorkflowTypeModal({ isOpen, onClose }) {
1201
+ if (!isOpen) return null;
1202
+ return /* @__PURE__ */ jsxs8("div", { className: "fixed inset-0 z-50 flex items-center justify-center p-4", children: [
1203
+ /* @__PURE__ */ jsx9(
1067
1204
  "div",
1068
1205
  {
1069
1206
  className: "fixed inset-0 bg-slate-900/50 backdrop-blur-sm transition-opacity duration-200",
1070
1207
  onClick: onClose
1071
1208
  }
1072
1209
  ),
1073
- /* @__PURE__ */ jsxs6("div", { className: "relative w-full max-w-4xl bg-white rounded-3xl shadow-2xl flex flex-col z-10 max-h-[92vh] overflow-hidden animate-in fade-in zoom-in-95 duration-200", children: [
1074
- /* @__PURE__ */ jsxs6("div", { className: "flex justify-between items-center px-8 py-6 border-b border-slate-100", children: [
1075
- /* @__PURE__ */ jsxs6("div", { className: "flex items-center gap-4", children: [
1076
- /* @__PURE__ */ jsx7("div", { className: "w-12 h-12 bg-indigo-50 text-indigo-600 rounded-xl flex items-center justify-center shadow-sm", children: /* @__PURE__ */ jsx7("svg", { className: "w-6 h-6", fill: "none", stroke: "currentColor", strokeWidth: "2", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx7("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10" }) }) }),
1077
- /* @__PURE__ */ jsxs6("div", { children: [
1078
- /* @__PURE__ */ jsx7("h2", { className: "text-xl font-extrabold text-slate-800", children: "Add Workflow" }),
1079
- /* @__PURE__ */ jsx7("p", { className: "text-xs text-slate-400 mt-0.5", children: "Create a new workflow and configure its details" })
1210
+ /* @__PURE__ */ jsxs8("div", { className: "relative w-full max-w-4xl bg-white rounded-3xl shadow-2xl flex flex-col z-10 max-h-[92vh] overflow-hidden animate-in fade-in zoom-in-95 duration-200", children: [
1211
+ /* @__PURE__ */ jsxs8("div", { className: "flex justify-between items-center px-8 py-6 border-b border-slate-100", children: [
1212
+ /* @__PURE__ */ jsxs8("div", { className: "flex items-center gap-4", children: [
1213
+ /* @__PURE__ */ jsx9("div", { className: "w-12 h-12 bg-indigo-50 text-indigo-600 rounded-xl flex items-center justify-center shadow-sm", children: /* @__PURE__ */ jsx9("svg", { className: "w-6 h-6", fill: "none", stroke: "currentColor", strokeWidth: "2", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx9("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10" }) }) }),
1214
+ /* @__PURE__ */ jsxs8("div", { children: [
1215
+ /* @__PURE__ */ jsx9("h2", { className: "text-xl font-extrabold text-slate-800", children: "Add Workflow" }),
1216
+ /* @__PURE__ */ jsx9("p", { className: "text-xs text-slate-400 mt-0.5", children: "Create a new workflow and configure its details" })
1080
1217
  ] })
1081
1218
  ] }),
1082
- /* @__PURE__ */ jsx7(
1219
+ /* @__PURE__ */ jsx9(
1083
1220
  "button",
1084
1221
  {
1085
1222
  onClick: onClose,
@@ -1088,32 +1225,32 @@ function AddWorkTransitionStepModal({ onClose }) {
1088
1225
  }
1089
1226
  )
1090
1227
  ] }),
1091
- /* @__PURE__ */ jsxs6("div", { className: "p-8 space-y-8 overflow-y-auto max-h-[calc(92vh-170px)] bg-slate-50/30", children: [
1092
- /* @__PURE__ */ jsxs6("div", { className: "bg-white p-6 rounded-2xl border border-slate-100/80 shadow-sm space-y-5", children: [
1093
- /* @__PURE__ */ jsxs6("div", { className: "flex items-center gap-2 text-indigo-600 text-sm font-bold border-b border-slate-50 pb-3", children: [
1094
- /* @__PURE__ */ jsx7("span", { children: "\u{1F4CB}" }),
1095
- /* @__PURE__ */ jsx7("span", { children: "Workflow Information" })
1228
+ /* @__PURE__ */ jsxs8("div", { className: "p-8 space-y-8 overflow-y-auto max-h-[calc(92vh-170px)] bg-slate-50/30", children: [
1229
+ /* @__PURE__ */ jsxs8("div", { className: "bg-white p-6 rounded-2xl border border-slate-100/80 shadow-sm space-y-5", children: [
1230
+ /* @__PURE__ */ jsxs8("div", { className: "flex items-center gap-2 text-indigo-600 text-sm font-bold border-b border-slate-50 pb-3", children: [
1231
+ /* @__PURE__ */ jsx9("span", { children: "\u{1F4CB}" }),
1232
+ /* @__PURE__ */ jsx9("span", { children: "Workflow Information" })
1096
1233
  ] }),
1097
- /* @__PURE__ */ jsxs6("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-5", children: [
1098
- /* @__PURE__ */ jsxs6("div", { children: [
1099
- /* @__PURE__ */ jsxs6("label", { className: "block text-xs font-bold text-slate-700 mb-1.5", children: [
1100
- "Workflow Transition",
1101
- /* @__PURE__ */ jsx7("span", { className: "text-red-500", children: "*" })
1234
+ /* @__PURE__ */ jsxs8("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-5", children: [
1235
+ /* @__PURE__ */ jsxs8("div", { children: [
1236
+ /* @__PURE__ */ jsxs8("label", { className: "block text-xs font-bold text-slate-700 mb-1.5", children: [
1237
+ "Workflow Type ",
1238
+ /* @__PURE__ */ jsx9("span", { className: "text-red-500", children: "*" })
1102
1239
  ] }),
1103
- /* @__PURE__ */ jsxs6("select", { className: "w-full p-2.5 border border-slate-200 rounded-xl text-xs bg-white text-slate-700 focus:outline-none focus:ring-2 focus:ring-indigo-500/10 focus:border-indigo-500", children: [
1104
- /* @__PURE__ */ jsx7("option", { value: "", children: "Select workflow type" }),
1105
- /* @__PURE__ */ jsx7("option", { value: "petition", children: "Petition" }),
1106
- /* @__PURE__ */ jsx7("option", { value: "building", children: "Building Permission" }),
1107
- /* @__PURE__ */ jsx7("option", { value: "leave", children: "Leave" })
1240
+ /* @__PURE__ */ jsxs8("select", { className: "w-full p-2.5 border border-slate-200 rounded-xl text-xs bg-white text-slate-700 focus:outline-none focus:ring-2 focus:ring-indigo-500/10 focus:border-indigo-500", children: [
1241
+ /* @__PURE__ */ jsx9("option", { value: "", children: "Select workflow type" }),
1242
+ /* @__PURE__ */ jsx9("option", { value: "petition", children: "Petition" }),
1243
+ /* @__PURE__ */ jsx9("option", { value: "building", children: "Building Permission" }),
1244
+ /* @__PURE__ */ jsx9("option", { value: "leave", children: "Leave" })
1108
1245
  ] }),
1109
- /* @__PURE__ */ jsx7("p", { className: "text-[10px] text-slate-400 mt-1", children: "Choose the category this workflow belongs to" })
1246
+ /* @__PURE__ */ jsx9("p", { className: "text-[10px] text-slate-400 mt-1", children: "Choose the category this workflow belongs to" })
1110
1247
  ] }),
1111
- /* @__PURE__ */ jsxs6("div", { children: [
1112
- /* @__PURE__ */ jsxs6("label", { className: "block text-xs font-bold text-slate-700 mb-1.5", children: [
1248
+ /* @__PURE__ */ jsxs8("div", { children: [
1249
+ /* @__PURE__ */ jsxs8("label", { className: "block text-xs font-bold text-slate-700 mb-1.5", children: [
1113
1250
  "Workflow Code ",
1114
- /* @__PURE__ */ jsx7("span", { className: "text-red-500", children: "*" })
1251
+ /* @__PURE__ */ jsx9("span", { className: "text-red-500", children: "*" })
1115
1252
  ] }),
1116
- /* @__PURE__ */ jsx7(
1253
+ /* @__PURE__ */ jsx9(
1117
1254
  "input",
1118
1255
  {
1119
1256
  type: "text",
@@ -1121,15 +1258,15 @@ function AddWorkTransitionStepModal({ onClose }) {
1121
1258
  className: "w-full p-2.5 border border-slate-200 rounded-xl text-xs focus:outline-none focus:ring-2 focus:ring-indigo-500/10 focus:border-indigo-500"
1122
1259
  }
1123
1260
  ),
1124
- /* @__PURE__ */ jsx7("p", { className: "text-[10px] text-slate-400 mt-1", children: "Unique code for this workflow (e.g., PET-001)" })
1261
+ /* @__PURE__ */ jsx9("p", { className: "text-[10px] text-slate-400 mt-1", children: "Unique code for this workflow (e.g., PET-001)" })
1125
1262
  ] })
1126
1263
  ] }),
1127
- /* @__PURE__ */ jsxs6("div", { children: [
1128
- /* @__PURE__ */ jsxs6("label", { className: "block text-xs font-bold text-slate-700 mb-1.5", children: [
1264
+ /* @__PURE__ */ jsxs8("div", { children: [
1265
+ /* @__PURE__ */ jsxs8("label", { className: "block text-xs font-bold text-slate-700 mb-1.5", children: [
1129
1266
  "Workflow Name ",
1130
- /* @__PURE__ */ jsx7("span", { className: "text-red-500", children: "*" })
1267
+ /* @__PURE__ */ jsx9("span", { className: "text-red-500", children: "*" })
1131
1268
  ] }),
1132
- /* @__PURE__ */ jsx7(
1269
+ /* @__PURE__ */ jsx9(
1133
1270
  "input",
1134
1271
  {
1135
1272
  type: "text",
@@ -1137,15 +1274,15 @@ function AddWorkTransitionStepModal({ onClose }) {
1137
1274
  className: "w-full p-2.5 border border-slate-200 rounded-xl text-xs focus:outline-none focus:ring-2 focus:ring-indigo-500/10 focus:border-indigo-500"
1138
1275
  }
1139
1276
  ),
1140
- /* @__PURE__ */ jsx7("p", { className: "text-[10px] text-slate-400 mt-1", children: "Enter a descriptive name for this workflow" })
1277
+ /* @__PURE__ */ jsx9("p", { className: "text-[10px] text-slate-400 mt-1", children: "Enter a descriptive name for this workflow" })
1141
1278
  ] }),
1142
- /* @__PURE__ */ jsxs6("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-5", children: [
1143
- /* @__PURE__ */ jsxs6("div", { children: [
1144
- /* @__PURE__ */ jsxs6("label", { className: "block text-xs font-bold text-slate-700 mb-1.5", children: [
1279
+ /* @__PURE__ */ jsxs8("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-5", children: [
1280
+ /* @__PURE__ */ jsxs8("div", { children: [
1281
+ /* @__PURE__ */ jsxs8("label", { className: "block text-xs font-bold text-slate-700 mb-1.5", children: [
1145
1282
  "Version ",
1146
- /* @__PURE__ */ jsx7("span", { className: "text-red-500", children: "*" })
1283
+ /* @__PURE__ */ jsx9("span", { className: "text-red-500", children: "*" })
1147
1284
  ] }),
1148
- /* @__PURE__ */ jsx7(
1285
+ /* @__PURE__ */ jsx9(
1149
1286
  "input",
1150
1287
  {
1151
1288
  type: "text",
@@ -1153,27 +1290,27 @@ function AddWorkTransitionStepModal({ onClose }) {
1153
1290
  className: "w-full p-2.5 border border-slate-200 rounded-xl text-xs focus:outline-none focus:ring-2 focus:ring-indigo-500/10 focus:border-indigo-500"
1154
1291
  }
1155
1292
  ),
1156
- /* @__PURE__ */ jsx7("p", { className: "text-[10px] text-slate-400 mt-1", children: "Workflow version number" })
1293
+ /* @__PURE__ */ jsx9("p", { className: "text-[10px] text-slate-400 mt-1", children: "Workflow version number" })
1157
1294
  ] }),
1158
- /* @__PURE__ */ jsxs6("div", { children: [
1159
- /* @__PURE__ */ jsxs6("label", { className: "block text-xs font-bold text-slate-700 mb-1.5", children: [
1295
+ /* @__PURE__ */ jsxs8("div", { children: [
1296
+ /* @__PURE__ */ jsxs8("label", { className: "block text-xs font-bold text-slate-700 mb-1.5", children: [
1160
1297
  "Published ",
1161
- /* @__PURE__ */ jsx7("span", { className: "text-red-500", children: "*" })
1298
+ /* @__PURE__ */ jsx9("span", { className: "text-red-500", children: "*" })
1162
1299
  ] }),
1163
- /* @__PURE__ */ jsxs6("select", { className: "w-full p-2.5 border border-slate-200 rounded-xl text-xs bg-white text-slate-700 focus:outline-none focus:ring-2 focus:ring-indigo-500/10 focus:border-indigo-500", children: [
1164
- /* @__PURE__ */ jsx7("option", { value: "false", children: "No" }),
1165
- /* @__PURE__ */ jsx7("option", { value: "true", children: "Yes" })
1300
+ /* @__PURE__ */ jsxs8("select", { className: "w-full p-2.5 border border-slate-200 rounded-xl text-xs bg-white text-slate-700 focus:outline-none focus:ring-2 focus:ring-indigo-500/10 focus:border-indigo-500", children: [
1301
+ /* @__PURE__ */ jsx9("option", { value: "false", children: "No" }),
1302
+ /* @__PURE__ */ jsx9("option", { value: "true", children: "Yes" })
1166
1303
  ] }),
1167
- /* @__PURE__ */ jsx7("p", { className: "text-[10px] text-slate-400 mt-1", children: "Make workflow active for use" })
1304
+ /* @__PURE__ */ jsx9("p", { className: "text-[10px] text-slate-400 mt-1", children: "Make workflow active for use" })
1168
1305
  ] })
1169
1306
  ] })
1170
1307
  ] }),
1171
- /* @__PURE__ */ jsxs6("div", { className: "bg-white p-6 rounded-2xl border border-slate-100/80 shadow-sm space-y-3", children: [
1172
- /* @__PURE__ */ jsxs6("div", { className: "flex justify-between items-center", children: [
1173
- /* @__PURE__ */ jsx7("label", { className: "block text-xs font-bold text-slate-700", children: "Description" }),
1174
- /* @__PURE__ */ jsx7("span", { className: "text-[10px] text-slate-400", children: "0 / 500" })
1308
+ /* @__PURE__ */ jsxs8("div", { className: "bg-white p-6 rounded-2xl border border-slate-100/80 shadow-sm space-y-3", children: [
1309
+ /* @__PURE__ */ jsxs8("div", { className: "flex justify-between items-center", children: [
1310
+ /* @__PURE__ */ jsx9("label", { className: "block text-xs font-bold text-slate-700", children: "Description" }),
1311
+ /* @__PURE__ */ jsx9("span", { className: "text-[10px] text-slate-400", children: "0 / 500" })
1175
1312
  ] }),
1176
- /* @__PURE__ */ jsx7(
1313
+ /* @__PURE__ */ jsx9(
1177
1314
  "textarea",
1178
1315
  {
1179
1316
  rows: 3,
@@ -1181,86 +1318,86 @@ function AddWorkTransitionStepModal({ onClose }) {
1181
1318
  className: "w-full p-3 border border-slate-200 rounded-xl text-xs resize-none focus:outline-none focus:ring-2 focus:ring-indigo-500/10 focus:border-indigo-500"
1182
1319
  }
1183
1320
  ),
1184
- /* @__PURE__ */ jsx7("p", { className: "text-[10px] text-slate-400", children: "Provide additional information about this workflow" })
1321
+ /* @__PURE__ */ jsx9("p", { className: "text-[10px] text-slate-400", children: "Provide additional information about this workflow" })
1185
1322
  ] }),
1186
- /* @__PURE__ */ jsxs6("div", { className: "bg-white p-6 rounded-2xl border border-slate-100/80 shadow-sm space-y-5", children: [
1187
- /* @__PURE__ */ jsxs6("div", { className: "flex items-center gap-2 text-indigo-600 text-sm font-bold border-b border-slate-50 pb-3", children: [
1188
- /* @__PURE__ */ jsx7("span", { children: "\u2699\uFE0F" }),
1189
- /* @__PURE__ */ jsx7("span", { children: "Status & Settings" })
1323
+ /* @__PURE__ */ jsxs8("div", { className: "bg-white p-6 rounded-2xl border border-slate-100/80 shadow-sm space-y-5", children: [
1324
+ /* @__PURE__ */ jsxs8("div", { className: "flex items-center gap-2 text-indigo-600 text-sm font-bold border-b border-slate-50 pb-3", children: [
1325
+ /* @__PURE__ */ jsx9("span", { children: "\u2699\uFE0F" }),
1326
+ /* @__PURE__ */ jsx9("span", { children: "Status & Settings" })
1190
1327
  ] }),
1191
- /* @__PURE__ */ jsxs6("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-5", children: [
1192
- /* @__PURE__ */ jsxs6("div", { children: [
1193
- /* @__PURE__ */ jsxs6("label", { className: "block text-xs font-bold text-slate-700 mb-1.5", children: [
1328
+ /* @__PURE__ */ jsxs8("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-5", children: [
1329
+ /* @__PURE__ */ jsxs8("div", { children: [
1330
+ /* @__PURE__ */ jsxs8("label", { className: "block text-xs font-bold text-slate-700 mb-1.5", children: [
1194
1331
  "Status ",
1195
- /* @__PURE__ */ jsx7("span", { className: "text-red-500", children: "*" })
1332
+ /* @__PURE__ */ jsx9("span", { className: "text-red-500", children: "*" })
1196
1333
  ] }),
1197
- /* @__PURE__ */ jsxs6("select", { className: "w-full p-2.5 border border-slate-200 rounded-xl text-xs bg-white text-slate-700 focus:outline-none focus:ring-2 focus:ring-indigo-500/10 focus:border-indigo-500", children: [
1198
- /* @__PURE__ */ jsx7("option", { value: "active", children: "Active" }),
1199
- /* @__PURE__ */ jsx7("option", { value: "inactive", children: "Inactive" })
1334
+ /* @__PURE__ */ jsxs8("select", { className: "w-full p-2.5 border border-slate-200 rounded-xl text-xs bg-white text-slate-700 focus:outline-none focus:ring-2 focus:ring-indigo-500/10 focus:border-indigo-500", children: [
1335
+ /* @__PURE__ */ jsx9("option", { value: "active", children: "Active" }),
1336
+ /* @__PURE__ */ jsx9("option", { value: "inactive", children: "Inactive" })
1200
1337
  ] }),
1201
- /* @__PURE__ */ jsx7("p", { className: "text-[10px] text-slate-400 mt-1", children: "Set the initial status of this workflow" })
1338
+ /* @__PURE__ */ jsx9("p", { className: "text-[10px] text-slate-400 mt-1", children: "Set the initial status of this workflow" })
1202
1339
  ] }),
1203
- /* @__PURE__ */ jsxs6("div", { children: [
1204
- /* @__PURE__ */ jsx7("label", { className: "block text-xs font-bold text-slate-700 mb-1.5", children: "Default Priority" }),
1205
- /* @__PURE__ */ jsxs6("select", { className: "w-full p-2.5 border border-slate-200 rounded-xl text-xs bg-white text-slate-700 focus:outline-none focus:ring-2 focus:ring-indigo-500/10 focus:border-indigo-500", children: [
1206
- /* @__PURE__ */ jsx7("option", { value: "medium", children: "Medium" }),
1207
- /* @__PURE__ */ jsx7("option", { value: "high", children: "High" }),
1208
- /* @__PURE__ */ jsx7("option", { value: "low", children: "Low" })
1340
+ /* @__PURE__ */ jsxs8("div", { children: [
1341
+ /* @__PURE__ */ jsx9("label", { className: "block text-xs font-bold text-slate-700 mb-1.5", children: "Default Priority" }),
1342
+ /* @__PURE__ */ jsxs8("select", { className: "w-full p-2.5 border border-slate-200 rounded-xl text-xs bg-white text-slate-700 focus:outline-none focus:ring-2 focus:ring-indigo-500/10 focus:border-indigo-500", children: [
1343
+ /* @__PURE__ */ jsx9("option", { value: "medium", children: "Medium" }),
1344
+ /* @__PURE__ */ jsx9("option", { value: "high", children: "High" }),
1345
+ /* @__PURE__ */ jsx9("option", { value: "low", children: "Low" })
1209
1346
  ] }),
1210
- /* @__PURE__ */ jsx7("p", { className: "text-[10px] text-slate-400 mt-1", children: "Default priority for tasks in this workflow" })
1347
+ /* @__PURE__ */ jsx9("p", { className: "text-[10px] text-slate-400 mt-1", children: "Default priority for tasks in this workflow" })
1211
1348
  ] })
1212
1349
  ] })
1213
1350
  ] }),
1214
- /* @__PURE__ */ jsxs6("div", { className: "bg-white p-6 rounded-2xl border border-slate-100/80 shadow-sm space-y-5", children: [
1215
- /* @__PURE__ */ jsxs6("div", { className: "flex items-center gap-2 text-indigo-600 text-sm font-bold border-b border-slate-50 pb-3", children: [
1216
- /* @__PURE__ */ jsx7("span", { children: "\u{1F6E0}\uFE0F" }),
1217
- /* @__PURE__ */ jsx7("span", { children: "Additional Settings" })
1351
+ /* @__PURE__ */ jsxs8("div", { className: "bg-white p-6 rounded-2xl border border-slate-100/80 shadow-sm space-y-5", children: [
1352
+ /* @__PURE__ */ jsxs8("div", { className: "flex items-center gap-2 text-indigo-600 text-sm font-bold border-b border-slate-50 pb-3", children: [
1353
+ /* @__PURE__ */ jsx9("span", { children: "\u{1F6E0}\uFE0F" }),
1354
+ /* @__PURE__ */ jsx9("span", { children: "Additional Settings" })
1218
1355
  ] }),
1219
- /* @__PURE__ */ jsxs6("div", { className: "grid grid-cols-1 md:grid-cols-3 gap-4", children: [
1220
- /* @__PURE__ */ jsxs6("div", { className: "flex items-center justify-between p-4 bg-slate-50/50 border border-slate-100 rounded-2xl", children: [
1221
- /* @__PURE__ */ jsxs6("div", { className: "flex items-center gap-3", children: [
1222
- /* @__PURE__ */ jsx7("div", { className: "w-8 h-8 rounded-lg bg-indigo-50 text-indigo-600 flex items-center justify-center text-sm", children: "\u23F1\uFE0F" }),
1223
- /* @__PURE__ */ jsxs6("div", { children: [
1224
- /* @__PURE__ */ jsx7("p", { className: "text-xs font-bold text-slate-700", children: "Enable SLA" }),
1225
- /* @__PURE__ */ jsx7("p", { className: "text-[9px] text-slate-400", children: "Enable SLA for workflow" })
1356
+ /* @__PURE__ */ jsxs8("div", { className: "grid grid-cols-1 md:grid-cols-3 gap-4", children: [
1357
+ /* @__PURE__ */ jsxs8("div", { className: "flex items-center justify-between p-4 bg-slate-50/50 border border-slate-100 rounded-2xl", children: [
1358
+ /* @__PURE__ */ jsxs8("div", { className: "flex items-center gap-3", children: [
1359
+ /* @__PURE__ */ jsx9("div", { className: "w-8 h-8 rounded-lg bg-indigo-50 text-indigo-600 flex items-center justify-center text-sm", children: "\u23F1\uFE0F" }),
1360
+ /* @__PURE__ */ jsxs8("div", { children: [
1361
+ /* @__PURE__ */ jsx9("p", { className: "text-xs font-bold text-slate-700", children: "Enable SLA" }),
1362
+ /* @__PURE__ */ jsx9("p", { className: "text-[9px] text-slate-400", children: "Enable SLA for workflow" })
1226
1363
  ] })
1227
1364
  ] }),
1228
- /* @__PURE__ */ jsxs6("label", { className: "relative inline-flex items-center cursor-pointer", children: [
1229
- /* @__PURE__ */ jsx7("input", { type: "checkbox", defaultChecked: true, className: "sr-only peer" }),
1230
- /* @__PURE__ */ jsx7("div", { className: "w-8 h-4.5 bg-slate-200 peer-focus:outline-none rounded-full peer peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white after:border-slate-300 after:border after:rounded-full after:h-3.5 after:w-3.5 after:transition-all peer-checked:bg-indigo-600" })
1365
+ /* @__PURE__ */ jsxs8("label", { className: "relative inline-flex items-center cursor-pointer", children: [
1366
+ /* @__PURE__ */ jsx9("input", { type: "checkbox", defaultChecked: true, className: "sr-only peer" }),
1367
+ /* @__PURE__ */ jsx9("div", { className: "w-8 h-4.5 bg-slate-200 peer-focus:outline-none rounded-full peer peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white after:border-slate-300 after:border after:rounded-full after:h-3.5 after:w-3.5 after:transition-all peer-checked:bg-indigo-600" })
1231
1368
  ] })
1232
1369
  ] }),
1233
- /* @__PURE__ */ jsxs6("div", { className: "flex items-center justify-between p-4 bg-slate-50/50 border border-slate-100 rounded-2xl", children: [
1234
- /* @__PURE__ */ jsxs6("div", { className: "flex items-center gap-3", children: [
1235
- /* @__PURE__ */ jsx7("div", { className: "w-8 h-8 rounded-lg bg-indigo-50 text-indigo-600 flex items-center justify-center text-sm", children: "\u{1F504}" }),
1236
- /* @__PURE__ */ jsxs6("div", { children: [
1237
- /* @__PURE__ */ jsx7("p", { className: "text-xs font-bold text-slate-700", children: "Allow Rework" }),
1238
- /* @__PURE__ */ jsx7("p", { className: "text-[9px] text-slate-400", children: "Allow files to be sent back" })
1370
+ /* @__PURE__ */ jsxs8("div", { className: "flex items-center justify-between p-4 bg-slate-50/50 border border-slate-100 rounded-2xl", children: [
1371
+ /* @__PURE__ */ jsxs8("div", { className: "flex items-center gap-3", children: [
1372
+ /* @__PURE__ */ jsx9("div", { className: "w-8 h-8 rounded-lg bg-indigo-50 text-indigo-600 flex items-center justify-center text-sm", children: "\u{1F504}" }),
1373
+ /* @__PURE__ */ jsxs8("div", { children: [
1374
+ /* @__PURE__ */ jsx9("p", { className: "text-xs font-bold text-slate-700", children: "Allow Rework" }),
1375
+ /* @__PURE__ */ jsx9("p", { className: "text-[9px] text-slate-400", children: "Allow files to be sent back" })
1239
1376
  ] })
1240
1377
  ] }),
1241
- /* @__PURE__ */ jsxs6("label", { className: "relative inline-flex items-center cursor-pointer", children: [
1242
- /* @__PURE__ */ jsx7("input", { type: "checkbox", defaultChecked: true, className: "sr-only peer" }),
1243
- /* @__PURE__ */ jsx7("div", { className: "w-8 h-4.5 bg-slate-200 peer-focus:outline-none rounded-full peer peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white after:border-slate-300 after:border after:rounded-full after:h-3.5 after:w-3.5 after:transition-all peer-checked:bg-indigo-600" })
1378
+ /* @__PURE__ */ jsxs8("label", { className: "relative inline-flex items-center cursor-pointer", children: [
1379
+ /* @__PURE__ */ jsx9("input", { type: "checkbox", defaultChecked: true, className: "sr-only peer" }),
1380
+ /* @__PURE__ */ jsx9("div", { className: "w-8 h-4.5 bg-slate-200 peer-focus:outline-none rounded-full peer peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white after:border-slate-300 after:border after:rounded-full after:h-3.5 after:w-3.5 after:transition-all peer-checked:bg-indigo-600" })
1244
1381
  ] })
1245
1382
  ] }),
1246
- /* @__PURE__ */ jsxs6("div", { className: "flex items-center justify-between p-4 bg-slate-50/50 border border-slate-100 rounded-2xl", children: [
1247
- /* @__PURE__ */ jsxs6("div", { className: "flex items-center gap-3", children: [
1248
- /* @__PURE__ */ jsx7("div", { className: "w-8 h-8 rounded-lg bg-indigo-50 text-indigo-600 flex items-center justify-center text-sm", children: "\u{1F465}" }),
1249
- /* @__PURE__ */ jsxs6("div", { children: [
1250
- /* @__PURE__ */ jsx7("p", { className: "text-xs font-bold text-slate-700", children: "Allow File Delegation" }),
1251
- /* @__PURE__ */ jsx7("p", { className: "text-[9px] text-slate-400", children: "Allow users to delegate tasks" })
1383
+ /* @__PURE__ */ jsxs8("div", { className: "flex items-center justify-between p-4 bg-slate-50/50 border border-slate-100 rounded-2xl", children: [
1384
+ /* @__PURE__ */ jsxs8("div", { className: "flex items-center gap-3", children: [
1385
+ /* @__PURE__ */ jsx9("div", { className: "w-8 h-8 rounded-lg bg-indigo-50 text-indigo-600 flex items-center justify-center text-sm", children: "\u{1F465}" }),
1386
+ /* @__PURE__ */ jsxs8("div", { children: [
1387
+ /* @__PURE__ */ jsx9("p", { className: "text-xs font-bold text-slate-700", children: "Allow File Delegation" }),
1388
+ /* @__PURE__ */ jsx9("p", { className: "text-[9px] text-slate-400", children: "Allow users to delegate tasks" })
1252
1389
  ] })
1253
1390
  ] }),
1254
- /* @__PURE__ */ jsxs6("label", { className: "relative inline-flex items-center cursor-pointer", children: [
1255
- /* @__PURE__ */ jsx7("input", { type: "checkbox", className: "sr-only peer" }),
1256
- /* @__PURE__ */ jsx7("div", { className: "w-8 h-4.5 bg-slate-200 peer-focus:outline-none rounded-full peer peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white after:border-slate-300 after:border after:rounded-full after:h-3.5 after:w-3.5 after:transition-all peer-checked:bg-indigo-600" })
1391
+ /* @__PURE__ */ jsxs8("label", { className: "relative inline-flex items-center cursor-pointer", children: [
1392
+ /* @__PURE__ */ jsx9("input", { type: "checkbox", className: "sr-only peer" }),
1393
+ /* @__PURE__ */ jsx9("div", { className: "w-8 h-4.5 bg-slate-200 peer-focus:outline-none rounded-full peer peer-checked:after:translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white after:border-slate-300 after:border after:rounded-full after:h-3.5 after:w-3.5 after:transition-all peer-checked:bg-indigo-600" })
1257
1394
  ] })
1258
1395
  ] })
1259
1396
  ] })
1260
1397
  ] })
1261
1398
  ] }),
1262
- /* @__PURE__ */ jsxs6("div", { className: "p-5 bg-white border-t border-slate-100 flex items-center justify-end gap-3 px-8", children: [
1263
- /* @__PURE__ */ jsx7(
1399
+ /* @__PURE__ */ jsxs8("div", { className: "p-5 bg-white border-t border-slate-100 flex items-center justify-end gap-3 px-8", children: [
1400
+ /* @__PURE__ */ jsx9(
1264
1401
  "button",
1265
1402
  {
1266
1403
  onClick: onClose,
@@ -1268,7 +1405,7 @@ function AddWorkTransitionStepModal({ onClose }) {
1268
1405
  children: "\u2715 Cancel"
1269
1406
  }
1270
1407
  ),
1271
- /* @__PURE__ */ jsx7(
1408
+ /* @__PURE__ */ jsx9(
1272
1409
  "button",
1273
1410
  {
1274
1411
  type: "button",
@@ -1281,348 +1418,98 @@ function AddWorkTransitionStepModal({ onClose }) {
1281
1418
  ] });
1282
1419
  }
1283
1420
 
1284
- // src/components/WorkFlowTransition/Transitionheader.js
1285
- import React5, { useState as useState4 } from "react";
1286
- import Link2 from "next/link";
1287
- import { jsx as jsx8, jsxs as jsxs7 } from "react/jsx-runtime";
1288
- function Header() {
1289
- return /* @__PURE__ */ jsxs7("div", { className: "px-6 py-5 border-b border-gray-200", children: [
1290
- /* @__PURE__ */ jsx8("h1", { className: "m-0 text-[30px] leading-tight font-semibold text-[#1E293B] tracking-tight", children: "Workflow" }),
1291
- /* @__PURE__ */ jsxs7("div", { className: "mt-2 text-[13px] font-medium", children: [
1292
- /* @__PURE__ */ jsx8("a", { href: "/dashboard", className: "text-blue-600 hover:underline", children: "Dashboard" }),
1293
- /* @__PURE__ */ jsx8("span", { className: "mx-2 text-slate-400", children: ">" }),
1294
- /* @__PURE__ */ jsx8("a", { href: "/masters", className: "text-blue-600 hover:underline", children: "Masters" }),
1295
- /* @__PURE__ */ jsx8("span", { className: "mx-2 text-slate-400", children: ">" }),
1296
- /* @__PURE__ */ jsx8("a", { href: "/workflowTransition", className: "text-blue-600 hover:underline", children: "Workflow Transition" }),
1297
- /* @__PURE__ */ jsx8("span", { className: "mx-2 text-slate-400", children: ">" }),
1298
- /* @__PURE__ */ jsx8("span", { className: "text-slate-500", children: "Workflow Step" })
1299
- ] })
1421
+ // src/components/WorkflowType/AddButton.jsx
1422
+ import React7 from "react";
1423
+ import { jsx as jsx10, jsxs as jsxs9 } from "react/jsx-runtime";
1424
+ function AddButton({ onOpen }) {
1425
+ return /* @__PURE__ */ jsxs9(
1426
+ "button",
1427
+ {
1428
+ onClick: onOpen,
1429
+ className: "bg-blue-600 hover:bg-blue-700 text-white px-5 py-2.5 rounded-xl font-bold text-sm shadow-md shadow-blue-500/20 hover:shadow-lg hover:shadow-blue-500/30 transition-all active:scale-95 flex items-center gap-2",
1430
+ children: [
1431
+ /* @__PURE__ */ jsx10("svg", { className: "w-4 h-4 stroke-[2.5]", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx10("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M12 4.5v15m7.5-7.5h-15" }) }),
1432
+ "Add Workflow Type"
1433
+ ]
1434
+ }
1435
+ );
1436
+ }
1437
+
1438
+ // src/components/WorkflowType/WorkflowTypeMains.js
1439
+ import { jsx as jsx11, jsxs as jsxs10 } from "react/jsx-runtime";
1440
+ function WorkflowTypeMains() {
1441
+ const [modalOpen, setModalOpen] = useState5(false);
1442
+ const [pageSize, setPageSize] = useState5(10);
1443
+ return /* @__PURE__ */ jsxs10("div", { className: "min-h-screen bg-slate-50 p-4 md:p-6", children: [
1444
+ /* @__PURE__ */ jsxs10("div", { className: "w-full space-y-5", children: [
1445
+ /* @__PURE__ */ jsxs10("div", { className: "flex flex-col sm:flex-row sm:items-center sm:justify-between bg-white p-6 rounded-2xl border border-slate-200/80 shadow-sm gap-4", children: [
1446
+ /* @__PURE__ */ jsxs10("div", { children: [
1447
+ /* @__PURE__ */ jsx11("h1", { className: "text-2xl font-extrabold text-slate-900 tracking-tight", children: "Workflow Type" }),
1448
+ /* @__PURE__ */ jsxs10("p", { className: "text-xs text-slate-400 mt-1", children: [
1449
+ "Dashboard > Types > ",
1450
+ /* @__PURE__ */ jsx11("span", { className: "text-blue-600 font-semibold", children: "Workflow Type" })
1451
+ ] })
1452
+ ] }),
1453
+ /* @__PURE__ */ jsx11(AddButton, { onOpen: () => setModalOpen(true) })
1454
+ ] }),
1455
+ /* @__PURE__ */ jsxs10("div", { className: "bg-white p-6 rounded-2xl border border-slate-200/80 shadow-sm space-y-5", children: [
1456
+ /* @__PURE__ */ jsxs10("div", { className: "flex justify-between items-center w-full", children: [
1457
+ /* @__PURE__ */ jsx11("div", { className: "w-full max-w-xs", children: /* @__PURE__ */ jsx11(SearchBar, {}) }),
1458
+ /* @__PURE__ */ jsx11("div", { children: /* @__PURE__ */ jsxs10(
1459
+ "select",
1460
+ {
1461
+ value: pageSize,
1462
+ onChange: (e) => setPageSize(Number(e.target.value)),
1463
+ className: "border border-slate-200 rounded-lg px-3 py-2 text-sm bg-white cursor-pointer outline-none shadow-sm text-slate-700",
1464
+ children: [
1465
+ /* @__PURE__ */ jsx11("option", { value: 2, children: "2 Rows (Testing)" }),
1466
+ /* @__PURE__ */ jsx11("option", { value: 10, children: "10 Rows" }),
1467
+ /* @__PURE__ */ jsx11("option", { value: 20, children: "20 Rows" }),
1468
+ /* @__PURE__ */ jsx11("option", { value: 50, children: "50 Rows" })
1469
+ ]
1470
+ }
1471
+ ) })
1472
+ ] }),
1473
+ /* @__PURE__ */ jsx11(WorkflowTypeTable, { pageSize })
1474
+ ] })
1475
+ ] }),
1476
+ /* @__PURE__ */ jsx11(
1477
+ AddWorkflowTypeModal,
1478
+ {
1479
+ isOpen: modalOpen,
1480
+ onClose: () => setModalOpen(false)
1481
+ }
1482
+ )
1300
1483
  ] });
1301
1484
  }
1302
1485
 
1303
1486
  // src/components/WorkFlowTransition/Transitiontable.js
1304
- import { jsx as jsx9, jsxs as jsxs8 } from "react/jsx-runtime";
1305
- var WorkflowTransition = [
1306
- {
1307
- TransitionId: 1,
1308
- workflowId: 1,
1309
- FromStepId: 2,
1310
- ToStepId: 1,
1311
- ActionCode: "APPROVE",
1312
- ActionName: "APPROVE"
1313
- },
1314
- {
1315
- TransitionId: 1,
1316
- workflowId: 1,
1317
- FromStepId: 2,
1318
- ToStepId: 1,
1319
- ActionCode: "APPROVE",
1320
- ActionName: "APPROVE"
1321
- },
1322
- {
1323
- TransitionId: 1,
1324
- workflowId: 1,
1325
- FromStepId: 2,
1326
- ToStepId: 1,
1327
- ActionCode: "APPROVE",
1328
- ActionName: "APPROVE"
1329
- },
1330
- {
1331
- TransitionId: 1,
1332
- workflowId: 1,
1333
- FromStepId: 2,
1334
- ToStepId: 1,
1335
- ActionCode: "RETURN",
1336
- ActionName: "APPROVE"
1337
- },
1338
- {
1339
- TransitionId: 1,
1340
- workflowId: 1,
1341
- FromStepId: 2,
1342
- ToStepId: 1,
1343
- ActionCode: "APPROVE",
1344
- ActionName: "RETURN"
1345
- }
1346
- ];
1347
- function WorkFlowTransition() {
1348
- const [showModal, setShowModal] = useState5(false);
1349
- const [pageSize, setPageSize] = useState5(5);
1350
- const [sortConfig, setSortConfig] = useState5({
1351
- key: "",
1352
- direction: "asc"
1353
- });
1354
- const handleSort = (key) => {
1355
- let direction = "asc";
1356
- if (sortConfig.key === key && sortConfig.direction === "asc") {
1357
- direction = "desc";
1358
- }
1359
- setSortConfig({
1360
- key,
1361
- direction
1362
- });
1363
- };
1364
- return /* @__PURE__ */ jsx9("div", { className: "p-6 bg-[#f5f7fb] min-h-screen font-sans text-slate-700", children: /* @__PURE__ */ jsxs8("div", { className: "bg-white rounded-2xl shadow-md overflow-hidden", children: [
1365
- /* @__PURE__ */ jsx9(Header, {}),
1366
- /* @__PURE__ */ jsx9("div", { className: "px-6 py-5 border-b border-gray-200 ", children: /* @__PURE__ */ jsxs8("div", { className: "flex justify-between items-center flex-wrap gap-3", children: [
1367
- /* @__PURE__ */ jsx9(
1368
- "input",
1369
- {
1370
- type: "text",
1371
- placeholder: "Search workflow Transition...",
1372
- className: "w-[300px] px-4 py-2.5 border border-slate-200/80 rounded-lg text-[13px] text-slate-600 focus:outline-none bg-slate-50"
1373
- }
1374
- ),
1375
- /* @__PURE__ */ jsxs8("div", { className: "px-4 py-3 border-b border-slate-200 text-[13px] text-slate-500 font-bold", children: [
1376
- /* @__PURE__ */ jsx9("span", { children: "Show" }),
1377
- /* @__PURE__ */ jsxs8(
1378
- "select",
1379
- {
1380
- value: pageSize,
1381
- onChange: (e) => setPageSize(Number(e.target.value)),
1382
- className: "inline-flex item-center px-3 py-1 rounded-md bg-[#f1f5f9] text-[#334155] text-xs font-semibold border border-[#e2e8f0]",
1383
- children: [
1384
- /* @__PURE__ */ jsx9("option", { value: 5, children: "5" }),
1385
- /* @__PURE__ */ jsx9("option", { value: 10, children: "10" }),
1386
- /* @__PURE__ */ jsx9("option", { value: 25, children: "25" })
1387
- ]
1388
- }
1389
- ),
1390
- /* @__PURE__ */ jsx9("span", { children: "entries" })
1391
- ] }),
1392
- /* @__PURE__ */ jsx9(
1393
- "button",
1394
- {
1395
- onClick: () => setShowModal(true),
1396
- className: "px-5 py-2.5 bg-blue-600 text-white rounded-lg text-[13px] font-semibold hover:bg-blue-700 transition-colors",
1397
- children: "+ Add Workflow Transition"
1398
- }
1399
- )
1400
- ] }) }),
1401
- /* @__PURE__ */ jsxs8("div", { className: "overflow-x-auto", children: [
1402
- /* @__PURE__ */ jsxs8("table", { className: "w-full border-collapse", children: [
1403
- /* @__PURE__ */ jsx9("thead", { children: /* @__PURE__ */ jsx9("tr", { className: "bg-slate-50/70 border-b border-slate-200 text-xs font-bold uppercase tracking-wider text-slate-500", children: [
1404
- { label: "TransitionId", key: "TransitionId" },
1405
- { label: "WorkflowId", key: "workflowId" },
1406
- { label: "FromStepId", key: "FromStepId" },
1407
- { label: "ToStepId", key: "ToStepId" },
1408
- { label: "ActionCode", key: "ActionCode" },
1409
- { label: "ActionName", key: "ActionName" }
1410
- ].map((column) => /* @__PURE__ */ jsx9(
1411
- "th",
1412
- {
1413
- onClick: () => handleSort(column.key),
1414
- className: "px-6 py-4 text-left border-b border-gray-200 text-[11px] font-bold uppercase tracking-wider text-slate-500",
1415
- children: /* @__PURE__ */ jsxs8("div", { className: "flex items-center gap-2", children: [
1416
- /* @__PURE__ */ jsx9("span", { children: column.label }),
1417
- /* @__PURE__ */ jsx9("span", { className: "text-gray-400 text-xs", children: sortConfig.key === column.key ? sortConfig.direction === "asc" ? "\u25B2" : "\u25BC" : "\u2195" })
1418
- ] })
1419
- },
1420
- column.key
1421
- )) }) }),
1422
- /* @__PURE__ */ jsx9("tbody", { children: WorkflowTransition.slice(0, pageSize).map((item) => /* @__PURE__ */ jsxs8(
1423
- "tr",
1424
- {
1425
- className: "hover:bg-slate-50 transition-colors",
1426
- children: [
1427
- /* @__PURE__ */ jsx9("td", { className: "px-6 p-4 border-b border-slate-200 text-[13px] text-slate-500 font-bold", children: item.TransitionId }),
1428
- /* @__PURE__ */ jsx9("td", { className: "px-6 py-4 border-b border-slate-200 text-[13px] text-slate-500 font-bold", children: item.workflowId }),
1429
- /* @__PURE__ */ jsx9("td", { className: "px-6 py-4 border-b border-slate-200 text-[13px] text-slate-500 font-bold", children: item.FromStepId }),
1430
- /* @__PURE__ */ jsx9("td", { className: "px-6 py-4 border-b border-slate-200 text-align center text-[13px] text-slate-500 font-bold", children: item.ToStepId }),
1431
- /* @__PURE__ */ jsx9("td", { className: "px-6 py-4 border-b border-slate-200", children: /* @__PURE__ */ jsx9(
1432
- "span",
1433
- {
1434
- className: `inline-flex items-center rounded-full px-3 py-1 text-xs font-semibold
1435
- ${item.ActionCode === "APPROVE" ? "bg-green-100 text-green-700" : "bg-red-100 text-red-700"}`,
1436
- children: item.ActionCode
1437
- }
1438
- ) }),
1439
- /* @__PURE__ */ jsx9("td", { className: "px-6 py-4 border-b border-slate-200", children: /* @__PURE__ */ jsx9(
1440
- "span",
1441
- {
1442
- className: `inline-flex items-center rounded-full px-3 py-1 text-xs font-semibold
1443
- ${item.ActionName === "APPROVE" ? "bg-green-100 text-green-700" : "bg-red-100 text-red-700"}`,
1444
- children: item.ActionName
1445
- }
1446
- ) })
1447
- ]
1448
- },
1449
- item.TransitionId
1450
- )) })
1451
- ] }),
1452
- /* @__PURE__ */ jsx9("div", { className: "h-5" }),
1453
- /* @__PURE__ */ jsx9(Footer, {}),
1454
- showModal && /* @__PURE__ */ jsx9(AddWorkTransitionStepModal, { onClose: () => setShowModal(false) })
1455
- ] })
1456
- ] }) });
1457
- }
1458
-
1459
- // src/components/WorkflowType/WorkFlowTypeMain.js
1460
- import React11, { useState as useState7 } from "react";
1461
-
1462
- // src/components/WorkflowType/SearchBar.jsx
1463
- import React7 from "react";
1464
- import { jsx as jsx10, jsxs as jsxs9 } from "react/jsx-runtime";
1465
- function SearchBar() {
1466
- return /* @__PURE__ */ jsxs9("div", { className: "relative max-w-sm w-full", children: [
1467
- /* @__PURE__ */ jsx10("span", { className: "absolute inset-y-0 left-0 flex items-center pl-3.5 pointer-events-none", children: /* @__PURE__ */ jsx10("svg", { className: "w-4.5 h-4.5 text-slate-400", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx10("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2", d: "M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z" }) }) }),
1468
- /* @__PURE__ */ jsx10(
1469
- "input",
1470
- {
1471
- type: "text",
1472
- placeholder: "Search workflow name or code...",
1473
- className: "w-full pl-10 pr-4 py-2.5 border border-slate-200 rounded-xl text-sm bg-slate-50/50 focus:outline-none focus:ring-4 focus:ring-blue-500/10 focus:border-blue-500 text-slate-700 placeholder-slate-400 transition-all shadow-sm"
1474
- }
1475
- )
1476
- ] });
1477
- }
1478
-
1479
- // src/components/WorkflowType/WorkflowTypeTable.jsx
1480
- import React8, { useState as useState6 } from "react";
1481
- import { jsx as jsx11, jsxs as jsxs10 } from "react/jsx-runtime";
1482
- function WorkflowTypeTable({ pageSize }) {
1483
- const initialData = [
1484
- { id: "1", name: "Citizen Petition Workflow", code: "PET-001", type: "Petition", version: "1", published: true, status: true },
1485
- { id: "2", name: "Building Permission Workflow", code: "BLD-001", type: "Building Permission", version: "1", published: true, status: true },
1486
- { id: "3", name: "Leave Application Workflow", code: "LEV-001", type: "Leave", version: "1", published: false, status: true },
1487
- { id: "4", name: "Grievance Redressal Workflow", code: "GRV-001", type: "Grievance", version: "2", published: true, status: true },
1488
- { id: "5", name: "Trade License Workflow", code: "TRD-001", type: "Trade License", version: "1", published: true, status: true },
1489
- { id: "6", name: "Document Verification", code: "DOC-001", type: "Verification", version: "1", published: true, status: true }
1490
- ];
1491
- const [data, setData] = useState6(initialData);
1492
- const [sortOrder, setSortOrder] = useState6("asc");
1493
- const [currentPage, setCurrentPage] = useState6(1);
1494
- const totalPages = Math.ceil(data.length / pageSize) || 1;
1495
- const startIndex = (currentPage - 1) * pageSize;
1496
- const visibleData = data.slice(startIndex, startIndex + pageSize);
1497
- const handleSort = (columnKey) => {
1498
- const isAsc = sortOrder === "asc";
1499
- setSortOrder(isAsc ? "desc" : "asc");
1500
- const sortedData = [...data].sort((a, b) => {
1501
- if (a[columnKey] < b[columnKey]) return isAsc ? -1 : 1;
1502
- if (a[columnKey] > b[columnKey]) return isAsc ? 1 : -1;
1503
- return 0;
1504
- });
1505
- setData(sortedData);
1506
- };
1507
- const toggleSwitch = (id) => {
1508
- const updatedData = data.map(
1509
- (item) => item.id === id ? __spreadProps(__spreadValues({}, item), { status: !item.status }) : item
1510
- );
1511
- setData(updatedData);
1512
- };
1513
- return /* @__PURE__ */ jsxs10("div", { className: "space-y-5", children: [
1514
- /* @__PURE__ */ jsx11("div", { className: "w-full overflow-x-auto border border-slate-200 rounded-2xl shadow-sm", children: /* @__PURE__ */ jsxs10("table", { className: "w-full text-left border-collapse bg-white", children: [
1515
- /* @__PURE__ */ jsx11("thead", { children: /* @__PURE__ */ jsxs10("tr", { className: "bg-slate-50/70 border-b border-slate-200 text-xs font-bold uppercase tracking-wider text-slate-500", children: [
1516
- /* @__PURE__ */ jsx11("th", { className: "py-4.5 px-5 w-20 text-center", children: "S.No" }),
1517
- /* @__PURE__ */ jsxs10("th", { onClick: () => handleSort("name"), className: "py-4.5 px-5 text-sm cursor-pointer select-none hover:text-slate-900", children: [
1518
- "Workflow Name ",
1519
- sortOrder === "asc" ? "\u25B2" : "\u25BC"
1520
- ] }),
1521
- /* @__PURE__ */ jsxs10("th", { onClick: () => handleSort("code"), className: "py-4.5 px-5 cursor-pointer select-none hover:text-slate-900", children: [
1522
- "Workflow Code ",
1523
- sortOrder === "asc" ? "\u25B2" : "\u25BC"
1524
- ] }),
1525
- /* @__PURE__ */ jsxs10("th", { onClick: () => handleSort("type"), className: "py-4.5 px-5 cursor-pointer select-none hover:text-slate-900", children: [
1526
- "Workflow Type ",
1527
- sortOrder === "asc" ? "\u25B2" : "\u25BC"
1528
- ] }),
1529
- /* @__PURE__ */ jsx11("th", { className: "py-4.5 px-5 text-center", children: "Version" }),
1530
- /* @__PURE__ */ jsx11("th", { className: "py-4.5 px-5 text-center", children: "Published" }),
1531
- /* @__PURE__ */ jsx11("th", { className: "py-4.5 px-5 text-center", children: "Status" })
1532
- ] }) }),
1533
- /* @__PURE__ */ jsx11("tbody", { className: "divide-y divide-slate-100 text-sm text-slate-600", children: visibleData.map((item, index) => /* @__PURE__ */ jsxs10("tr", { className: "hover:bg-slate-50/50 transition-colors", children: [
1534
- /* @__PURE__ */ jsx11("td", { className: "py-4 px-5 text-center font-medium text-slate-400", children: startIndex + index + 1 }),
1535
- /* @__PURE__ */ jsx11("td", { className: "py-4 px-5 font-bold text-slate-900 text-[14px]", children: item.name }),
1536
- /* @__PURE__ */ jsx11("td", { className: "py-4 px-5 text-slate-500", children: item.code }),
1537
- /* @__PURE__ */ jsx11("td", { className: "py-4 px-5 text-slate-500", children: item.type }),
1538
- /* @__PURE__ */ jsx11("td", { className: "py-4 px-5 text-center font-semibold text-slate-700", children: item.version }),
1539
- /* @__PURE__ */ jsx11("td", { className: "py-4 px-5 text-center", children: /* @__PURE__ */ jsx11("span", { className: `px-2.5 py-1 rounded-md text-xs font-medium ${item.published ? "bg-green-50 text-green-700 border border-green-200" : "bg-red-50 text-red-700 border border-red-200"}`, children: item.published ? "\u2713 Yes" : "\u2715 No" }) }),
1540
- /* @__PURE__ */ jsx11("td", { className: "py-4 px-5 text-center", children: /* @__PURE__ */ jsx11("div", { className: "flex justify-center items-center", children: /* @__PURE__ */ jsx11(
1541
- "button",
1542
- {
1543
- type: "button",
1544
- onClick: () => toggleSwitch(item.id),
1545
- className: `relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out outline-none ${item.status ? "bg-blue-600" : "bg-slate-200"}`,
1546
- children: /* @__PURE__ */ jsx11(
1547
- "span",
1548
- {
1549
- className: `pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out ${item.status ? "translate-x-5" : "translate-x-0"}`
1550
- }
1551
- )
1552
- }
1553
- ) }) })
1554
- ] }, item.id)) })
1555
- ] }) }),
1556
- /* @__PURE__ */ jsxs10("div", { className: "flex items-center justify-end gap-1 text-[13px] text-slate-700 font-normal mt-4 bg-slate-50/50 p-3 rounded-xl border border-slate-100", children: [
1557
- /* @__PURE__ */ jsx11(
1558
- "button",
1559
- {
1560
- onClick: () => setCurrentPage(1),
1561
- className: "px-2.5 py-1 text-slate-500 hover:text-slate-900 transition-colors",
1562
- children: "First"
1563
- }
1564
- ),
1565
- /* @__PURE__ */ jsx11(
1566
- "button",
1567
- {
1568
- onClick: () => setCurrentPage((prev) => Math.max(prev - 1, 1)),
1569
- className: "px-2.5 py-1 text-slate-500 hover:text-slate-900 transition-colors mr-2",
1570
- children: "\u2039 Prev"
1571
- }
1572
- ),
1573
- [1, 2, 3, 4].map((pageNumber) => /* @__PURE__ */ jsx11(
1574
- "button",
1575
- {
1576
- onClick: () => setCurrentPage(pageNumber),
1577
- className: `px-3 py-1 text-center rounded transition-all min-w-[28px] ${currentPage === pageNumber ? "bg-blue-600 text-white font-medium shadow-sm" : "text-slate-600 hover:bg-slate-100"}`,
1578
- children: pageNumber
1579
- },
1580
- pageNumber
1581
- )),
1582
- /* @__PURE__ */ jsx11(
1583
- "button",
1584
- {
1585
- onClick: () => setCurrentPage((prev) => Math.min(prev + 1, 7)),
1586
- className: "px-2.5 py-1 text-slate-500 hover:text-slate-900 transition-colors ml-2",
1587
- children: "Next \u203A"
1588
- }
1589
- ),
1590
- /* @__PURE__ */ jsx11(
1591
- "button",
1592
- {
1593
- onClick: () => setCurrentPage(7),
1594
- className: "px-2.5 py-1 text-slate-500 hover:text-slate-900 transition-colors",
1595
- children: "Last"
1596
- }
1597
- )
1598
- ] })
1599
- ] });
1600
- }
1601
-
1602
- // src/components/WorkflowType/AddWorkflowTypeModal.jsx
1603
- import React9 from "react";
1604
- import { jsx as jsx12, jsxs as jsxs11 } from "react/jsx-runtime";
1605
- function AddWorkflowTypeModal({ isOpen, onClose }) {
1606
- if (!isOpen) return null;
1607
- return /* @__PURE__ */ jsxs11("div", { className: "fixed inset-0 z-50 flex items-center justify-center p-4", children: [
1608
- /* @__PURE__ */ jsx12(
1609
- "div",
1610
- {
1611
- className: "fixed inset-0 bg-slate-900/50 backdrop-blur-sm transition-opacity duration-200",
1612
- onClick: onClose
1613
- }
1614
- ),
1615
- /* @__PURE__ */ jsxs11("div", { className: "relative w-full max-w-4xl bg-white rounded-3xl shadow-2xl flex flex-col z-10 max-h-[92vh] overflow-hidden animate-in fade-in zoom-in-95 duration-200", children: [
1616
- /* @__PURE__ */ jsxs11("div", { className: "flex justify-between items-center px-8 py-6 border-b border-slate-100", children: [
1617
- /* @__PURE__ */ jsxs11("div", { className: "flex items-center gap-4", children: [
1618
- /* @__PURE__ */ jsx12("div", { className: "w-12 h-12 bg-indigo-50 text-indigo-600 rounded-xl flex items-center justify-center shadow-sm", children: /* @__PURE__ */ jsx12("svg", { className: "w-6 h-6", fill: "none", stroke: "currentColor", strokeWidth: "2", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx12("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10" }) }) }),
1619
- /* @__PURE__ */ jsxs11("div", { children: [
1620
- /* @__PURE__ */ jsx12("h2", { className: "text-xl font-extrabold text-slate-800", children: "Add Workflow" }),
1621
- /* @__PURE__ */ jsx12("p", { className: "text-xs text-slate-400 mt-0.5", children: "Create a new workflow and configure its details" })
1622
- ] })
1623
- ] }),
1624
- /* @__PURE__ */ jsx12(
1625
- "button",
1487
+ import React11, { useState as useState7 } from "react";
1488
+ import Link3 from "next/link";
1489
+
1490
+ // src/components/WorkFlowTransition/AddWorkFlowTransitionModal.js
1491
+ import React9 from "react";
1492
+ import { jsx as jsx12, jsxs as jsxs11 } from "react/jsx-runtime";
1493
+ function AddWorkTransitionStepModal({ onClose }) {
1494
+ return /* @__PURE__ */ jsxs11("div", { className: "fixed inset-0 z-50 flex items-center justify-center p-4", children: [
1495
+ /* @__PURE__ */ jsx12(
1496
+ "div",
1497
+ {
1498
+ className: "fixed inset-0 bg-slate-900/50 backdrop-blur-sm transition-opacity duration-200",
1499
+ onClick: onClose
1500
+ }
1501
+ ),
1502
+ /* @__PURE__ */ jsxs11("div", { className: "relative w-full max-w-4xl bg-white rounded-3xl shadow-2xl flex flex-col z-10 max-h-[92vh] overflow-hidden animate-in fade-in zoom-in-95 duration-200", children: [
1503
+ /* @__PURE__ */ jsxs11("div", { className: "flex justify-between items-center px-8 py-6 border-b border-slate-100", children: [
1504
+ /* @__PURE__ */ jsxs11("div", { className: "flex items-center gap-4", children: [
1505
+ /* @__PURE__ */ jsx12("div", { className: "w-12 h-12 bg-indigo-50 text-indigo-600 rounded-xl flex items-center justify-center shadow-sm", children: /* @__PURE__ */ jsx12("svg", { className: "w-6 h-6", fill: "none", stroke: "currentColor", strokeWidth: "2", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx12("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10" }) }) }),
1506
+ /* @__PURE__ */ jsxs11("div", { children: [
1507
+ /* @__PURE__ */ jsx12("h2", { className: "text-xl font-extrabold text-slate-800", children: "Add Workflow" }),
1508
+ /* @__PURE__ */ jsx12("p", { className: "text-xs text-slate-400 mt-0.5", children: "Create a new workflow and configure its details" })
1509
+ ] })
1510
+ ] }),
1511
+ /* @__PURE__ */ jsx12(
1512
+ "button",
1626
1513
  {
1627
1514
  onClick: onClose,
1628
1515
  className: "text-slate-400 hover:text-slate-600 hover:bg-slate-100 p-2 rounded-full transition-all text-sm font-semibold",
@@ -1639,7 +1526,7 @@ function AddWorkflowTypeModal({ isOpen, onClose }) {
1639
1526
  /* @__PURE__ */ jsxs11("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-5", children: [
1640
1527
  /* @__PURE__ */ jsxs11("div", { children: [
1641
1528
  /* @__PURE__ */ jsxs11("label", { className: "block text-xs font-bold text-slate-700 mb-1.5", children: [
1642
- "Workflow Type ",
1529
+ "Workflow Transition",
1643
1530
  /* @__PURE__ */ jsx12("span", { className: "text-red-500", children: "*" })
1644
1531
  ] }),
1645
1532
  /* @__PURE__ */ jsxs11("select", { className: "w-full p-2.5 border border-slate-200 rounded-xl text-xs bg-white text-slate-700 focus:outline-none focus:ring-2 focus:ring-indigo-500/10 focus:border-indigo-500", children: [
@@ -1823,69 +1710,179 @@ function AddWorkflowTypeModal({ isOpen, onClose }) {
1823
1710
  ] });
1824
1711
  }
1825
1712
 
1826
- // src/components/WorkflowType/AddButton.jsx
1827
- import React10 from "react";
1713
+ // src/components/WorkFlowTransition/Transitionheader.js
1714
+ import React10, { useState as useState6 } from "react";
1715
+ import Link2 from "next/link";
1828
1716
  import { jsx as jsx13, jsxs as jsxs12 } from "react/jsx-runtime";
1829
- function AddButton({ onOpen }) {
1830
- return /* @__PURE__ */ jsxs12(
1831
- "button",
1832
- {
1833
- onClick: onOpen,
1834
- className: "bg-blue-600 hover:bg-blue-700 text-white px-5 py-2.5 rounded-xl font-bold text-sm shadow-md shadow-blue-500/20 hover:shadow-lg hover:shadow-blue-500/30 transition-all active:scale-95 flex items-center gap-2",
1835
- children: [
1836
- /* @__PURE__ */ jsx13("svg", { className: "w-4 h-4 stroke-[2.5]", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx13("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M12 4.5v15m7.5-7.5h-15" }) }),
1837
- "Add Workflow Type"
1838
- ]
1839
- }
1840
- );
1717
+ function Header() {
1718
+ return /* @__PURE__ */ jsxs12("div", { className: "px-6 py-5 border-b border-gray-200", children: [
1719
+ /* @__PURE__ */ jsx13("h1", { className: "m-0 text-[30px] leading-tight font-semibold text-[#1E293B] tracking-tight", children: "Workflow" }),
1720
+ /* @__PURE__ */ jsxs12("div", { className: "mt-2 text-[13px] font-medium", children: [
1721
+ /* @__PURE__ */ jsx13("a", { href: "/dashboard", className: "text-blue-600 hover:underline", children: "Dashboard" }),
1722
+ /* @__PURE__ */ jsx13("span", { className: "mx-2 text-slate-400", children: ">" }),
1723
+ /* @__PURE__ */ jsx13("a", { href: "/masters", className: "text-blue-600 hover:underline", children: "Masters" }),
1724
+ /* @__PURE__ */ jsx13("span", { className: "mx-2 text-slate-400", children: ">" }),
1725
+ /* @__PURE__ */ jsx13("a", { href: "/workflowTransition", className: "text-blue-600 hover:underline", children: "Workflow Transition" }),
1726
+ /* @__PURE__ */ jsx13("span", { className: "mx-2 text-slate-400", children: ">" }),
1727
+ /* @__PURE__ */ jsx13("span", { className: "text-slate-500", children: "Workflow Step" })
1728
+ ] })
1729
+ ] });
1841
1730
  }
1842
1731
 
1843
- // src/components/WorkflowType/WorkFlowTypeMain.js
1732
+ // src/components/WorkFlowTransition/Transitiontable.js
1844
1733
  import { jsx as jsx14, jsxs as jsxs13 } from "react/jsx-runtime";
1845
- function WorkflowTypeMain() {
1846
- const [modalOpen, setModalOpen] = useState7(false);
1847
- const [pageSize, setPageSize] = useState7(10);
1848
- return /* @__PURE__ */ jsxs13("div", { className: "min-h-screen bg-slate-50 p-4 md:p-6", children: [
1849
- /* @__PURE__ */ jsxs13("div", { className: "w-full space-y-5", children: [
1850
- /* @__PURE__ */ jsxs13("div", { className: "flex flex-col sm:flex-row sm:items-center sm:justify-between bg-white p-6 rounded-2xl border border-slate-200/80 shadow-sm gap-4", children: [
1851
- /* @__PURE__ */ jsxs13("div", { children: [
1852
- /* @__PURE__ */ jsx14("h1", { className: "text-2xl font-extrabold text-slate-900 tracking-tight", children: "Workflow Type" }),
1853
- /* @__PURE__ */ jsxs13("p", { className: "text-xs text-slate-400 mt-1", children: [
1854
- "Dashboard > Types > ",
1855
- /* @__PURE__ */ jsx14("span", { className: "text-blue-600 font-semibold", children: "Workflow Type" })
1856
- ] })
1857
- ] }),
1858
- /* @__PURE__ */ jsx14(AddButton, { onOpen: () => setModalOpen(true) })
1734
+ var WorkflowTransition = [
1735
+ {
1736
+ TransitionId: 1,
1737
+ workflowId: 1,
1738
+ FromStepId: 2,
1739
+ ToStepId: 1,
1740
+ ActionCode: "APPROVE",
1741
+ ActionName: "APPROVE"
1742
+ },
1743
+ {
1744
+ TransitionId: 1,
1745
+ workflowId: 1,
1746
+ FromStepId: 2,
1747
+ ToStepId: 1,
1748
+ ActionCode: "APPROVE",
1749
+ ActionName: "APPROVE"
1750
+ },
1751
+ {
1752
+ TransitionId: 1,
1753
+ workflowId: 1,
1754
+ FromStepId: 2,
1755
+ ToStepId: 1,
1756
+ ActionCode: "APPROVE",
1757
+ ActionName: "APPROVE"
1758
+ },
1759
+ {
1760
+ TransitionId: 1,
1761
+ workflowId: 1,
1762
+ FromStepId: 2,
1763
+ ToStepId: 1,
1764
+ ActionCode: "RETURN",
1765
+ ActionName: "APPROVE"
1766
+ },
1767
+ {
1768
+ TransitionId: 1,
1769
+ workflowId: 1,
1770
+ FromStepId: 2,
1771
+ ToStepId: 1,
1772
+ ActionCode: "APPROVE",
1773
+ ActionName: "RETURN"
1774
+ }
1775
+ ];
1776
+ function WorkFlowTransition() {
1777
+ const [showModal, setShowModal] = useState7(false);
1778
+ const [pageSize, setPageSize] = useState7(5);
1779
+ const [sortConfig, setSortConfig] = useState7({
1780
+ key: "",
1781
+ direction: "asc"
1782
+ });
1783
+ const handleSort = (key) => {
1784
+ let direction = "asc";
1785
+ if (sortConfig.key === key && sortConfig.direction === "asc") {
1786
+ direction = "desc";
1787
+ }
1788
+ setSortConfig({
1789
+ key,
1790
+ direction
1791
+ });
1792
+ };
1793
+ return /* @__PURE__ */ jsx14("div", { className: "p-6 bg-[#f5f7fb] min-h-screen font-sans text-slate-700", children: /* @__PURE__ */ jsxs13("div", { className: "bg-white rounded-2xl shadow-md overflow-hidden", children: [
1794
+ /* @__PURE__ */ jsx14(Header, {}),
1795
+ /* @__PURE__ */ jsx14("div", { className: "px-6 py-5 border-b border-gray-200 ", children: /* @__PURE__ */ jsxs13("div", { className: "flex justify-between items-center flex-wrap gap-3", children: [
1796
+ /* @__PURE__ */ jsx14(
1797
+ "input",
1798
+ {
1799
+ type: "text",
1800
+ placeholder: "Search workflow Transition...",
1801
+ className: "w-[300px] px-4 py-2.5 border border-slate-200/80 rounded-lg text-[13px] text-slate-600 focus:outline-none bg-slate-50"
1802
+ }
1803
+ ),
1804
+ /* @__PURE__ */ jsxs13("div", { className: "px-4 py-3 border-b border-slate-200 text-[13px] text-slate-500 font-bold", children: [
1805
+ /* @__PURE__ */ jsx14("span", { children: "Show" }),
1806
+ /* @__PURE__ */ jsxs13(
1807
+ "select",
1808
+ {
1809
+ value: pageSize,
1810
+ onChange: (e) => setPageSize(Number(e.target.value)),
1811
+ className: "inline-flex item-center px-3 py-1 rounded-md bg-[#f1f5f9] text-[#334155] text-xs font-semibold border border-[#e2e8f0]",
1812
+ children: [
1813
+ /* @__PURE__ */ jsx14("option", { value: 5, children: "5" }),
1814
+ /* @__PURE__ */ jsx14("option", { value: 10, children: "10" }),
1815
+ /* @__PURE__ */ jsx14("option", { value: 25, children: "25" })
1816
+ ]
1817
+ }
1818
+ ),
1819
+ /* @__PURE__ */ jsx14("span", { children: "entries" })
1859
1820
  ] }),
1860
- /* @__PURE__ */ jsxs13("div", { className: "bg-white p-6 rounded-2xl border border-slate-200/80 shadow-sm space-y-5", children: [
1861
- /* @__PURE__ */ jsxs13("div", { className: "flex justify-between items-center w-full", children: [
1862
- /* @__PURE__ */ jsx14("div", { className: "w-full max-w-xs", children: /* @__PURE__ */ jsx14(SearchBar, {}) }),
1863
- /* @__PURE__ */ jsx14("div", { children: /* @__PURE__ */ jsxs13(
1864
- "select",
1865
- {
1866
- value: pageSize,
1867
- onChange: (e) => setPageSize(Number(e.target.value)),
1868
- className: "border border-slate-200 rounded-lg px-3 py-2 text-sm bg-white cursor-pointer outline-none shadow-sm text-slate-700",
1869
- children: [
1870
- /* @__PURE__ */ jsx14("option", { value: 2, children: "2 Rows (Testing)" }),
1871
- /* @__PURE__ */ jsx14("option", { value: 10, children: "10 Rows" }),
1872
- /* @__PURE__ */ jsx14("option", { value: 20, children: "20 Rows" }),
1873
- /* @__PURE__ */ jsx14("option", { value: 50, children: "50 Rows" })
1874
- ]
1875
- }
1876
- ) })
1877
- ] }),
1878
- /* @__PURE__ */ jsx14(WorkflowTypeTable, { pageSize })
1879
- ] })
1880
- ] }),
1881
- /* @__PURE__ */ jsx14(
1882
- AddWorkflowTypeModal,
1883
- {
1884
- isOpen: modalOpen,
1885
- onClose: () => setModalOpen(false)
1886
- }
1887
- )
1888
- ] });
1821
+ /* @__PURE__ */ jsx14(
1822
+ "button",
1823
+ {
1824
+ onClick: () => setShowModal(true),
1825
+ className: "px-5 py-2.5 bg-blue-600 text-white rounded-lg text-[13px] font-semibold hover:bg-blue-700 transition-colors",
1826
+ children: "+ Add Workflow Transition"
1827
+ }
1828
+ )
1829
+ ] }) }),
1830
+ /* @__PURE__ */ jsxs13("div", { className: "overflow-x-auto", children: [
1831
+ /* @__PURE__ */ jsxs13("table", { className: "w-full border-collapse", children: [
1832
+ /* @__PURE__ */ jsx14("thead", { children: /* @__PURE__ */ jsx14("tr", { className: "bg-slate-50/70 border-b border-slate-200 text-xs font-bold uppercase tracking-wider text-slate-500", children: [
1833
+ { label: "TransitionId", key: "TransitionId" },
1834
+ { label: "WorkflowId", key: "workflowId" },
1835
+ { label: "FromStepId", key: "FromStepId" },
1836
+ { label: "ToStepId", key: "ToStepId" },
1837
+ { label: "ActionCode", key: "ActionCode" },
1838
+ { label: "ActionName", key: "ActionName" }
1839
+ ].map((column) => /* @__PURE__ */ jsx14(
1840
+ "th",
1841
+ {
1842
+ onClick: () => handleSort(column.key),
1843
+ className: "px-6 py-4 text-left border-b border-gray-200 text-[11px] font-bold uppercase tracking-wider text-slate-500",
1844
+ children: /* @__PURE__ */ jsxs13("div", { className: "flex items-center gap-2", children: [
1845
+ /* @__PURE__ */ jsx14("span", { children: column.label }),
1846
+ /* @__PURE__ */ jsx14("span", { className: "text-gray-400 text-xs", children: sortConfig.key === column.key ? sortConfig.direction === "asc" ? "\u25B2" : "\u25BC" : "\u2195" })
1847
+ ] })
1848
+ },
1849
+ column.key
1850
+ )) }) }),
1851
+ /* @__PURE__ */ jsx14("tbody", { children: WorkflowTransition.slice(0, pageSize).map((item) => /* @__PURE__ */ jsxs13(
1852
+ "tr",
1853
+ {
1854
+ className: "hover:bg-slate-50 transition-colors",
1855
+ children: [
1856
+ /* @__PURE__ */ jsx14("td", { className: "px-6 p-4 border-b border-slate-200 text-[13px] text-slate-500 font-bold", children: item.TransitionId }),
1857
+ /* @__PURE__ */ jsx14("td", { className: "px-6 py-4 border-b border-slate-200 text-[13px] text-slate-500 font-bold", children: item.workflowId }),
1858
+ /* @__PURE__ */ jsx14("td", { className: "px-6 py-4 border-b border-slate-200 text-[13px] text-slate-500 font-bold", children: item.FromStepId }),
1859
+ /* @__PURE__ */ jsx14("td", { className: "px-6 py-4 border-b border-slate-200 text-align center text-[13px] text-slate-500 font-bold", children: item.ToStepId }),
1860
+ /* @__PURE__ */ jsx14("td", { className: "px-6 py-4 border-b border-slate-200", children: /* @__PURE__ */ jsx14(
1861
+ "span",
1862
+ {
1863
+ className: `inline-flex items-center rounded-full px-3 py-1 text-xs font-semibold
1864
+ ${item.ActionCode === "APPROVE" ? "bg-green-100 text-green-700" : "bg-red-100 text-red-700"}`,
1865
+ children: item.ActionCode
1866
+ }
1867
+ ) }),
1868
+ /* @__PURE__ */ jsx14("td", { className: "px-6 py-4 border-b border-slate-200", children: /* @__PURE__ */ jsx14(
1869
+ "span",
1870
+ {
1871
+ className: `inline-flex items-center rounded-full px-3 py-1 text-xs font-semibold
1872
+ ${item.ActionName === "APPROVE" ? "bg-green-100 text-green-700" : "bg-red-100 text-red-700"}`,
1873
+ children: item.ActionName
1874
+ }
1875
+ ) })
1876
+ ]
1877
+ },
1878
+ item.TransitionId
1879
+ )) })
1880
+ ] }),
1881
+ /* @__PURE__ */ jsx14("div", { className: "h-5" }),
1882
+ /* @__PURE__ */ jsx14(Footer, {}),
1883
+ showModal && /* @__PURE__ */ jsx14(AddWorkTransitionStepModal, { onClose: () => setShowModal(false) })
1884
+ ] })
1885
+ ] }) });
1889
1886
  }
1890
1887
 
1891
1888
  // src/components/Sidebar.jsx
@@ -1924,40 +1921,17 @@ var trackingItems = [
1924
1921
  { name: "Audit Log", path: "/WorkflowType", icon: RiShieldCheckLine },
1925
1922
  { name: "Movement History", path: "/WorkflowType", icon: RiHistoryLine }
1926
1923
  ];
1927
- function Sidebar({ isOpen, onToggle, children }) {
1924
+ function Sidebar({ isOpen, onToggle, childrens }) {
1928
1925
  const router = useRouter();
1929
1926
  const [workflowOpen, setWorkflowOpen] = useState8(false);
1930
1927
  const [permissionOpen, setPermissionOpen] = useState8(false);
1931
1928
  const [hierarchyOpen, setHierarchyOpen] = useState8(false);
1932
1929
  const [documentOpen, setDocumentOpen] = useState8(false);
1933
- const [activeComponent, setActiveComponent] = useState8(null);
1934
1930
  const [filesOpen, setFilesOpen] = useState8(false);
1935
1931
  const [tasksOpen, setTasksOpen] = useState8(false);
1936
1932
  const [trackingOpen, setTrackingOpen] = useState8(false);
1937
1933
  const [communicationOpen, setCommunicationOpen] = useState8(false);
1938
- useEffect2(() => {
1939
- const handleRouteChange = () => {
1940
- setActiveComponent(null);
1941
- };
1942
- router.events.on("routeChangeStart", handleRouteChange);
1943
- return () => {
1944
- router.events.off("routeChangeStart", handleRouteChange);
1945
- };
1946
- }, []);
1947
- const renderContent = () => {
1948
- switch (activeComponent) {
1949
- case "workflowType":
1950
- return /* @__PURE__ */ jsx15(WorkflowTypeMain, {});
1951
- case "workflow":
1952
- return /* @__PURE__ */ jsx15(WorkflowMasterMain, {});
1953
- case "workflowStep":
1954
- return /* @__PURE__ */ jsx15(WorkflowStep, {});
1955
- case "workflowTransition":
1956
- return /* @__PURE__ */ jsx15(WorkFlowTransition, {});
1957
- default:
1958
- return children;
1959
- }
1960
- };
1934
+ const [activeComponent, setActiveComponent] = useState8("workflowType");
1961
1935
  const renderMenuItemold = (item) => {
1962
1936
  const Icon = item.icon;
1963
1937
  return /* @__PURE__ */ jsxs14(
@@ -1987,11 +1961,11 @@ function Sidebar({ isOpen, onToggle, children }) {
1987
1961
  };
1988
1962
  const renderMenuItem = (item) => {
1989
1963
  const Icon = item.icon;
1990
- const handleClick = async () => {
1964
+ const handleClick = () => {
1991
1965
  if (item.component) {
1992
- await router.push("/", void 0, { shallow: true });
1966
+ router.push("/", void 0, { shallow: true });
1993
1967
  setActiveComponent(item.component);
1994
- } else {
1968
+ } else if (item.path) {
1995
1969
  setActiveComponent(null);
1996
1970
  router.push(item.path);
1997
1971
  }
@@ -2013,6 +1987,20 @@ function Sidebar({ isOpen, onToggle, children }) {
2013
1987
  item.name
2014
1988
  );
2015
1989
  };
1990
+ const renderContent = () => {
1991
+ switch (activeComponent) {
1992
+ case "workflowType":
1993
+ return /* @__PURE__ */ jsx15(WorkflowTypeMains, {});
1994
+ case "workflow":
1995
+ return /* @__PURE__ */ jsx15(WorkflowMasterMain, {});
1996
+ case "workflowStep":
1997
+ return /* @__PURE__ */ jsx15(WorkflowStep, {});
1998
+ case "workflowTransition":
1999
+ return /* @__PURE__ */ jsx15(WorkFlowTransition, {});
2000
+ default:
2001
+ return childrens;
2002
+ }
2003
+ };
2016
2004
  const renderDropdown = (title, open, setOpen, items) => {
2017
2005
  return /* @__PURE__ */ jsxs14("div", { className: "mb-2", children: [
2018
2006
  /* @__PURE__ */ jsxs14(
@@ -2213,21 +2201,22 @@ function Sidebar({ isOpen, onToggle, children }) {
2213
2201
  }
2214
2202
 
2215
2203
  // src/components/Layout.jsx
2204
+ import { useState as useState9 } from "react";
2216
2205
  import { jsx as jsx16 } from "react/jsx-runtime";
2217
2206
  var Layout = ({ children }) => {
2218
2207
  const [isOpen, setIsOpen] = useState9(true);
2219
- return /* @__PURE__ */ jsx16("div", { className: "flex h-screen", children: /* @__PURE__ */ jsx16(
2208
+ return /* @__PURE__ */ jsx16("div", { className: "flex min-h-screen", children: /* @__PURE__ */ jsx16(
2220
2209
  Sidebar,
2221
2210
  {
2222
2211
  isOpen,
2223
2212
  onToggle: () => setIsOpen(!isOpen),
2224
- children
2213
+ childrens: children
2225
2214
  }
2226
2215
  ) });
2227
2216
  };
2228
2217
  var Layout_default = Layout;
2229
2218
  export {
2230
2219
  Layout_default as Layout,
2231
- Layout_default as Sidebar,
2220
+ Sidebar,
2232
2221
  WorkflowPage
2233
2222
  };