ahs-cti 0.0.5 → 0.0.7
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/agentDetailReport-ZR7U2LLB.mjs +17 -0
- package/dist/{agentPerformanceReport-U2QGVTXF.mjs → agentPerformanceReport-JZK5DN5E.mjs} +59 -57
- package/dist/{agentPerformanceReport-U2QGVTXF.mjs.map → agentPerformanceReport-JZK5DN5E.mjs.map} +1 -1
- package/dist/{auditReport-DEVQDTDT.mjs → auditReport-6ZUJ4UFO.mjs} +5 -5
- package/dist/{callHistory-MRBBY3UO.mjs → callHistory-T3M76D4B.mjs} +147 -156
- package/dist/{callHistory-MRBBY3UO.mjs.map → callHistory-T3M76D4B.mjs.map} +1 -1
- package/dist/{campaigns-ERO3QM6I.mjs → campaigns-5PVHXBSD.mjs} +384 -386
- package/dist/{campaigns-ERO3QM6I.mjs.map → campaigns-5PVHXBSD.mjs.map} +1 -1
- package/dist/{caroQualityAuditDashboard-NRWY6SEC.mjs → caroQualityAuditDashboard-EUDYZ3QY.mjs} +6 -5
- package/dist/{caroQualityAuditDashboard-NRWY6SEC.mjs.map → caroQualityAuditDashboard-EUDYZ3QY.mjs.map} +1 -1
- package/dist/{caroVoiceAI-Z5BDDDSY.mjs → caroVoiceAI-GGJCVUIQ.mjs} +5 -4
- package/dist/{caroVoiceAI-Z5BDDDSY.mjs.map → caroVoiceAI-GGJCVUIQ.mjs.map} +1 -1
- package/dist/{cdrReport-EZNOCELK.mjs → cdrReport-ZMDHSZUW.mjs} +101 -100
- package/dist/{cdrReport-EZNOCELK.mjs.map → cdrReport-ZMDHSZUW.mjs.map} +1 -1
- package/dist/{chunk-53DYH64M.mjs → chunk-2M3YEXYA.mjs} +91 -64
- package/dist/chunk-2M3YEXYA.mjs.map +1 -0
- package/dist/{chunk-ISQBOS5Q.mjs → chunk-33QNSXP7.mjs} +160 -160
- package/dist/{chunk-ISQBOS5Q.mjs.map → chunk-33QNSXP7.mjs.map} +1 -1
- package/dist/{chunk-YFW47Y76.mjs → chunk-3J7KQNEU.mjs} +15 -12
- package/dist/{chunk-YFW47Y76.mjs.map → chunk-3J7KQNEU.mjs.map} +1 -1
- package/dist/{chunk-MBHP7UOP.mjs → chunk-6WLG2PXL.mjs} +2 -2
- package/dist/{chunk-MBXHRFGP.mjs → chunk-7LE2VTAI.mjs} +2 -2
- package/dist/{chunk-MFZKONNR.mjs → chunk-AOJRUZTO.mjs} +2 -2
- package/dist/chunk-DF5EFKXC.mjs +28690 -0
- package/dist/chunk-DF5EFKXC.mjs.map +1 -0
- package/dist/{chunk-5FSMIU5K.mjs → chunk-DJP744FF.mjs} +2 -2
- package/dist/{chunk-BVQNDAS6.mjs → chunk-DNTGBNZD.mjs} +18 -14
- package/dist/{chunk-BVQNDAS6.mjs.map → chunk-DNTGBNZD.mjs.map} +1 -1
- package/dist/{chunk-AJQBR3AZ.mjs → chunk-E6KYWWAI.mjs} +4243 -7804
- package/dist/chunk-E6KYWWAI.mjs.map +1 -0
- package/dist/{chunk-3DOSR6LQ.mjs → chunk-FRKV2U3I.mjs} +2 -2
- package/dist/{chunk-ICGEHYJL.mjs → chunk-H7GRWLYI.mjs} +5 -5
- package/dist/{chunk-6MURUWDX.mjs → chunk-IDZWA6HG.mjs} +154 -156
- package/dist/{chunk-6MURUWDX.mjs.map → chunk-IDZWA6HG.mjs.map} +1 -1
- package/dist/chunk-LHE4QGJJ.mjs +10920 -0
- package/dist/chunk-LHE4QGJJ.mjs.map +1 -0
- package/dist/{chunk-HBR2JS4C.mjs → chunk-NAZO4HKB.mjs} +8 -4
- package/dist/{chunk-HBR2JS4C.mjs.map → chunk-NAZO4HKB.mjs.map} +1 -1
- package/dist/{chunk-DXZIYCNQ.mjs → chunk-OHJIW3I3.mjs} +2 -2
- package/dist/chunk-Q6G3MPS7.mjs +37797 -0
- package/dist/chunk-Q6G3MPS7.mjs.map +1 -0
- package/dist/{chunk-QPOHVXUK.mjs → chunk-U2UDKXMB.mjs} +2 -2
- package/dist/{chunk-XMRM5VR4.mjs → chunk-VBIDPX5Z.mjs} +18 -14
- package/dist/{chunk-XMRM5VR4.mjs.map → chunk-VBIDPX5Z.mjs.map} +1 -1
- package/dist/{chunk-6ICPXSN6.mjs → chunk-VVDJLUYT.mjs} +8 -4
- package/dist/{chunk-6ICPXSN6.mjs.map → chunk-VVDJLUYT.mjs.map} +1 -1
- package/dist/{chunk-XA5SCAZJ.mjs → chunk-WTBVFN4H.mjs} +2 -2
- package/dist/{chunk-RSL5OBRQ.mjs → chunk-YAQYTUTX.mjs} +2 -2
- package/dist/index.js +117240 -32148
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +276 -296
- package/dist/index.mjs.map +1 -1
- package/dist/{liveStatus-F6AKCC27.mjs → liveStatus-YSBYSVOO.mjs} +123 -122
- package/dist/{liveStatus-F6AKCC27.mjs.map → liveStatus-YSBYSVOO.mjs.map} +1 -1
- package/dist/{loginReport-MWTI4G6O.mjs → loginReport-YIVBJVJD.mjs} +118 -116
- package/dist/{loginReport-MWTI4G6O.mjs.map → loginReport-YIVBJVJD.mjs.map} +1 -1
- package/dist/managementDashboard-7EMQC2UA.mjs +536 -0
- package/dist/{managementDashboard-6UBOCLBA.mjs.map → managementDashboard-7EMQC2UA.mjs.map} +1 -1
- package/dist/{qualityAuditDashboard-ZJEEAMBS.mjs → qualityAuditDashboard-ENGQN2WQ.mjs} +6 -5
- package/dist/{qualityAuditDashboard-ZJEEAMBS.mjs.map → qualityAuditDashboard-ENGQN2WQ.mjs.map} +1 -1
- package/package.json +1 -1
- package/dist/agentDetailReport-F7XZLVVO.mjs +0 -16
- package/dist/chunk-53DYH64M.mjs.map +0 -1
- package/dist/chunk-AJQBR3AZ.mjs.map +0 -1
- package/dist/chunk-Q7FIRWF2.mjs +0 -1067
- package/dist/chunk-Q7FIRWF2.mjs.map +0 -1
- package/dist/chunk-UB5HSUGK.mjs +0 -65
- package/dist/chunk-UB5HSUGK.mjs.map +0 -1
- package/dist/managementDashboard-6UBOCLBA.mjs +0 -536
- /package/dist/{agentDetailReport-F7XZLVVO.mjs.map → agentDetailReport-ZR7U2LLB.mjs.map} +0 -0
- /package/dist/{auditReport-DEVQDTDT.mjs.map → auditReport-6ZUJ4UFO.mjs.map} +0 -0
- /package/dist/{chunk-MBHP7UOP.mjs.map → chunk-6WLG2PXL.mjs.map} +0 -0
- /package/dist/{chunk-MBXHRFGP.mjs.map → chunk-7LE2VTAI.mjs.map} +0 -0
- /package/dist/{chunk-MFZKONNR.mjs.map → chunk-AOJRUZTO.mjs.map} +0 -0
- /package/dist/{chunk-5FSMIU5K.mjs.map → chunk-DJP744FF.mjs.map} +0 -0
- /package/dist/{chunk-3DOSR6LQ.mjs.map → chunk-FRKV2U3I.mjs.map} +0 -0
- /package/dist/{chunk-ICGEHYJL.mjs.map → chunk-H7GRWLYI.mjs.map} +0 -0
- /package/dist/{chunk-DXZIYCNQ.mjs.map → chunk-OHJIW3I3.mjs.map} +0 -0
- /package/dist/{chunk-QPOHVXUK.mjs.map → chunk-U2UDKXMB.mjs.map} +0 -0
- /package/dist/{chunk-XA5SCAZJ.mjs.map → chunk-WTBVFN4H.mjs.map} +0 -0
- /package/dist/{chunk-RSL5OBRQ.mjs.map → chunk-YAQYTUTX.mjs.map} +0 -0
|
@@ -1,81 +1,81 @@
|
|
|
1
1
|
import {
|
|
2
2
|
Pause_default,
|
|
3
3
|
useGetCallerData
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-H7GRWLYI.mjs";
|
|
5
5
|
import {
|
|
6
6
|
SDKPageHeader
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-DNTGBNZD.mjs";
|
|
8
8
|
import {
|
|
9
9
|
Phone_default
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-6WLG2PXL.mjs";
|
|
11
11
|
import {
|
|
12
12
|
getRecordingByCall
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-DJP744FF.mjs";
|
|
14
14
|
import {
|
|
15
15
|
Download_default
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-FRKV2U3I.mjs";
|
|
17
17
|
import {
|
|
18
18
|
SDKPermissionGuard,
|
|
19
19
|
useSDKPermissions
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-3J7KQNEU.mjs";
|
|
21
21
|
import {
|
|
22
22
|
PlayArrow_default
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-7LE2VTAI.mjs";
|
|
24
24
|
import {
|
|
25
25
|
AdapterDayjs,
|
|
26
26
|
DateRangePicker,
|
|
27
27
|
LocalizationProvider
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-E6KYWWAI.mjs";
|
|
29
29
|
import {
|
|
30
30
|
Refresh_default,
|
|
31
31
|
Search_default
|
|
32
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-YAQYTUTX.mjs";
|
|
33
33
|
import {
|
|
34
34
|
SDKProvider,
|
|
35
35
|
useToast
|
|
36
|
-
} from "./chunk-
|
|
36
|
+
} from "./chunk-VVDJLUYT.mjs";
|
|
37
37
|
import {
|
|
38
38
|
END_POINT,
|
|
39
39
|
SDK_PERMISSIONS,
|
|
40
40
|
axios_default,
|
|
41
|
-
createSvgIcon,
|
|
42
41
|
deepFindArray,
|
|
43
42
|
deepFindTotal
|
|
44
|
-
} from "./chunk-
|
|
43
|
+
} from "./chunk-LHE4QGJJ.mjs";
|
|
45
44
|
import {
|
|
45
|
+
Box_default,
|
|
46
|
+
Button_default,
|
|
47
|
+
Checkbox_default,
|
|
48
|
+
Chip_default,
|
|
49
|
+
CircularProgress_default,
|
|
50
|
+
FormControlLabel_default,
|
|
51
|
+
FormControl_default,
|
|
52
|
+
IconButton_default,
|
|
53
|
+
InputAdornment_default,
|
|
54
|
+
MenuItem_default,
|
|
55
|
+
OutlinedInput_default,
|
|
56
|
+
Paper_default,
|
|
57
|
+
Select_default,
|
|
58
|
+
Tab_default,
|
|
59
|
+
TableBody_default,
|
|
60
|
+
TableCell_default,
|
|
61
|
+
TableContainer_default,
|
|
62
|
+
TableHead_default,
|
|
63
|
+
TablePagination_default,
|
|
64
|
+
TableRow_default,
|
|
65
|
+
Table_default,
|
|
66
|
+
Tabs_default,
|
|
67
|
+
TextField_default,
|
|
68
|
+
Tooltip_default,
|
|
69
|
+
Typography_default,
|
|
46
70
|
__spreadProps,
|
|
47
|
-
__spreadValues
|
|
48
|
-
|
|
71
|
+
__spreadValues,
|
|
72
|
+
alpha,
|
|
73
|
+
createSvgIcon,
|
|
74
|
+
useTheme
|
|
75
|
+
} from "./chunk-Q6G3MPS7.mjs";
|
|
49
76
|
|
|
50
77
|
// call-control-sdk/lib/pages/campaigns/index.tsx
|
|
51
78
|
import { memo, useCallback as useCallback2, useEffect, useRef, useState as useState2 } from "react";
|
|
52
|
-
import {
|
|
53
|
-
Box,
|
|
54
|
-
Chip,
|
|
55
|
-
CircularProgress,
|
|
56
|
-
FormControl,
|
|
57
|
-
FormControlLabel,
|
|
58
|
-
Checkbox,
|
|
59
|
-
IconButton,
|
|
60
|
-
InputAdornment,
|
|
61
|
-
MenuItem,
|
|
62
|
-
OutlinedInput,
|
|
63
|
-
Paper,
|
|
64
|
-
Select,
|
|
65
|
-
Tab,
|
|
66
|
-
Table,
|
|
67
|
-
TableBody,
|
|
68
|
-
TableCell,
|
|
69
|
-
TableContainer,
|
|
70
|
-
TableHead,
|
|
71
|
-
TablePagination,
|
|
72
|
-
TableRow,
|
|
73
|
-
Tabs,
|
|
74
|
-
TextField,
|
|
75
|
-
Tooltip,
|
|
76
|
-
Typography,
|
|
77
|
-
useTheme as useTheme2
|
|
78
|
-
} from "@mui/material";
|
|
79
79
|
|
|
80
80
|
// node_modules/@mui/icons-material/Add.mjs
|
|
81
81
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
@@ -132,8 +132,6 @@ var VisibilityOutlined_default = createSvgIcon(/* @__PURE__ */ _jsx9("path", {
|
|
|
132
132
|
}), "VisibilityOutlined");
|
|
133
133
|
|
|
134
134
|
// call-control-sdk/lib/components/SDKButton.tsx
|
|
135
|
-
import { Button, useTheme } from "@mui/material";
|
|
136
|
-
import { alpha } from "@mui/material/styles";
|
|
137
135
|
import { jsx } from "react/jsx-runtime";
|
|
138
136
|
var muiVariant = {
|
|
139
137
|
primary: "contained",
|
|
@@ -206,7 +204,7 @@ function SDKButton({
|
|
|
206
204
|
}
|
|
207
205
|
};
|
|
208
206
|
return /* @__PURE__ */ jsx(
|
|
209
|
-
|
|
207
|
+
Button_default,
|
|
210
208
|
{
|
|
211
209
|
variant: muiVariant[variant],
|
|
212
210
|
onClick,
|
|
@@ -658,16 +656,16 @@ function BasicInfoTab({ formData, setFormData, isEditMode }) {
|
|
|
658
656
|
};
|
|
659
657
|
const mappedModes = DIALING_MODES_MAP[formData.campaignType] || [];
|
|
660
658
|
const availableModes = formData.dialingMode && !mappedModes.includes(formData.dialingMode) ? [formData.dialingMode, ...mappedModes] : mappedModes;
|
|
661
|
-
return /* @__PURE__ */ jsxs(
|
|
662
|
-
/* @__PURE__ */ jsx2(
|
|
663
|
-
/* @__PURE__ */ jsxs(
|
|
664
|
-
/* @__PURE__ */ jsxs(
|
|
665
|
-
/* @__PURE__ */ jsxs(
|
|
659
|
+
return /* @__PURE__ */ jsxs(Box_default, { sx: { p: 2.5 }, children: [
|
|
660
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: sectionTitleSx, children: "Basic Info" }),
|
|
661
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { display: "grid", gridTemplateColumns: { xs: "1fr", sm: "1.5fr 1fr", lg: "1.5fr 1fr 1fr" }, gap: 2, mb: 2 }, children: [
|
|
662
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
663
|
+
/* @__PURE__ */ jsxs(Typography_default, { sx: labelSx, children: [
|
|
666
664
|
"Campaign Name ",
|
|
667
665
|
/* @__PURE__ */ jsx2("span", { style: { color: "red" }, children: "*" })
|
|
668
666
|
] }),
|
|
669
667
|
/* @__PURE__ */ jsx2(
|
|
670
|
-
|
|
668
|
+
TextField_default,
|
|
671
669
|
{
|
|
672
670
|
fullWidth: true,
|
|
673
671
|
size: "small",
|
|
@@ -677,26 +675,26 @@ function BasicInfoTab({ formData, setFormData, isEditMode }) {
|
|
|
677
675
|
}
|
|
678
676
|
)
|
|
679
677
|
] }),
|
|
680
|
-
/* @__PURE__ */ jsxs(
|
|
681
|
-
/* @__PURE__ */ jsxs(
|
|
678
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
679
|
+
/* @__PURE__ */ jsxs(Typography_default, { sx: labelSx, children: [
|
|
682
680
|
"Campaign Type ",
|
|
683
681
|
/* @__PURE__ */ jsx2("span", { style: { color: "red" }, children: "*" })
|
|
684
682
|
] }),
|
|
685
|
-
/* @__PURE__ */ jsx2(
|
|
686
|
-
|
|
683
|
+
/* @__PURE__ */ jsx2(FormControl_default, { fullWidth: true, size: "small", children: /* @__PURE__ */ jsx2(
|
|
684
|
+
Select_default,
|
|
687
685
|
{
|
|
688
686
|
value: formData.campaignType,
|
|
689
687
|
onChange: (e) => handleChange("campaignType", e.target.value),
|
|
690
688
|
disabled: isEditMode,
|
|
691
|
-
children: CAMPAIGN_TYPES.map((t) => /* @__PURE__ */ jsx2(
|
|
689
|
+
children: CAMPAIGN_TYPES.map((t) => /* @__PURE__ */ jsx2(MenuItem_default, { value: t, children: t }, t))
|
|
692
690
|
}
|
|
693
691
|
) })
|
|
694
692
|
] })
|
|
695
693
|
] }),
|
|
696
|
-
/* @__PURE__ */ jsxs(
|
|
697
|
-
/* @__PURE__ */ jsx2(
|
|
694
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { mb: 2 }, children: [
|
|
695
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: labelSx, children: "Description" }),
|
|
698
696
|
/* @__PURE__ */ jsx2(
|
|
699
|
-
|
|
697
|
+
TextField_default,
|
|
700
698
|
{
|
|
701
699
|
fullWidth: true,
|
|
702
700
|
size: "small",
|
|
@@ -708,29 +706,29 @@ function BasicInfoTab({ formData, setFormData, isEditMode }) {
|
|
|
708
706
|
}
|
|
709
707
|
)
|
|
710
708
|
] }),
|
|
711
|
-
/* @__PURE__ */ jsxs(
|
|
712
|
-
/* @__PURE__ */ jsxs(
|
|
713
|
-
/* @__PURE__ */ jsxs(
|
|
709
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { display: "grid", gridTemplateColumns: { xs: "1fr", sm: "1fr 1fr", lg: "1fr 1fr 1fr" }, gap: 2 }, children: [
|
|
710
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
711
|
+
/* @__PURE__ */ jsxs(Typography_default, { sx: labelSx, children: [
|
|
714
712
|
"Dialing Mode ",
|
|
715
713
|
/* @__PURE__ */ jsx2("span", { style: { color: "red" }, children: "*" })
|
|
716
714
|
] }),
|
|
717
|
-
/* @__PURE__ */ jsx2(
|
|
718
|
-
|
|
715
|
+
/* @__PURE__ */ jsx2(FormControl_default, { fullWidth: true, size: "small", children: /* @__PURE__ */ jsx2(
|
|
716
|
+
Select_default,
|
|
719
717
|
{
|
|
720
718
|
value: formData.dialingMode,
|
|
721
719
|
onChange: (e) => handleChange("dialingMode", e.target.value),
|
|
722
|
-
children: availableModes.map((m) => /* @__PURE__ */ jsx2(
|
|
720
|
+
children: availableModes.map((m) => /* @__PURE__ */ jsx2(MenuItem_default, { value: m, children: m }, m))
|
|
723
721
|
}
|
|
724
722
|
) })
|
|
725
723
|
] }),
|
|
726
|
-
/* @__PURE__ */ jsxs(
|
|
727
|
-
/* @__PURE__ */ jsx2(
|
|
728
|
-
/* @__PURE__ */ jsx2(
|
|
729
|
-
|
|
724
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
725
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: labelSx, children: "Priority" }),
|
|
726
|
+
/* @__PURE__ */ jsx2(FormControl_default, { fullWidth: true, size: "small", children: /* @__PURE__ */ jsx2(
|
|
727
|
+
Select_default,
|
|
730
728
|
{
|
|
731
729
|
value: (_a = formData.priority) != null ? _a : 5,
|
|
732
730
|
onChange: (e) => handleChange("priority", Number(e.target.value)),
|
|
733
|
-
children: LEAD_PRIORITY_OPTIONS.map((o) => /* @__PURE__ */ jsx2(
|
|
731
|
+
children: LEAD_PRIORITY_OPTIONS.map((o) => /* @__PURE__ */ jsx2(MenuItem_default, { value: o.value, children: o.label }, o.label))
|
|
734
732
|
}
|
|
735
733
|
) })
|
|
736
734
|
] })
|
|
@@ -739,16 +737,16 @@ function BasicInfoTab({ formData, setFormData, isEditMode }) {
|
|
|
739
737
|
}
|
|
740
738
|
function DialingConfigTab({ formData, setFormData }) {
|
|
741
739
|
const handleChange = (field, value) => setFormData((prev) => __spreadProps(__spreadValues({}, prev), { [field]: value }));
|
|
742
|
-
return /* @__PURE__ */ jsxs(
|
|
743
|
-
/* @__PURE__ */ jsx2(
|
|
744
|
-
/* @__PURE__ */ jsxs(
|
|
745
|
-
/* @__PURE__ */ jsxs(
|
|
746
|
-
/* @__PURE__ */ jsxs(
|
|
740
|
+
return /* @__PURE__ */ jsxs(Box_default, { sx: { p: 2.5 }, children: [
|
|
741
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: sectionTitleSx, children: "Dialing Configuration" }),
|
|
742
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { display: "grid", gridTemplateColumns: { xs: "1fr", sm: "1fr 1fr", lg: "1fr 1fr 1fr" }, gap: 2 }, children: [
|
|
743
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
744
|
+
/* @__PURE__ */ jsxs(Typography_default, { sx: labelSx, children: [
|
|
747
745
|
"Max Concurrent Calls ",
|
|
748
746
|
/* @__PURE__ */ jsx2("span", { style: { color: "red" }, children: "*" })
|
|
749
747
|
] }),
|
|
750
748
|
/* @__PURE__ */ jsx2(
|
|
751
|
-
|
|
749
|
+
TextField_default,
|
|
752
750
|
{
|
|
753
751
|
fullWidth: true,
|
|
754
752
|
size: "small",
|
|
@@ -760,10 +758,10 @@ function DialingConfigTab({ formData, setFormData }) {
|
|
|
760
758
|
}
|
|
761
759
|
)
|
|
762
760
|
] }),
|
|
763
|
-
/* @__PURE__ */ jsxs(
|
|
764
|
-
/* @__PURE__ */ jsx2(
|
|
761
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
762
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: labelSx, children: "Calls Per Agent" }),
|
|
765
763
|
/* @__PURE__ */ jsx2(
|
|
766
|
-
|
|
764
|
+
TextField_default,
|
|
767
765
|
{
|
|
768
766
|
fullWidth: true,
|
|
769
767
|
size: "small",
|
|
@@ -775,10 +773,10 @@ function DialingConfigTab({ formData, setFormData }) {
|
|
|
775
773
|
}
|
|
776
774
|
)
|
|
777
775
|
] }),
|
|
778
|
-
/* @__PURE__ */ jsxs(
|
|
779
|
-
/* @__PURE__ */ jsx2(
|
|
776
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
777
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: labelSx, children: "Ring Timeout (sec)" }),
|
|
780
778
|
/* @__PURE__ */ jsx2(
|
|
781
|
-
|
|
779
|
+
TextField_default,
|
|
782
780
|
{
|
|
783
781
|
fullWidth: true,
|
|
784
782
|
size: "small",
|
|
@@ -790,10 +788,10 @@ function DialingConfigTab({ formData, setFormData }) {
|
|
|
790
788
|
}
|
|
791
789
|
)
|
|
792
790
|
] }),
|
|
793
|
-
/* @__PURE__ */ jsxs(
|
|
794
|
-
/* @__PURE__ */ jsx2(
|
|
791
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
792
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: labelSx, children: "Answer Timeout (sec)" }),
|
|
795
793
|
/* @__PURE__ */ jsx2(
|
|
796
|
-
|
|
794
|
+
TextField_default,
|
|
797
795
|
{
|
|
798
796
|
fullWidth: true,
|
|
799
797
|
size: "small",
|
|
@@ -805,13 +803,13 @@ function DialingConfigTab({ formData, setFormData }) {
|
|
|
805
803
|
}
|
|
806
804
|
)
|
|
807
805
|
] }),
|
|
808
|
-
/* @__PURE__ */ jsxs(
|
|
809
|
-
/* @__PURE__ */ jsxs(
|
|
806
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
807
|
+
/* @__PURE__ */ jsxs(Typography_default, { sx: labelSx, children: [
|
|
810
808
|
"Max Attempts ",
|
|
811
809
|
/* @__PURE__ */ jsx2("span", { style: { color: "red" }, children: "*" })
|
|
812
810
|
] }),
|
|
813
811
|
/* @__PURE__ */ jsx2(
|
|
814
|
-
|
|
812
|
+
TextField_default,
|
|
815
813
|
{
|
|
816
814
|
fullWidth: true,
|
|
817
815
|
size: "small",
|
|
@@ -823,10 +821,10 @@ function DialingConfigTab({ formData, setFormData }) {
|
|
|
823
821
|
}
|
|
824
822
|
)
|
|
825
823
|
] }),
|
|
826
|
-
/* @__PURE__ */ jsxs(
|
|
827
|
-
/* @__PURE__ */ jsx2(
|
|
824
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
825
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: labelSx, children: "Retry Interval (min)" }),
|
|
828
826
|
/* @__PURE__ */ jsx2(
|
|
829
|
-
|
|
827
|
+
TextField_default,
|
|
830
828
|
{
|
|
831
829
|
fullWidth: true,
|
|
832
830
|
size: "small",
|
|
@@ -838,14 +836,14 @@ function DialingConfigTab({ formData, setFormData }) {
|
|
|
838
836
|
}
|
|
839
837
|
)
|
|
840
838
|
] }),
|
|
841
|
-
/* @__PURE__ */ jsxs(
|
|
842
|
-
/* @__PURE__ */ jsx2(
|
|
843
|
-
/* @__PURE__ */ jsx2(
|
|
844
|
-
|
|
839
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
840
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: labelSx, children: "Agent Type" }),
|
|
841
|
+
/* @__PURE__ */ jsx2(FormControl_default, { fullWidth: true, size: "small", children: /* @__PURE__ */ jsx2(
|
|
842
|
+
Select_default,
|
|
845
843
|
{
|
|
846
844
|
value: formData.agentType,
|
|
847
845
|
onChange: (e) => handleChange("agentType", e.target.value),
|
|
848
|
-
children: AGENT_TYPES.map((t) => /* @__PURE__ */ jsx2(
|
|
846
|
+
children: AGENT_TYPES.map((t) => /* @__PURE__ */ jsx2(MenuItem_default, { value: t, children: t }, t))
|
|
849
847
|
}
|
|
850
848
|
) })
|
|
851
849
|
] })
|
|
@@ -857,16 +855,16 @@ function ScheduleTab({ formData, setFormData }) {
|
|
|
857
855
|
const toggleDay = (day) => setFormData((prev) => __spreadProps(__spreadValues({}, prev), {
|
|
858
856
|
daysOfWeek: prev.daysOfWeek.includes(day) ? prev.daysOfWeek.filter((d) => d !== day) : [...prev.daysOfWeek, day].sort()
|
|
859
857
|
}));
|
|
860
|
-
return /* @__PURE__ */ jsxs(
|
|
861
|
-
/* @__PURE__ */ jsx2(
|
|
862
|
-
/* @__PURE__ */ jsxs(
|
|
863
|
-
/* @__PURE__ */ jsxs(
|
|
864
|
-
/* @__PURE__ */ jsxs(
|
|
858
|
+
return /* @__PURE__ */ jsxs(Box_default, { sx: { p: 2.5 }, children: [
|
|
859
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: sectionTitleSx, children: "Operating Schedule" }),
|
|
860
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { display: "grid", gridTemplateColumns: { xs: "1fr", sm: "1fr 1fr", lg: "1fr 1fr 1fr" }, gap: 2, mb: 2 }, children: [
|
|
861
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
862
|
+
/* @__PURE__ */ jsxs(Typography_default, { sx: labelSx, children: [
|
|
865
863
|
"Start Time ",
|
|
866
864
|
/* @__PURE__ */ jsx2("span", { style: { color: "red" }, children: "*" })
|
|
867
865
|
] }),
|
|
868
866
|
/* @__PURE__ */ jsx2(
|
|
869
|
-
|
|
867
|
+
TextField_default,
|
|
870
868
|
{
|
|
871
869
|
fullWidth: true,
|
|
872
870
|
size: "small",
|
|
@@ -877,13 +875,13 @@ function ScheduleTab({ formData, setFormData }) {
|
|
|
877
875
|
}
|
|
878
876
|
)
|
|
879
877
|
] }),
|
|
880
|
-
/* @__PURE__ */ jsxs(
|
|
881
|
-
/* @__PURE__ */ jsxs(
|
|
878
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
879
|
+
/* @__PURE__ */ jsxs(Typography_default, { sx: labelSx, children: [
|
|
882
880
|
"End Time ",
|
|
883
881
|
/* @__PURE__ */ jsx2("span", { style: { color: "red" }, children: "*" })
|
|
884
882
|
] }),
|
|
885
883
|
/* @__PURE__ */ jsx2(
|
|
886
|
-
|
|
884
|
+
TextField_default,
|
|
887
885
|
{
|
|
888
886
|
fullWidth: true,
|
|
889
887
|
size: "small",
|
|
@@ -895,9 +893,9 @@ function ScheduleTab({ formData, setFormData }) {
|
|
|
895
893
|
)
|
|
896
894
|
] })
|
|
897
895
|
] }),
|
|
898
|
-
/* @__PURE__ */ jsxs(
|
|
899
|
-
/* @__PURE__ */ jsx2(
|
|
900
|
-
/* @__PURE__ */ jsx2(
|
|
896
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { mb: 2 }, children: [
|
|
897
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: labelSx, children: "Timezone" }),
|
|
898
|
+
/* @__PURE__ */ jsx2(FormControl_default, { fullWidth: true, size: "small", children: /* @__PURE__ */ jsx2(Select_default, { value: formData.timezone, onChange: (e) => handleChange("timezone", e.target.value), children: [
|
|
901
899
|
"Etc/UTC",
|
|
902
900
|
"US/Eastern",
|
|
903
901
|
"US/Central",
|
|
@@ -908,12 +906,12 @@ function ScheduleTab({ formData, setFormData }) {
|
|
|
908
906
|
"Asia/Kolkata",
|
|
909
907
|
"Asia/Tokyo",
|
|
910
908
|
"Australia/Sydney"
|
|
911
|
-
].map((tz) => /* @__PURE__ */ jsx2(
|
|
909
|
+
].map((tz) => /* @__PURE__ */ jsx2(MenuItem_default, { value: tz, children: tz }, tz)) }) })
|
|
912
910
|
] }),
|
|
913
|
-
/* @__PURE__ */ jsxs(
|
|
914
|
-
/* @__PURE__ */ jsx2(
|
|
915
|
-
/* @__PURE__ */ jsx2(
|
|
916
|
-
|
|
911
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
912
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: labelSx, children: "Days of Week" }),
|
|
913
|
+
/* @__PURE__ */ jsx2(Box_default, { sx: { display: "flex", gap: 1, flexWrap: "wrap", mt: 0.5 }, children: DAYS_OF_WEEK.map((day) => /* @__PURE__ */ jsx2(
|
|
914
|
+
Chip_default,
|
|
917
915
|
{
|
|
918
916
|
label: day.label,
|
|
919
917
|
onClick: () => toggleDay(day.value),
|
|
@@ -1005,9 +1003,9 @@ function QueueLinkingTab({
|
|
|
1005
1003
|
)
|
|
1006
1004
|
}));
|
|
1007
1005
|
};
|
|
1008
|
-
return /* @__PURE__ */ jsxs(
|
|
1006
|
+
return /* @__PURE__ */ jsxs(Box_default, { sx: { p: 2.5 }, children: [
|
|
1009
1007
|
createOpen && /* @__PURE__ */ jsx2(
|
|
1010
|
-
|
|
1008
|
+
Box_default,
|
|
1011
1009
|
{
|
|
1012
1010
|
sx: {
|
|
1013
1011
|
position: "fixed",
|
|
@@ -1019,19 +1017,19 @@ function QueueLinkingTab({
|
|
|
1019
1017
|
justifyContent: "center"
|
|
1020
1018
|
},
|
|
1021
1019
|
onClick: (e) => e.stopPropagation(),
|
|
1022
|
-
children: /* @__PURE__ */ jsxs(
|
|
1023
|
-
/* @__PURE__ */ jsxs(
|
|
1024
|
-
/* @__PURE__ */ jsx2(
|
|
1025
|
-
/* @__PURE__ */ jsx2(
|
|
1020
|
+
children: /* @__PURE__ */ jsxs(Paper_default, { elevation: 6, sx: { width: { xs: "90vw", sm: 420 }, borderRadius: "16px", overflow: "hidden", boxShadow: "0 8px 32px rgba(26,95,108,0.18)" }, children: [
|
|
1021
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: __spreadProps(__spreadValues({}, dialogHeaderSx), { backgroundColor: "#1A5F6C", color: "#fff" }), children: [
|
|
1022
|
+
/* @__PURE__ */ jsx2(Typography_default, { fontWeight: 700, fontSize: "1rem", fontFamily: "poppins, Arial, sans-serif", children: "Create New Queue" }),
|
|
1023
|
+
/* @__PURE__ */ jsx2(IconButton_default, { size: "small", onClick: () => !creatingQueue && setCreateOpen(false), sx: { color: "#fff" }, children: "\u2715" })
|
|
1026
1024
|
] }),
|
|
1027
|
-
/* @__PURE__ */ jsxs(
|
|
1028
|
-
/* @__PURE__ */ jsxs(
|
|
1029
|
-
/* @__PURE__ */ jsxs(
|
|
1025
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { p: 2.5, display: "flex", flexDirection: "column", gap: 1.5 }, children: [
|
|
1026
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
1027
|
+
/* @__PURE__ */ jsxs(Typography_default, { sx: labelSx, children: [
|
|
1030
1028
|
"Queue Name ",
|
|
1031
1029
|
/* @__PURE__ */ jsx2("span", { style: { color: "red" }, children: "*" })
|
|
1032
1030
|
] }),
|
|
1033
1031
|
/* @__PURE__ */ jsx2(
|
|
1034
|
-
|
|
1032
|
+
TextField_default,
|
|
1035
1033
|
{
|
|
1036
1034
|
fullWidth: true,
|
|
1037
1035
|
size: "small",
|
|
@@ -1041,10 +1039,10 @@ function QueueLinkingTab({
|
|
|
1041
1039
|
}
|
|
1042
1040
|
)
|
|
1043
1041
|
] }),
|
|
1044
|
-
/* @__PURE__ */ jsxs(
|
|
1045
|
-
/* @__PURE__ */ jsx2(
|
|
1042
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
1043
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: labelSx, children: "Description" }),
|
|
1046
1044
|
/* @__PURE__ */ jsx2(
|
|
1047
|
-
|
|
1045
|
+
TextField_default,
|
|
1048
1046
|
{
|
|
1049
1047
|
fullWidth: true,
|
|
1050
1048
|
size: "small",
|
|
@@ -1057,14 +1055,14 @@ function QueueLinkingTab({
|
|
|
1057
1055
|
)
|
|
1058
1056
|
] })
|
|
1059
1057
|
] }),
|
|
1060
|
-
/* @__PURE__ */ jsxs(
|
|
1058
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: dialogFooterSx, children: [
|
|
1061
1059
|
/* @__PURE__ */ jsx2(SDKButton, { variant: "cancel", onClick: () => setCreateOpen(false), disabled: creatingQueue, children: "Cancel" }),
|
|
1062
1060
|
/* @__PURE__ */ jsx2(
|
|
1063
1061
|
SDKButton,
|
|
1064
1062
|
{
|
|
1065
1063
|
onClick: handleCreateQueue,
|
|
1066
1064
|
disabled: creatingQueue,
|
|
1067
|
-
startIcon: creatingQueue ? /* @__PURE__ */ jsx2(
|
|
1065
|
+
startIcon: creatingQueue ? /* @__PURE__ */ jsx2(CircularProgress_default, { size: 14, color: "inherit" }) : void 0,
|
|
1068
1066
|
children: "Create"
|
|
1069
1067
|
}
|
|
1070
1068
|
)
|
|
@@ -1072,26 +1070,26 @@ function QueueLinkingTab({
|
|
|
1072
1070
|
] })
|
|
1073
1071
|
}
|
|
1074
1072
|
),
|
|
1075
|
-
/* @__PURE__ */ jsxs(
|
|
1076
|
-
/* @__PURE__ */ jsx2(
|
|
1073
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { display: "flex", alignItems: "center", justifyContent: "space-between", mb: 2 }, children: [
|
|
1074
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: sectionTitleSx, children: "Linked Queues" }),
|
|
1077
1075
|
/* @__PURE__ */ jsx2(SDKButton, { startIcon: /* @__PURE__ */ jsx2(Add_default, {}), onClick: () => setCreateOpen(true), children: "Create New Queue" })
|
|
1078
1076
|
] }),
|
|
1079
|
-
/* @__PURE__ */ jsxs(
|
|
1077
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: {
|
|
1080
1078
|
display: "flex",
|
|
1081
1079
|
alignItems: { xs: "stretch", sm: "center" },
|
|
1082
1080
|
flexDirection: { xs: "column", sm: "row" },
|
|
1083
1081
|
gap: 1.5,
|
|
1084
1082
|
mb: 2
|
|
1085
1083
|
}, children: [
|
|
1086
|
-
/* @__PURE__ */ jsx2(
|
|
1087
|
-
|
|
1084
|
+
/* @__PURE__ */ jsx2(FormControl_default, { size: "small", sx: { flex: 2 }, children: /* @__PURE__ */ jsx2(
|
|
1085
|
+
Select_default,
|
|
1088
1086
|
{
|
|
1089
1087
|
multiple: true,
|
|
1090
1088
|
value: selectedQueueIds,
|
|
1091
1089
|
onChange: (e) => setSelectedQueueIds(e.target.value),
|
|
1092
1090
|
displayEmpty: true,
|
|
1093
|
-
renderValue: (selected) => selected.length === 0 ? /* @__PURE__ */ jsx2(
|
|
1094
|
-
|
|
1091
|
+
renderValue: (selected) => selected.length === 0 ? /* @__PURE__ */ jsx2(Typography_default, { sx: { color: "#999", fontSize: "0.85rem" }, children: "Select queues to link" }) : /* @__PURE__ */ jsx2(Box_default, { sx: { display: "flex", flexWrap: "wrap", gap: 0.5 }, children: selected.map((id) => /* @__PURE__ */ jsx2(
|
|
1092
|
+
Chip_default,
|
|
1095
1093
|
{
|
|
1096
1094
|
size: "small",
|
|
1097
1095
|
label: queueNames[id] || parentQueueNameMap[id] || `Queue #${id}`,
|
|
@@ -1107,9 +1105,9 @@ function QueueLinkingTab({
|
|
|
1107
1105
|
MenuProps: {
|
|
1108
1106
|
PaperProps: { sx: { maxHeight: 250, borderRadius: "8px", mt: 0.5, boxShadow: "0 4px 20px rgba(0,0,0,0.12)" } }
|
|
1109
1107
|
},
|
|
1110
|
-
children: availableQueues.length === 0 ? /* @__PURE__ */ jsx2(
|
|
1108
|
+
children: availableQueues.length === 0 ? /* @__PURE__ */ jsx2(MenuItem_default, { value: "", disabled: true, children: "No available queues" }) : availableQueues.map((q) => /* @__PURE__ */ jsxs(MenuItem_default, { value: q.id, sx: { py: 0.75, px: 1.5, fontSize: "0.85rem" }, children: [
|
|
1111
1109
|
/* @__PURE__ */ jsx2(
|
|
1112
|
-
|
|
1110
|
+
Checkbox_default,
|
|
1113
1111
|
{
|
|
1114
1112
|
size: "small",
|
|
1115
1113
|
checked: selectedQueueIds.includes(q.id),
|
|
@@ -1125,27 +1123,27 @@ function QueueLinkingTab({
|
|
|
1125
1123
|
) }),
|
|
1126
1124
|
/* @__PURE__ */ jsx2(SDKButton, { onClick: handleAddQueues, disabled: selectedQueueIds.length === 0, sx: { whiteSpace: "nowrap" }, children: "Add To List" })
|
|
1127
1125
|
] }),
|
|
1128
|
-
queueLinks.length === 0 ? /* @__PURE__ */ jsx2(
|
|
1129
|
-
/* @__PURE__ */ jsx2(
|
|
1130
|
-
/* @__PURE__ */ jsx2(
|
|
1131
|
-
/* @__PURE__ */ jsx2(
|
|
1132
|
-
/* @__PURE__ */ jsx2(
|
|
1133
|
-
/* @__PURE__ */ jsx2(
|
|
1126
|
+
queueLinks.length === 0 ? /* @__PURE__ */ jsx2(Paper_default, { variant: "outlined", sx: { p: 3, textAlign: "center", borderRadius: 2, borderStyle: "dashed" }, children: /* @__PURE__ */ jsx2(Typography_default, { sx: { color: "#999", fontSize: "0.9rem" }, children: "No queues linked yet. Select queues above to add." }) }) : /* @__PURE__ */ jsx2(TableContainer_default, { component: Paper_default, variant: "outlined", sx: { borderRadius: 2, overflow: "visible" }, children: /* @__PURE__ */ jsxs(Table_default, { size: "small", children: [
|
|
1127
|
+
/* @__PURE__ */ jsx2(TableHead_default, { children: /* @__PURE__ */ jsxs(TableRow_default, { sx: { backgroundColor: "#f1f1f1" }, children: [
|
|
1128
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: headCellSx, children: "Queue Name" }),
|
|
1129
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: headCellSx, children: "Priority Override" }),
|
|
1130
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: headCellSx, children: "Min Wait Before Callback" }),
|
|
1131
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: __spreadProps(__spreadValues({}, headCellSx), { textAlign: "right" }), children: "Action" })
|
|
1134
1132
|
] }) }),
|
|
1135
|
-
/* @__PURE__ */ jsx2(
|
|
1133
|
+
/* @__PURE__ */ jsx2(TableBody_default, { children: queueLinks.map((q) => {
|
|
1136
1134
|
var _a;
|
|
1137
|
-
return /* @__PURE__ */ jsxs(
|
|
1138
|
-
/* @__PURE__ */ jsx2(
|
|
1139
|
-
/* @__PURE__ */ jsx2(
|
|
1140
|
-
|
|
1135
|
+
return /* @__PURE__ */ jsxs(TableRow_default, { sx: tableRowSx, children: [
|
|
1136
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: bodyCellSx, children: queueNames[q.queueId] || parentQueueNameMap[q.queueId] || `Queue #${q.queueId}` }),
|
|
1137
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: bodyCellSx, children: /* @__PURE__ */ jsx2(FormControl_default, { size: "small", sx: { width: 120 }, children: /* @__PURE__ */ jsx2(
|
|
1138
|
+
Select_default,
|
|
1141
1139
|
{
|
|
1142
1140
|
value: (_a = q.priorityOverride) != null ? _a : 5,
|
|
1143
1141
|
onChange: (e) => handleCellUpdate(q.queueId, "priorityOverride", String(e.target.value)),
|
|
1144
|
-
children: LEAD_PRIORITY_OPTIONS.map((opt) => /* @__PURE__ */ jsx2(
|
|
1142
|
+
children: LEAD_PRIORITY_OPTIONS.map((opt) => /* @__PURE__ */ jsx2(MenuItem_default, { value: opt.value, children: opt.label }, opt.label))
|
|
1145
1143
|
}
|
|
1146
1144
|
) }) }),
|
|
1147
|
-
/* @__PURE__ */ jsx2(
|
|
1148
|
-
|
|
1145
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: bodyCellSx, children: /* @__PURE__ */ jsx2(
|
|
1146
|
+
TextField_default,
|
|
1149
1147
|
{
|
|
1150
1148
|
size: "small",
|
|
1151
1149
|
type: "number",
|
|
@@ -1154,13 +1152,13 @@ function QueueLinkingTab({
|
|
|
1154
1152
|
slotProps: {
|
|
1155
1153
|
htmlInput: { min: 0, style: { fontSize: "0.85rem", padding: "4px 8px" } },
|
|
1156
1154
|
input: {
|
|
1157
|
-
endAdornment: /* @__PURE__ */ jsx2(
|
|
1155
|
+
endAdornment: /* @__PURE__ */ jsx2(InputAdornment_default, { position: "end", children: /* @__PURE__ */ jsx2(Typography_default, { sx: { fontSize: "0.75rem", color: "#666" }, children: "s" }) })
|
|
1158
1156
|
}
|
|
1159
1157
|
},
|
|
1160
1158
|
sx: { width: 100, "& .MuiOutlinedInput-root": { borderRadius: "4px" } }
|
|
1161
1159
|
}
|
|
1162
1160
|
) }),
|
|
1163
|
-
/* @__PURE__ */ jsx2(
|
|
1161
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: __spreadProps(__spreadValues({}, bodyCellSx), { textAlign: "right" }), children: /* @__PURE__ */ jsx2(SDKButton, { variant: "danger", size: "small", onClick: () => handleRemoveQueue(q.queueId), children: "Remove" }) })
|
|
1164
1162
|
] }, q.queueId);
|
|
1165
1163
|
}) })
|
|
1166
1164
|
] }) })
|
|
@@ -1184,7 +1182,7 @@ function LeadsTabInDialog({
|
|
|
1184
1182
|
if (editingCampaign) fetchLeads(editingCampaign.id, { page: 1, pageSize: 100 });
|
|
1185
1183
|
}, [editingCampaign, fetchLeads]);
|
|
1186
1184
|
if (!editingCampaign) {
|
|
1187
|
-
return /* @__PURE__ */ jsx2(
|
|
1185
|
+
return /* @__PURE__ */ jsx2(Box_default, { sx: { p: 4, textAlign: "center" }, children: /* @__PURE__ */ jsx2(Typography_default, { sx: { color: "#999", fontSize: "0.9rem", fontFamily: "poppins, Arial, sans-serif" }, children: "Save the campaign first, then you can add leads." }) });
|
|
1188
1186
|
}
|
|
1189
1187
|
const handleAddLead = async () => {
|
|
1190
1188
|
var _a2, _b, _c;
|
|
@@ -1237,17 +1235,17 @@ function LeadsTabInDialog({
|
|
|
1237
1235
|
return !search || ((_a2 = l.callerName) == null ? void 0 : _a2.toLowerCase().includes(search.toLowerCase())) || ((_b = l.phoneNumber) == null ? void 0 : _b.includes(search));
|
|
1238
1236
|
}
|
|
1239
1237
|
);
|
|
1240
|
-
return /* @__PURE__ */ jsxs(
|
|
1241
|
-
/* @__PURE__ */ jsx2(
|
|
1242
|
-
/* @__PURE__ */ jsxs(
|
|
1243
|
-
/* @__PURE__ */ jsxs(
|
|
1244
|
-
/* @__PURE__ */ jsxs(
|
|
1245
|
-
/* @__PURE__ */ jsxs(
|
|
1238
|
+
return /* @__PURE__ */ jsxs(Box_default, { sx: { p: 2.5 }, children: [
|
|
1239
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: sectionTitleSx, children: "Add Lead Manually" }),
|
|
1240
|
+
/* @__PURE__ */ jsxs(Paper_default, { variant: "outlined", sx: { p: 2, mb: 2.5, borderRadius: 2 }, children: [
|
|
1241
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { display: "grid", gridTemplateColumns: { xs: "1fr", sm: "1fr 1fr", lg: "1fr 1fr 1fr" }, gap: 2, mb: 2 }, children: [
|
|
1242
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
1243
|
+
/* @__PURE__ */ jsxs(Typography_default, { sx: labelSx, children: [
|
|
1246
1244
|
"Phone Number ",
|
|
1247
1245
|
/* @__PURE__ */ jsx2("span", { style: { color: "red" }, children: "*" })
|
|
1248
1246
|
] }),
|
|
1249
1247
|
/* @__PURE__ */ jsx2(
|
|
1250
|
-
|
|
1248
|
+
TextField_default,
|
|
1251
1249
|
{
|
|
1252
1250
|
fullWidth: true,
|
|
1253
1251
|
size: "small",
|
|
@@ -1260,10 +1258,10 @@ function LeadsTabInDialog({
|
|
|
1260
1258
|
}
|
|
1261
1259
|
)
|
|
1262
1260
|
] }),
|
|
1263
|
-
/* @__PURE__ */ jsxs(
|
|
1264
|
-
/* @__PURE__ */ jsx2(
|
|
1261
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
1262
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: labelSx, children: "Caller Name" }),
|
|
1265
1263
|
/* @__PURE__ */ jsx2(
|
|
1266
|
-
|
|
1264
|
+
TextField_default,
|
|
1267
1265
|
{
|
|
1268
1266
|
fullWidth: true,
|
|
1269
1267
|
size: "small",
|
|
@@ -1273,10 +1271,10 @@ function LeadsTabInDialog({
|
|
|
1273
1271
|
}
|
|
1274
1272
|
)
|
|
1275
1273
|
] }),
|
|
1276
|
-
/* @__PURE__ */ jsxs(
|
|
1277
|
-
/* @__PURE__ */ jsx2(
|
|
1274
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
1275
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: labelSx, children: "Source" }),
|
|
1278
1276
|
/* @__PURE__ */ jsx2(
|
|
1279
|
-
|
|
1277
|
+
TextField_default,
|
|
1280
1278
|
{
|
|
1281
1279
|
fullWidth: true,
|
|
1282
1280
|
size: "small",
|
|
@@ -1286,21 +1284,21 @@ function LeadsTabInDialog({
|
|
|
1286
1284
|
}
|
|
1287
1285
|
)
|
|
1288
1286
|
] }),
|
|
1289
|
-
/* @__PURE__ */ jsxs(
|
|
1290
|
-
/* @__PURE__ */ jsx2(
|
|
1291
|
-
/* @__PURE__ */ jsx2(
|
|
1292
|
-
|
|
1287
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
1288
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: labelSx, children: "Priority" }),
|
|
1289
|
+
/* @__PURE__ */ jsx2(FormControl_default, { fullWidth: true, size: "small", children: /* @__PURE__ */ jsx2(
|
|
1290
|
+
Select_default,
|
|
1293
1291
|
{
|
|
1294
1292
|
value: (_a = leadForm.priority) != null ? _a : 5,
|
|
1295
1293
|
onChange: (e) => setLeadForm((p) => __spreadProps(__spreadValues({}, p), { priority: Number(e.target.value) })),
|
|
1296
|
-
children: LEAD_PRIORITY_OPTIONS.map((opt) => /* @__PURE__ */ jsx2(
|
|
1294
|
+
children: LEAD_PRIORITY_OPTIONS.map((opt) => /* @__PURE__ */ jsx2(MenuItem_default, { value: opt.value, children: opt.label }, opt.label))
|
|
1297
1295
|
}
|
|
1298
1296
|
) })
|
|
1299
1297
|
] }),
|
|
1300
|
-
/* @__PURE__ */ jsxs(
|
|
1301
|
-
/* @__PURE__ */ jsx2(
|
|
1298
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { gridColumn: "1 / -1" }, children: [
|
|
1299
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: labelSx, children: "Notes" }),
|
|
1302
1300
|
/* @__PURE__ */ jsx2(
|
|
1303
|
-
|
|
1301
|
+
TextField_default,
|
|
1304
1302
|
{
|
|
1305
1303
|
fullWidth: true,
|
|
1306
1304
|
size: "small",
|
|
@@ -1314,19 +1312,19 @@ function LeadsTabInDialog({
|
|
|
1314
1312
|
)
|
|
1315
1313
|
] })
|
|
1316
1314
|
] }),
|
|
1317
|
-
/* @__PURE__ */ jsx2(
|
|
1315
|
+
/* @__PURE__ */ jsx2(Box_default, { sx: { display: "flex", justifyContent: "flex-end" }, children: /* @__PURE__ */ jsx2(
|
|
1318
1316
|
SDKButton,
|
|
1319
1317
|
{
|
|
1320
1318
|
onClick: handleAddLead,
|
|
1321
1319
|
disabled: adding,
|
|
1322
|
-
startIcon: adding ? /* @__PURE__ */ jsx2(
|
|
1320
|
+
startIcon: adding ? /* @__PURE__ */ jsx2(CircularProgress_default, { size: 14, color: "inherit" }) : void 0,
|
|
1323
1321
|
children: "Add Lead"
|
|
1324
1322
|
}
|
|
1325
1323
|
) })
|
|
1326
1324
|
] }),
|
|
1327
|
-
/* @__PURE__ */ jsx2(
|
|
1328
|
-
/* @__PURE__ */ jsxs(
|
|
1329
|
-
/* @__PURE__ */ jsxs(
|
|
1325
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: sectionTitleSx, children: "Upload Leads from File" }),
|
|
1326
|
+
/* @__PURE__ */ jsxs(Paper_default, { variant: "outlined", sx: { p: 2, mb: 2.5, borderRadius: 2 }, children: [
|
|
1327
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { display: "flex", alignItems: "center", gap: 1.5, flexWrap: "wrap" }, children: [
|
|
1330
1328
|
/* @__PURE__ */ jsx2(SDKButton, { variant: "outlined", startIcon: /* @__PURE__ */ jsx2(UploadFile_default, {}), onClick: () => {
|
|
1331
1329
|
var _a2;
|
|
1332
1330
|
return (_a2 = uploadRef.current) == null ? void 0 : _a2.click();
|
|
@@ -1350,7 +1348,7 @@ function LeadsTabInDialog({
|
|
|
1350
1348
|
}
|
|
1351
1349
|
}
|
|
1352
1350
|
),
|
|
1353
|
-
/* @__PURE__ */ jsx2(
|
|
1351
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: { fontSize: "0.82rem", color: "#666", flex: 1, fontFamily: "poppins, Arial, sans-serif" }, children: uploadFile ? uploadFile.name : "No file chosen" }),
|
|
1354
1352
|
uploadFile && /* @__PURE__ */ jsx2(
|
|
1355
1353
|
SDKButton,
|
|
1356
1354
|
{
|
|
@@ -1365,56 +1363,56 @@ function LeadsTabInDialog({
|
|
|
1365
1363
|
),
|
|
1366
1364
|
/* @__PURE__ */ jsx2(SDKButton, { variant: "outlined", startIcon: /* @__PURE__ */ jsx2(Download_default, {}), onClick: handleDownload, children: "Sample Template" })
|
|
1367
1365
|
] }),
|
|
1368
|
-
/* @__PURE__ */ jsx2(
|
|
1366
|
+
/* @__PURE__ */ jsx2(Box_default, { sx: { display: "flex", justifyContent: "flex-end", mt: 1.5 }, children: /* @__PURE__ */ jsx2(
|
|
1369
1367
|
SDKButton,
|
|
1370
1368
|
{
|
|
1371
1369
|
onClick: handleUpload,
|
|
1372
1370
|
disabled: uploading || !uploadFile,
|
|
1373
|
-
startIcon: uploading ? /* @__PURE__ */ jsx2(
|
|
1371
|
+
startIcon: uploading ? /* @__PURE__ */ jsx2(CircularProgress_default, { size: 14, color: "inherit" }) : void 0,
|
|
1374
1372
|
children: "Upload"
|
|
1375
1373
|
}
|
|
1376
1374
|
) })
|
|
1377
1375
|
] }),
|
|
1378
|
-
/* @__PURE__ */ jsxs(
|
|
1379
|
-
/* @__PURE__ */ jsxs(
|
|
1376
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { display: "flex", alignItems: "center", justifyContent: "space-between", mb: 1.5 }, children: [
|
|
1377
|
+
/* @__PURE__ */ jsxs(Typography_default, { sx: sectionTitleSx, children: [
|
|
1380
1378
|
"Leads (",
|
|
1381
1379
|
leads.length,
|
|
1382
1380
|
")"
|
|
1383
1381
|
] }),
|
|
1384
1382
|
/* @__PURE__ */ jsx2(
|
|
1385
|
-
|
|
1383
|
+
OutlinedInput_default,
|
|
1386
1384
|
{
|
|
1387
1385
|
size: "small",
|
|
1388
1386
|
value: search,
|
|
1389
1387
|
onChange: (e) => setSearch(e.target.value),
|
|
1390
1388
|
placeholder: "Search...",
|
|
1391
1389
|
sx: { width: 200, fontSize: "0.85rem", height: 34, borderRadius: "20px" },
|
|
1392
|
-
startAdornment: /* @__PURE__ */ jsx2(
|
|
1390
|
+
startAdornment: /* @__PURE__ */ jsx2(InputAdornment_default, { position: "start", children: /* @__PURE__ */ jsx2(Search_default, { sx: { fontSize: 16, color: "#aaa" } }) })
|
|
1393
1391
|
}
|
|
1394
1392
|
)
|
|
1395
1393
|
] }),
|
|
1396
|
-
filtered.length === 0 ? /* @__PURE__ */ jsx2(
|
|
1397
|
-
/* @__PURE__ */ jsx2(
|
|
1398
|
-
/* @__PURE__ */ jsx2(
|
|
1399
|
-
/* @__PURE__ */ jsx2(
|
|
1400
|
-
/* @__PURE__ */ jsx2(
|
|
1401
|
-
/* @__PURE__ */ jsx2(
|
|
1402
|
-
/* @__PURE__ */ jsx2(
|
|
1403
|
-
/* @__PURE__ */ jsx2(
|
|
1404
|
-
/* @__PURE__ */ jsx2(
|
|
1405
|
-
showVoicemail && /* @__PURE__ */ jsx2(
|
|
1394
|
+
filtered.length === 0 ? /* @__PURE__ */ jsx2(Paper_default, { variant: "outlined", sx: { p: 3, textAlign: "center", borderRadius: 2, borderStyle: "dashed" }, children: /* @__PURE__ */ jsx2(Typography_default, { sx: { color: "#999", fontSize: "0.9rem" }, children: leads.length === 0 ? "No leads yet." : "No leads match your search." }) }) : /* @__PURE__ */ jsx2(TableContainer_default, { component: Paper_default, variant: "outlined", sx: { borderRadius: 2, overflow: "visible" }, children: /* @__PURE__ */ jsxs(Table_default, { size: "small", children: [
|
|
1395
|
+
/* @__PURE__ */ jsx2(TableHead_default, { children: /* @__PURE__ */ jsxs(TableRow_default, { sx: { backgroundColor: "#f1f1f1" }, children: [
|
|
1396
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: headCellSx, children: "Phone Number" }),
|
|
1397
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: headCellSx, children: "Status" }),
|
|
1398
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: headCellSx, children: "Source" }),
|
|
1399
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: headCellSx, children: "Attempts" }),
|
|
1400
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: headCellSx, children: "Last Outcome" }),
|
|
1401
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: headCellSx, children: "Notes" }),
|
|
1402
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: headCellSx, children: "Outcome" }),
|
|
1403
|
+
showVoicemail && /* @__PURE__ */ jsx2(TableCell_default, { sx: headCellSx, children: "Voice Mail" })
|
|
1406
1404
|
] }) }),
|
|
1407
|
-
/* @__PURE__ */ jsx2(
|
|
1405
|
+
/* @__PURE__ */ jsx2(TableBody_default, { children: filtered.map((lead) => {
|
|
1408
1406
|
var _a2;
|
|
1409
|
-
return /* @__PURE__ */ jsxs(
|
|
1410
|
-
/* @__PURE__ */ jsx2(
|
|
1411
|
-
/* @__PURE__ */ jsx2(
|
|
1412
|
-
/* @__PURE__ */ jsx2(
|
|
1413
|
-
/* @__PURE__ */ jsx2(
|
|
1414
|
-
/* @__PURE__ */ jsx2(
|
|
1415
|
-
/* @__PURE__ */ jsx2(
|
|
1416
|
-
/* @__PURE__ */ jsx2(
|
|
1417
|
-
showVoicemail && /* @__PURE__ */ jsx2(
|
|
1407
|
+
return /* @__PURE__ */ jsxs(TableRow_default, { sx: tableRowSx, children: [
|
|
1408
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: bodyCellSx, children: lead.phoneNumber }),
|
|
1409
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: bodyCellSx, children: /* @__PURE__ */ jsx2(Chip_default, { label: lead.status || "pending", size: "small", sx: leadStatusChipSx(lead.status) }) }),
|
|
1410
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: bodyCellSx, children: lead.source || "" }),
|
|
1411
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: bodyCellSx, children: (_a2 = lead.attemptCount) != null ? _a2 : 0 }),
|
|
1412
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: bodyCellSx, children: lead.lastOutcome || "" }),
|
|
1413
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: __spreadProps(__spreadValues({}, bodyCellSx), { maxWidth: 200, overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }), children: lead.notes ? /* @__PURE__ */ jsx2(Tooltip_default, { title: lead.notes, arrow: true, placement: "top", children: /* @__PURE__ */ jsx2("span", { children: lead.notes }) }) : "" }),
|
|
1414
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: bodyCellSx, children: lead.lastReason || "" }),
|
|
1415
|
+
showVoicemail && /* @__PURE__ */ jsx2(TableCell_default, { sx: __spreadProps(__spreadValues({}, bodyCellSx), { minWidth: 180 }), children: lead.originalCallId ? /* @__PURE__ */ jsx2(CallRecording, { callUuid: lead.originalCallId, recordingPath: lead.voicemail, iconOnly: true }) : "" })
|
|
1418
1416
|
] }, lead.id);
|
|
1419
1417
|
}) })
|
|
1420
1418
|
] }) })
|
|
@@ -1485,7 +1483,7 @@ var CampaignDialog = memo(function CampaignDialog2({
|
|
|
1485
1483
|
setTab(newTab);
|
|
1486
1484
|
};
|
|
1487
1485
|
return /* @__PURE__ */ jsx2(
|
|
1488
|
-
|
|
1486
|
+
Box_default,
|
|
1489
1487
|
{
|
|
1490
1488
|
sx: {
|
|
1491
1489
|
position: "fixed",
|
|
@@ -1498,7 +1496,7 @@ var CampaignDialog = memo(function CampaignDialog2({
|
|
|
1498
1496
|
},
|
|
1499
1497
|
onClick: (e) => e.stopPropagation(),
|
|
1500
1498
|
children: /* @__PURE__ */ jsxs(
|
|
1501
|
-
|
|
1499
|
+
Paper_default,
|
|
1502
1500
|
{
|
|
1503
1501
|
elevation: 6,
|
|
1504
1502
|
sx: {
|
|
@@ -1511,16 +1509,16 @@ var CampaignDialog = memo(function CampaignDialog2({
|
|
|
1511
1509
|
boxShadow: "0 8px 32px rgba(26,95,108,0.18)"
|
|
1512
1510
|
},
|
|
1513
1511
|
children: [
|
|
1514
|
-
/* @__PURE__ */ jsxs(
|
|
1512
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: __spreadProps(__spreadValues({}, dialogHeaderSx), {
|
|
1515
1513
|
backgroundColor: "#1A5F6C",
|
|
1516
1514
|
color: "#fff",
|
|
1517
1515
|
"& .MuiIconButton-root": { color: "#fff" }
|
|
1518
1516
|
}), children: [
|
|
1519
|
-
/* @__PURE__ */ jsx2(
|
|
1520
|
-
/* @__PURE__ */ jsx2(
|
|
1517
|
+
/* @__PURE__ */ jsx2(Typography_default, { fontWeight: 700, fontSize: "1rem", fontFamily: "poppins, Arial, sans-serif", children: editingCampaign ? "Edit Campaign" : "Create Campaign" }),
|
|
1518
|
+
/* @__PURE__ */ jsx2(IconButton_default, { size: "small", onClick: onClose, sx: { color: "#fff" }, children: "\u2715" })
|
|
1521
1519
|
] }),
|
|
1522
1520
|
/* @__PURE__ */ jsx2(
|
|
1523
|
-
|
|
1521
|
+
Tabs_default,
|
|
1524
1522
|
{
|
|
1525
1523
|
value: tab,
|
|
1526
1524
|
onChange: (_, v) => handleTabChange(v),
|
|
@@ -1539,10 +1537,10 @@ var CampaignDialog = memo(function CampaignDialog2({
|
|
|
1539
1537
|
"& .Mui-selected": { color: "#1A5F6C" }
|
|
1540
1538
|
},
|
|
1541
1539
|
TabIndicatorProps: { style: { height: 3, backgroundColor: "#1A5F6C", borderRadius: "3px 3px 0 0" } },
|
|
1542
|
-
children: TAB_LABELS.map((label, i) => /* @__PURE__ */ jsx2(
|
|
1540
|
+
children: TAB_LABELS.map((label, i) => /* @__PURE__ */ jsx2(Tab_default, { label, value: i, disabled: i === 4 && leadsTabDisabled }, label))
|
|
1543
1541
|
}
|
|
1544
1542
|
),
|
|
1545
|
-
/* @__PURE__ */ jsxs(
|
|
1543
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { flex: 1, overflowY: "auto", minHeight: 380 }, children: [
|
|
1546
1544
|
tab === 0 && /* @__PURE__ */ jsx2(BasicInfoTab, { formData, setFormData, isEditMode: !!editingCampaign }),
|
|
1547
1545
|
tab === 1 && /* @__PURE__ */ jsx2(DialingConfigTab, { formData, setFormData }),
|
|
1548
1546
|
tab === 2 && /* @__PURE__ */ jsx2(ScheduleTab, { formData, setFormData }),
|
|
@@ -1564,7 +1562,7 @@ var CampaignDialog = memo(function CampaignDialog2({
|
|
|
1564
1562
|
}
|
|
1565
1563
|
)
|
|
1566
1564
|
] }),
|
|
1567
|
-
/* @__PURE__ */ jsxs(
|
|
1565
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: dialogFooterSx, children: [
|
|
1568
1566
|
/* @__PURE__ */ jsx2(SDKButton, { variant: "cancel", onClick: onClose, children: "Cancel" }),
|
|
1569
1567
|
tab > 0 && /* @__PURE__ */ jsx2(SDKButton, { variant: "outlined", onClick: () => setTab((t) => t - 1), children: "Back" }),
|
|
1570
1568
|
tab < lastSaveTab && /* @__PURE__ */ jsx2(SDKButton, { onClick: () => handleTabChange(tab + 1), children: "Next" }),
|
|
@@ -1581,7 +1579,7 @@ var CampaignDialog = memo(function CampaignDialog2({
|
|
|
1581
1579
|
{
|
|
1582
1580
|
onClick: onSave,
|
|
1583
1581
|
disabled: saving || !isDirty,
|
|
1584
|
-
startIcon: saving ? /* @__PURE__ */ jsx2(
|
|
1582
|
+
startIcon: saving ? /* @__PURE__ */ jsx2(CircularProgress_default, { size: 14, color: "inherit" }) : void 0,
|
|
1585
1583
|
children: editingCampaign ? "Update" : "Create"
|
|
1586
1584
|
}
|
|
1587
1585
|
)
|
|
@@ -1606,7 +1604,7 @@ var AddLeadDialog = memo(function AddLeadDialog2({
|
|
|
1606
1604
|
if (!open) return null;
|
|
1607
1605
|
const phoneError = data.phoneNumber ? validatePhone(data.phoneNumber) : null;
|
|
1608
1606
|
return /* @__PURE__ */ jsx2(
|
|
1609
|
-
|
|
1607
|
+
Box_default,
|
|
1610
1608
|
{
|
|
1611
1609
|
sx: {
|
|
1612
1610
|
position: "fixed",
|
|
@@ -1618,19 +1616,19 @@ var AddLeadDialog = memo(function AddLeadDialog2({
|
|
|
1618
1616
|
justifyContent: "center"
|
|
1619
1617
|
},
|
|
1620
1618
|
onClick: (e) => e.stopPropagation(),
|
|
1621
|
-
children: /* @__PURE__ */ jsxs(
|
|
1622
|
-
/* @__PURE__ */ jsxs(
|
|
1623
|
-
/* @__PURE__ */ jsx2(
|
|
1624
|
-
/* @__PURE__ */ jsx2(
|
|
1619
|
+
children: /* @__PURE__ */ jsxs(Paper_default, { elevation: 6, sx: { width: { xs: "95vw", sm: 560, lg: 720 }, borderRadius: "16px", overflow: "hidden", boxShadow: "0 8px 32px rgba(26,95,108,0.18)" }, children: [
|
|
1620
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: __spreadProps(__spreadValues({}, dialogHeaderSx), { backgroundColor: "#1A5F6C", color: "#fff" }), children: [
|
|
1621
|
+
/* @__PURE__ */ jsx2(Typography_default, { fontWeight: 700, fontSize: "1rem", fontFamily: "poppins, Arial, sans-serif", children: "Add Lead" }),
|
|
1622
|
+
/* @__PURE__ */ jsx2(IconButton_default, { size: "small", onClick: onClose, sx: { color: "#fff" }, children: "\u2715" })
|
|
1625
1623
|
] }),
|
|
1626
|
-
/* @__PURE__ */ jsx2(
|
|
1627
|
-
/* @__PURE__ */ jsxs(
|
|
1628
|
-
/* @__PURE__ */ jsxs(
|
|
1624
|
+
/* @__PURE__ */ jsx2(Box_default, { sx: { p: 2.5 }, children: /* @__PURE__ */ jsxs(Box_default, { sx: { display: "grid", gridTemplateColumns: { xs: "1fr", sm: "1fr 1fr", lg: "1fr 1fr 1fr" }, gap: 2 }, children: [
|
|
1625
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
1626
|
+
/* @__PURE__ */ jsxs(Typography_default, { sx: labelSx, children: [
|
|
1629
1627
|
"Phone Number ",
|
|
1630
1628
|
/* @__PURE__ */ jsx2("span", { style: { color: "red" }, children: "*" })
|
|
1631
1629
|
] }),
|
|
1632
1630
|
/* @__PURE__ */ jsx2(
|
|
1633
|
-
|
|
1631
|
+
TextField_default,
|
|
1634
1632
|
{
|
|
1635
1633
|
fullWidth: true,
|
|
1636
1634
|
size: "small",
|
|
@@ -1643,10 +1641,10 @@ var AddLeadDialog = memo(function AddLeadDialog2({
|
|
|
1643
1641
|
}
|
|
1644
1642
|
)
|
|
1645
1643
|
] }),
|
|
1646
|
-
/* @__PURE__ */ jsxs(
|
|
1647
|
-
/* @__PURE__ */ jsx2(
|
|
1644
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
1645
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: labelSx, children: "Caller Name" }),
|
|
1648
1646
|
/* @__PURE__ */ jsx2(
|
|
1649
|
-
|
|
1647
|
+
TextField_default,
|
|
1650
1648
|
{
|
|
1651
1649
|
fullWidth: true,
|
|
1652
1650
|
size: "small",
|
|
@@ -1656,10 +1654,10 @@ var AddLeadDialog = memo(function AddLeadDialog2({
|
|
|
1656
1654
|
}
|
|
1657
1655
|
)
|
|
1658
1656
|
] }),
|
|
1659
|
-
/* @__PURE__ */ jsxs(
|
|
1660
|
-
/* @__PURE__ */ jsx2(
|
|
1657
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
1658
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: labelSx, children: "Source" }),
|
|
1661
1659
|
/* @__PURE__ */ jsx2(
|
|
1662
|
-
|
|
1660
|
+
TextField_default,
|
|
1663
1661
|
{
|
|
1664
1662
|
fullWidth: true,
|
|
1665
1663
|
size: "small",
|
|
@@ -1669,21 +1667,21 @@ var AddLeadDialog = memo(function AddLeadDialog2({
|
|
|
1669
1667
|
}
|
|
1670
1668
|
)
|
|
1671
1669
|
] }),
|
|
1672
|
-
/* @__PURE__ */ jsxs(
|
|
1673
|
-
/* @__PURE__ */ jsx2(
|
|
1674
|
-
/* @__PURE__ */ jsx2(
|
|
1675
|
-
|
|
1670
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
1671
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: labelSx, children: "Priority" }),
|
|
1672
|
+
/* @__PURE__ */ jsx2(FormControl_default, { fullWidth: true, size: "small", children: /* @__PURE__ */ jsx2(
|
|
1673
|
+
Select_default,
|
|
1676
1674
|
{
|
|
1677
1675
|
value: (_a = data.priority) != null ? _a : 5,
|
|
1678
1676
|
onChange: (e) => onChange(__spreadProps(__spreadValues({}, data), { priority: Number(e.target.value) })),
|
|
1679
|
-
children: LEAD_PRIORITY_OPTIONS.map((o) => /* @__PURE__ */ jsx2(
|
|
1677
|
+
children: LEAD_PRIORITY_OPTIONS.map((o) => /* @__PURE__ */ jsx2(MenuItem_default, { value: o.value, children: o.label }, o.label))
|
|
1680
1678
|
}
|
|
1681
1679
|
) })
|
|
1682
1680
|
] }),
|
|
1683
|
-
/* @__PURE__ */ jsxs(
|
|
1684
|
-
/* @__PURE__ */ jsx2(
|
|
1681
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { gridColumn: "1 / -1" }, children: [
|
|
1682
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: labelSx, children: "Notes" }),
|
|
1685
1683
|
/* @__PURE__ */ jsx2(
|
|
1686
|
-
|
|
1684
|
+
TextField_default,
|
|
1687
1685
|
{
|
|
1688
1686
|
fullWidth: true,
|
|
1689
1687
|
size: "small",
|
|
@@ -1697,14 +1695,14 @@ var AddLeadDialog = memo(function AddLeadDialog2({
|
|
|
1697
1695
|
)
|
|
1698
1696
|
] })
|
|
1699
1697
|
] }) }),
|
|
1700
|
-
/* @__PURE__ */ jsxs(
|
|
1698
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: dialogFooterSx, children: [
|
|
1701
1699
|
/* @__PURE__ */ jsx2(SDKButton, { variant: "cancel", onClick: onClose, children: "Cancel" }),
|
|
1702
1700
|
/* @__PURE__ */ jsx2(
|
|
1703
1701
|
SDKButton,
|
|
1704
1702
|
{
|
|
1705
1703
|
onClick: onSave,
|
|
1706
1704
|
disabled: saving,
|
|
1707
|
-
startIcon: saving ? /* @__PURE__ */ jsx2(
|
|
1705
|
+
startIcon: saving ? /* @__PURE__ */ jsx2(CircularProgress_default, { size: 14, color: "inherit" }) : void 0,
|
|
1708
1706
|
children: "Add Lead"
|
|
1709
1707
|
}
|
|
1710
1708
|
)
|
|
@@ -1723,17 +1721,17 @@ function ConfirmDialog({
|
|
|
1723
1721
|
}) {
|
|
1724
1722
|
if (!open) return null;
|
|
1725
1723
|
return /* @__PURE__ */ jsx2(
|
|
1726
|
-
|
|
1724
|
+
Box_default,
|
|
1727
1725
|
{
|
|
1728
1726
|
sx: { position: "fixed", inset: 0, zIndex: 1500, backgroundColor: "rgba(0,0,0,0.45)", display: "flex", alignItems: "center", justifyContent: "center" },
|
|
1729
1727
|
onClick: (e) => e.stopPropagation(),
|
|
1730
|
-
children: /* @__PURE__ */ jsxs(
|
|
1731
|
-
/* @__PURE__ */ jsxs(
|
|
1732
|
-
/* @__PURE__ */ jsx2(
|
|
1733
|
-
/* @__PURE__ */ jsx2(
|
|
1728
|
+
children: /* @__PURE__ */ jsxs(Paper_default, { elevation: 6, sx: { width: { xs: "90vw", sm: 400 }, borderRadius: "16px", overflow: "hidden", boxShadow: "0 8px 32px rgba(0,0,0,0.18)" }, children: [
|
|
1729
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: __spreadProps(__spreadValues({}, dialogHeaderSx), { borderBottom: "none", pb: 0 }), children: [
|
|
1730
|
+
/* @__PURE__ */ jsx2(Typography_default, { fontWeight: 700, fontSize: "1rem", fontFamily: "poppins, Arial, sans-serif", children: title }),
|
|
1731
|
+
/* @__PURE__ */ jsx2(IconButton_default, { size: "small", onClick: onClose, children: "\u2715" })
|
|
1734
1732
|
] }),
|
|
1735
|
-
/* @__PURE__ */ jsx2(
|
|
1736
|
-
/* @__PURE__ */ jsxs(
|
|
1733
|
+
/* @__PURE__ */ jsx2(Box_default, { sx: { px: 2.5, py: 1.5 }, children: /* @__PURE__ */ jsx2(Typography_default, { fontSize: "0.85rem", color: "#555", fontFamily: "poppins, Arial, sans-serif", children: message }) }),
|
|
1734
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: dialogFooterSx, children: [
|
|
1737
1735
|
/* @__PURE__ */ jsx2(SDKButton, { variant: "cancel", onClick: onClose, children: "Cancel" }),
|
|
1738
1736
|
/* @__PURE__ */ jsx2(
|
|
1739
1737
|
SDKButton,
|
|
@@ -1741,7 +1739,7 @@ function ConfirmDialog({
|
|
|
1741
1739
|
variant: "danger",
|
|
1742
1740
|
onClick: onConfirm,
|
|
1743
1741
|
disabled: loading,
|
|
1744
|
-
startIcon: loading ? /* @__PURE__ */ jsx2(
|
|
1742
|
+
startIcon: loading ? /* @__PURE__ */ jsx2(CircularProgress_default, { size: 14, color: "inherit" }) : void 0,
|
|
1745
1743
|
children: "Confirm"
|
|
1746
1744
|
}
|
|
1747
1745
|
)
|
|
@@ -1813,7 +1811,7 @@ function CallRecording({ callUuid, recordingPath, iconOnly = false }) {
|
|
|
1813
1811
|
};
|
|
1814
1812
|
if (iconOnly) {
|
|
1815
1813
|
if (audioUrl) {
|
|
1816
|
-
return /* @__PURE__ */ jsxs(
|
|
1814
|
+
return /* @__PURE__ */ jsxs(Box_default, { sx: { display: "flex", alignItems: "center", gap: 0.5 }, children: [
|
|
1817
1815
|
/* @__PURE__ */ jsx2(
|
|
1818
1816
|
"audio",
|
|
1819
1817
|
{
|
|
@@ -1826,28 +1824,28 @@ function CallRecording({ callUuid, recordingPath, iconOnly = false }) {
|
|
|
1826
1824
|
style: { height: 32, maxWidth: 170 }
|
|
1827
1825
|
}
|
|
1828
1826
|
),
|
|
1829
|
-
totalLabel && /* @__PURE__ */ jsxs(
|
|
1827
|
+
totalLabel && /* @__PURE__ */ jsxs(Typography_default, { sx: { fontSize: 12, fontWeight: 600, color: "#1A5F6C", whiteSpace: "nowrap" }, children: [
|
|
1830
1828
|
fmtRecordingDuration(currentSec),
|
|
1831
1829
|
" / ",
|
|
1832
1830
|
totalLabel
|
|
1833
1831
|
] }),
|
|
1834
|
-
/* @__PURE__ */ jsx2(
|
|
1832
|
+
/* @__PURE__ */ jsx2(Tooltip_default, { title: "Download", children: /* @__PURE__ */ jsx2(IconButton_default, { size: "small", onClick: handleDownload, sx: { color: "#1565c0" }, children: /* @__PURE__ */ jsx2(Download_default, { sx: { fontSize: 16 } }) }) })
|
|
1835
1833
|
] });
|
|
1836
1834
|
}
|
|
1837
|
-
return /* @__PURE__ */ jsx2(
|
|
1835
|
+
return /* @__PURE__ */ jsx2(Tooltip_default, { title: unavailable ? "No recording available for this call." : error ? "Recording unavailable" : "Play voicemail", children: /* @__PURE__ */ jsx2("span", { children: /* @__PURE__ */ jsx2(IconButton_default, { size: "small", onClick: handlePlay, disabled: unavailable || loading || error, sx: { color: unavailable ? "#bdbdbd" : "#1A5F6C" }, children: loading ? /* @__PURE__ */ jsx2(CircularProgress_default, { size: 16, color: "inherit" }) : /* @__PURE__ */ jsx2(PlayArrow_default, { sx: { fontSize: 18 } }) }) }) });
|
|
1838
1836
|
}
|
|
1839
1837
|
if (unavailable) {
|
|
1840
|
-
return /* @__PURE__ */ jsx2(
|
|
1838
|
+
return /* @__PURE__ */ jsx2(Typography_default, { sx: { fontSize: "0.82rem", color: "#999" }, fontFamily: "poppins, Arial, sans-serif", children: "No recording available for this call." });
|
|
1841
1839
|
}
|
|
1842
1840
|
if (audioUrl) {
|
|
1843
|
-
return /* @__PURE__ */ jsxs(
|
|
1841
|
+
return /* @__PURE__ */ jsxs(Box_default, { sx: { display: "flex", alignItems: "center", gap: 1 }, children: [
|
|
1844
1842
|
/* @__PURE__ */ jsx2("audio", { controls: true, autoPlay: true, src: audioUrl, onEnded: closePlayer, style: { height: 38, flex: 1 } }),
|
|
1845
|
-
/* @__PURE__ */ jsx2(
|
|
1843
|
+
/* @__PURE__ */ jsx2(Tooltip_default, { title: "Download", children: /* @__PURE__ */ jsx2(IconButton_default, { size: "small", onClick: handleDownload, sx: { color: "#1565c0" }, children: /* @__PURE__ */ jsx2(Download_default, { sx: { fontSize: 18 } }) }) })
|
|
1846
1844
|
] });
|
|
1847
1845
|
}
|
|
1848
|
-
return /* @__PURE__ */ jsxs(
|
|
1849
|
-
/* @__PURE__ */ jsx2(SDKButton, { variant: "outlined", onClick: handlePlay, disabled: loading || error, startIcon: loading ? /* @__PURE__ */ jsx2(
|
|
1850
|
-
/* @__PURE__ */ jsx2(
|
|
1846
|
+
return /* @__PURE__ */ jsxs(Box_default, { sx: { display: "flex", alignItems: "center", gap: 1 }, children: [
|
|
1847
|
+
/* @__PURE__ */ jsx2(SDKButton, { variant: "outlined", onClick: handlePlay, disabled: loading || error, startIcon: loading ? /* @__PURE__ */ jsx2(CircularProgress_default, { size: 16, color: "inherit" }) : /* @__PURE__ */ jsx2(PlayArrow_default, { sx: { fontSize: 16 } }), children: error ? "Recording unavailable" : "Play recording" }),
|
|
1848
|
+
/* @__PURE__ */ jsx2(Tooltip_default, { title: "Download", children: /* @__PURE__ */ jsx2("span", { children: /* @__PURE__ */ jsx2(IconButton_default, { size: "small", onClick: handleDownload, disabled: loading || error, sx: { color: "#1565c0" }, children: /* @__PURE__ */ jsx2(Download_default, { sx: { fontSize: 18 } }) }) }) })
|
|
1851
1849
|
] });
|
|
1852
1850
|
}
|
|
1853
1851
|
function CallDataDialog({
|
|
@@ -1890,9 +1888,9 @@ function CallDataDialog({
|
|
|
1890
1888
|
letterSpacing: 0.5,
|
|
1891
1889
|
mb: 0.75
|
|
1892
1890
|
};
|
|
1893
|
-
const fieldCard = (label, value, full) => /* @__PURE__ */ jsxs(
|
|
1894
|
-
/* @__PURE__ */ jsx2(
|
|
1895
|
-
/* @__PURE__ */ jsx2(
|
|
1891
|
+
const fieldCard = (label, value, full) => /* @__PURE__ */ jsxs(Box_default, { sx: __spreadValues(__spreadValues({}, fieldCardSx), full ? { gridColumn: "1 / -1" } : {}), children: [
|
|
1892
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: fieldLabelSx, fontFamily: "poppins, Arial, sans-serif", children: label }),
|
|
1893
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: fieldValueSx, fontFamily: "poppins, Arial, sans-serif", children: value })
|
|
1896
1894
|
] }, label);
|
|
1897
1895
|
const overview = data ? [
|
|
1898
1896
|
["Phone Number", data.phoneNumber || "\u2014"],
|
|
@@ -1924,44 +1922,44 @@ function CallDataDialog({
|
|
|
1924
1922
|
] : [];
|
|
1925
1923
|
const twoColGrid = { display: "grid", gridTemplateColumns: { xs: "1fr", sm: "1fr 1fr" }, gap: 1.25 };
|
|
1926
1924
|
const compactGrid = { display: "grid", gridTemplateColumns: "repeat(auto-fill, minmax(96px, 1fr))", gap: 1.25 };
|
|
1927
|
-
return /* @__PURE__ */ jsx2(
|
|
1928
|
-
/* @__PURE__ */ jsxs(
|
|
1929
|
-
/* @__PURE__ */ jsxs(
|
|
1930
|
-
/* @__PURE__ */ jsx2(
|
|
1931
|
-
(lead == null ? void 0 : lead.phoneNumber) ? /* @__PURE__ */ jsxs(
|
|
1925
|
+
return /* @__PURE__ */ jsx2(Box_default, { sx: { position: "fixed", inset: 0, zIndex: 1500, backgroundColor: "rgba(0,0,0,0.45)", display: "flex", alignItems: "center", justifyContent: "center" }, onClick: (e) => e.stopPropagation(), children: /* @__PURE__ */ jsxs(Paper_default, { elevation: 6, sx: { width: { xs: "92vw", sm: 600 }, maxHeight: "85vh", display: "flex", flexDirection: "column", borderRadius: "16px", overflow: "hidden", boxShadow: "0 8px 32px rgba(26,95,108,0.18)" }, children: [
|
|
1926
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: __spreadProps(__spreadValues({}, dialogHeaderSx), { backgroundColor: "#1A5F6C", color: "#fff" }), children: [
|
|
1927
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
1928
|
+
/* @__PURE__ */ jsx2(Typography_default, { fontWeight: 700, fontSize: "1rem", fontFamily: "poppins, Arial, sans-serif", children: "Call Details" }),
|
|
1929
|
+
(lead == null ? void 0 : lead.phoneNumber) ? /* @__PURE__ */ jsxs(Typography_default, { fontSize: "0.72rem", sx: { opacity: 0.85 }, fontFamily: "poppins, Arial, sans-serif", children: [
|
|
1932
1930
|
"Latest call for ",
|
|
1933
1931
|
lead.phoneNumber
|
|
1934
1932
|
] }) : null
|
|
1935
1933
|
] }),
|
|
1936
|
-
/* @__PURE__ */ jsx2(
|
|
1934
|
+
/* @__PURE__ */ jsx2(IconButton_default, { size: "small", onClick: onClose, sx: { color: "#fff" }, children: "\u2715" })
|
|
1937
1935
|
] }),
|
|
1938
|
-
/* @__PURE__ */ jsx2(
|
|
1939
|
-
/* @__PURE__ */ jsxs(
|
|
1940
|
-
/* @__PURE__ */ jsx2(
|
|
1941
|
-
/* @__PURE__ */ jsx2(
|
|
1936
|
+
/* @__PURE__ */ jsx2(Box_default, { sx: { px: 2.5, py: 2, overflowY: "auto" }, children: loading ? /* @__PURE__ */ jsx2(Box_default, { sx: { display: "flex", justifyContent: "center", py: 4 }, children: /* @__PURE__ */ jsx2(CircularProgress_default, { size: 30 }) }) : error ? /* @__PURE__ */ jsx2(Typography_default, { fontSize: "0.85rem", color: "#d32f2f", textAlign: "center", sx: { py: 3 }, fontFamily: "poppins, Arial, sans-serif", children: error }) : data ? /* @__PURE__ */ jsxs(Box_default, { sx: { display: "flex", flexDirection: "column", gap: 2 }, children: [
|
|
1937
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
1938
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: sectionTitle, fontFamily: "poppins, Arial, sans-serif", children: "Call Overview" }),
|
|
1939
|
+
/* @__PURE__ */ jsx2(Box_default, { sx: twoColGrid, children: overview.map(([l, v]) => fieldCard(l, v)) })
|
|
1942
1940
|
] }),
|
|
1943
|
-
/* @__PURE__ */ jsxs(
|
|
1944
|
-
/* @__PURE__ */ jsx2(
|
|
1945
|
-
/* @__PURE__ */ jsx2(
|
|
1941
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
1942
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: sectionTitle, fontFamily: "poppins, Arial, sans-serif", children: "Agent & Queue" }),
|
|
1943
|
+
/* @__PURE__ */ jsx2(Box_default, { sx: twoColGrid, children: agentQueue.map(([l, v]) => fieldCard(l, v)) })
|
|
1946
1944
|
] }),
|
|
1947
|
-
/* @__PURE__ */ jsxs(
|
|
1948
|
-
/* @__PURE__ */ jsx2(
|
|
1949
|
-
/* @__PURE__ */ jsx2(
|
|
1945
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
1946
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: sectionTitle, fontFamily: "poppins, Arial, sans-serif", children: "Timing" }),
|
|
1947
|
+
/* @__PURE__ */ jsx2(Box_default, { sx: twoColGrid, children: timing.map(([l, v]) => fieldCard(l, v)) })
|
|
1950
1948
|
] }),
|
|
1951
|
-
/* @__PURE__ */ jsxs(
|
|
1952
|
-
/* @__PURE__ */ jsx2(
|
|
1953
|
-
/* @__PURE__ */ jsx2(
|
|
1949
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
1950
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: sectionTitle, fontFamily: "poppins, Arial, sans-serif", children: "Durations" }),
|
|
1951
|
+
/* @__PURE__ */ jsx2(Box_default, { sx: compactGrid, children: durations.map(([l, v]) => fieldCard(l, v)) })
|
|
1954
1952
|
] }),
|
|
1955
|
-
/* @__PURE__ */ jsxs(
|
|
1956
|
-
/* @__PURE__ */ jsx2(
|
|
1957
|
-
/* @__PURE__ */ jsx2(
|
|
1953
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
1954
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: sectionTitle, fontFamily: "poppins, Arial, sans-serif", children: "Remarks" }),
|
|
1955
|
+
/* @__PURE__ */ jsx2(Box_default, { sx: __spreadProps(__spreadValues({}, fieldCardSx), { minHeight: 44 }), children: /* @__PURE__ */ jsx2(Typography_default, { sx: fieldValueSx, fontFamily: "poppins, Arial, sans-serif", children: data.remarks || "\u2014" }) })
|
|
1958
1956
|
] }),
|
|
1959
|
-
/* @__PURE__ */ jsxs(
|
|
1960
|
-
/* @__PURE__ */ jsx2(
|
|
1961
|
-
/* @__PURE__ */ jsx2(
|
|
1957
|
+
/* @__PURE__ */ jsxs(Box_default, { children: [
|
|
1958
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: sectionTitle, fontFamily: "poppins, Arial, sans-serif", children: "Recording" }),
|
|
1959
|
+
/* @__PURE__ */ jsx2(Box_default, { sx: fieldCardSx, children: /* @__PURE__ */ jsx2(CallRecording, { callUuid: data.callUuid, recordingPath: data.recordingPath }) })
|
|
1962
1960
|
] })
|
|
1963
1961
|
] }) : null }),
|
|
1964
|
-
/* @__PURE__ */ jsx2(
|
|
1962
|
+
/* @__PURE__ */ jsx2(Box_default, { sx: dialogFooterSx, children: /* @__PURE__ */ jsx2(SDKButton, { variant: "cancel", onClick: onClose, children: "Close" }) })
|
|
1965
1963
|
] }) });
|
|
1966
1964
|
}
|
|
1967
1965
|
function ImportLeadsDialog({
|
|
@@ -1976,18 +1974,18 @@ function ImportLeadsDialog({
|
|
|
1976
1974
|
const fileRef = useRef(null);
|
|
1977
1975
|
if (!open) return null;
|
|
1978
1976
|
return /* @__PURE__ */ jsx2(
|
|
1979
|
-
|
|
1977
|
+
Box_default,
|
|
1980
1978
|
{
|
|
1981
1979
|
sx: { position: "fixed", inset: 0, zIndex: 1400, backgroundColor: "rgba(0,0,0,0.45)", display: "flex", alignItems: "center", justifyContent: "center" },
|
|
1982
1980
|
onClick: (e) => e.stopPropagation(),
|
|
1983
|
-
children: /* @__PURE__ */ jsxs(
|
|
1984
|
-
/* @__PURE__ */ jsxs(
|
|
1985
|
-
/* @__PURE__ */ jsx2(
|
|
1986
|
-
/* @__PURE__ */ jsx2(
|
|
1981
|
+
children: /* @__PURE__ */ jsxs(Paper_default, { elevation: 6, sx: { width: { xs: "90vw", sm: 460 }, borderRadius: "16px", overflow: "hidden", boxShadow: "0 8px 32px rgba(26,95,108,0.18)" }, children: [
|
|
1982
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: __spreadProps(__spreadValues({}, dialogHeaderSx), { backgroundColor: "#1A5F6C", color: "#fff" }), children: [
|
|
1983
|
+
/* @__PURE__ */ jsx2(Typography_default, { fontWeight: 700, fontSize: "1rem", fontFamily: "poppins, Arial, sans-serif", children: "Import Leads" }),
|
|
1984
|
+
/* @__PURE__ */ jsx2(IconButton_default, { size: "small", onClick: onClose, sx: { color: "#fff" }, children: "\u2715" })
|
|
1987
1985
|
] }),
|
|
1988
|
-
/* @__PURE__ */ jsxs(
|
|
1989
|
-
/* @__PURE__ */ jsx2(
|
|
1990
|
-
/* @__PURE__ */ jsxs(
|
|
1986
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { p: 2.5 }, children: [
|
|
1987
|
+
/* @__PURE__ */ jsx2(Typography_default, { fontSize: "0.82rem", color: "#555", fontFamily: "poppins, Arial, sans-serif", mb: 2, children: "Upload a CSV or Excel file. Use the template for the correct format." }),
|
|
1988
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { display: "flex", alignItems: "center", gap: 1.5, flexWrap: "wrap", mb: 1.5 }, children: [
|
|
1991
1989
|
/* @__PURE__ */ jsx2(
|
|
1992
1990
|
SDKButton,
|
|
1993
1991
|
{
|
|
@@ -2015,7 +2013,7 @@ function ImportLeadsDialog({
|
|
|
2015
2013
|
}
|
|
2016
2014
|
}
|
|
2017
2015
|
),
|
|
2018
|
-
/* @__PURE__ */ jsx2(
|
|
2016
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: { fontSize: "0.82rem", color: "#666", flex: 1, fontFamily: "poppins, Arial, sans-serif" }, children: file ? file.name : "No file chosen" }),
|
|
2019
2017
|
file && /* @__PURE__ */ jsx2(
|
|
2020
2018
|
SDKButton,
|
|
2021
2019
|
{
|
|
@@ -2031,14 +2029,14 @@ function ImportLeadsDialog({
|
|
|
2031
2029
|
] }),
|
|
2032
2030
|
/* @__PURE__ */ jsx2(SDKButton, { variant: "outlined", startIcon: /* @__PURE__ */ jsx2(Download_default, {}), onClick: onDownloadTemplate, children: "Download Template" })
|
|
2033
2031
|
] }),
|
|
2034
|
-
/* @__PURE__ */ jsxs(
|
|
2032
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: dialogFooterSx, children: [
|
|
2035
2033
|
/* @__PURE__ */ jsx2(SDKButton, { variant: "cancel", onClick: onClose, children: "Cancel" }),
|
|
2036
2034
|
/* @__PURE__ */ jsx2(
|
|
2037
2035
|
SDKButton,
|
|
2038
2036
|
{
|
|
2039
2037
|
onClick: onUpload,
|
|
2040
2038
|
disabled: uploading || !file,
|
|
2041
|
-
startIcon: uploading ? /* @__PURE__ */ jsx2(
|
|
2039
|
+
startIcon: uploading ? /* @__PURE__ */ jsx2(CircularProgress_default, { size: 14, color: "inherit" }) : void 0,
|
|
2042
2040
|
children: "Upload"
|
|
2043
2041
|
}
|
|
2044
2042
|
)
|
|
@@ -2049,7 +2047,7 @@ function ImportLeadsDialog({
|
|
|
2049
2047
|
}
|
|
2050
2048
|
var CampaignsContent = memo(function CampaignsContent2() {
|
|
2051
2049
|
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k;
|
|
2052
|
-
const theme =
|
|
2050
|
+
const theme = useTheme();
|
|
2053
2051
|
const { showToast } = useToast();
|
|
2054
2052
|
const { isBitEnabled } = useSDKPermissions();
|
|
2055
2053
|
const callerData = useGetCallerData();
|
|
@@ -2400,12 +2398,12 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2400
2398
|
const scDraft = ((_c = sc == null ? void 0 : sc.status) == null ? void 0 : _c.toLowerCase()) === "draft";
|
|
2401
2399
|
const scPaused = ((_d = sc == null ? void 0 : sc.status) == null ? void 0 : _d.toLowerCase()) === "paused";
|
|
2402
2400
|
const scArchived = ((_e = sc == null ? void 0 : sc.status) == null ? void 0 : _e.toLowerCase()) === "archived";
|
|
2403
|
-
return /* @__PURE__ */ jsxs(
|
|
2401
|
+
return /* @__PURE__ */ jsxs(Box_default, { sx: { fontFamily: "poppins, Arial, sans-serif" }, children: [
|
|
2404
2402
|
/* @__PURE__ */ jsx2(
|
|
2405
2403
|
SDKPageHeader,
|
|
2406
2404
|
{
|
|
2407
2405
|
title: "Call Scheduling",
|
|
2408
|
-
actions: /* @__PURE__ */ jsxs(
|
|
2406
|
+
actions: /* @__PURE__ */ jsxs(Box_default, { sx: { display: "flex", alignItems: "center", gap: 1 }, children: [
|
|
2409
2407
|
/* @__PURE__ */ jsx2(
|
|
2410
2408
|
SDKButton,
|
|
2411
2409
|
{
|
|
@@ -2431,9 +2429,9 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2431
2429
|
] })
|
|
2432
2430
|
}
|
|
2433
2431
|
),
|
|
2434
|
-
/* @__PURE__ */ jsxs(
|
|
2432
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { display: "flex", flexDirection: { xs: "column", md: "row" }, gap: 1.5, p: 1.5 }, children: [
|
|
2435
2433
|
/* @__PURE__ */ jsx2(
|
|
2436
|
-
|
|
2434
|
+
Paper_default,
|
|
2437
2435
|
{
|
|
2438
2436
|
elevation: 0,
|
|
2439
2437
|
sx: {
|
|
@@ -2449,7 +2447,7 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2449
2447
|
boxShadow: "0 1px 3px rgba(0,0,0,0.08)",
|
|
2450
2448
|
transition: "width 0.2s ease, min-width 0.2s ease"
|
|
2451
2449
|
},
|
|
2452
|
-
children: campaignListCollapsed ? /* @__PURE__ */ jsxs(
|
|
2450
|
+
children: campaignListCollapsed ? /* @__PURE__ */ jsxs(Box_default, { sx: {
|
|
2453
2451
|
display: "flex",
|
|
2454
2452
|
flexDirection: { xs: "row", md: "column" },
|
|
2455
2453
|
alignItems: "center",
|
|
@@ -2459,8 +2457,8 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2459
2457
|
overflowY: { xs: "visible", md: "auto" },
|
|
2460
2458
|
overflowX: { xs: "auto", md: "visible" }
|
|
2461
2459
|
}, children: [
|
|
2462
|
-
/* @__PURE__ */ jsx2(
|
|
2463
|
-
|
|
2460
|
+
/* @__PURE__ */ jsx2(Tooltip_default, { title: "Expand campaigns", arrow: true, placement: "right", children: /* @__PURE__ */ jsx2(
|
|
2461
|
+
IconButton_default,
|
|
2464
2462
|
{
|
|
2465
2463
|
size: "small",
|
|
2466
2464
|
onClick: () => setCampaignListCollapsed(false),
|
|
@@ -2479,13 +2477,13 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2479
2477
|
const status = (c.status || "draft").toLowerCase();
|
|
2480
2478
|
const statusColor = (_a2 = STATUS_COLORS[status]) != null ? _a2 : "#9e9e9e";
|
|
2481
2479
|
return /* @__PURE__ */ jsx2(
|
|
2482
|
-
|
|
2480
|
+
Tooltip_default,
|
|
2483
2481
|
{
|
|
2484
2482
|
arrow: true,
|
|
2485
2483
|
placement: "right",
|
|
2486
2484
|
title: `${c.name} \u2022 ${c.status || "draft"}`,
|
|
2487
2485
|
children: /* @__PURE__ */ jsx2(
|
|
2488
|
-
|
|
2486
|
+
Box_default,
|
|
2489
2487
|
{
|
|
2490
2488
|
onClick: () => handleSelectCampaign(c.id),
|
|
2491
2489
|
sx: {
|
|
@@ -2517,7 +2515,7 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2517
2515
|
);
|
|
2518
2516
|
})
|
|
2519
2517
|
] }) : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
2520
|
-
/* @__PURE__ */ jsxs(
|
|
2518
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: {
|
|
2521
2519
|
display: "flex",
|
|
2522
2520
|
alignItems: "center",
|
|
2523
2521
|
justifyContent: "space-between",
|
|
@@ -2527,9 +2525,9 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2527
2525
|
backgroundColor: "#fafafa",
|
|
2528
2526
|
gap: 1
|
|
2529
2527
|
}, children: [
|
|
2530
|
-
/* @__PURE__ */ jsxs(
|
|
2531
|
-
/* @__PURE__ */ jsx2(
|
|
2532
|
-
|
|
2528
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { display: "flex", alignItems: "center", gap: 0.5, minWidth: 0 }, children: [
|
|
2529
|
+
/* @__PURE__ */ jsx2(Tooltip_default, { title: "Minimize", arrow: true, children: /* @__PURE__ */ jsx2(
|
|
2530
|
+
IconButton_default,
|
|
2533
2531
|
{
|
|
2534
2532
|
size: "small",
|
|
2535
2533
|
onClick: () => setCampaignListCollapsed(true),
|
|
@@ -2537,13 +2535,13 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2537
2535
|
children: /* @__PURE__ */ jsx2(ChevronLeft_default, { fontSize: "small" })
|
|
2538
2536
|
}
|
|
2539
2537
|
) }),
|
|
2540
|
-
/* @__PURE__ */ jsx2(
|
|
2538
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: { fontWeight: 700, fontSize: "0.95rem", color: "#333", fontFamily: "poppins, Arial, sans-serif" }, children: "Campaigns" })
|
|
2541
2539
|
] }),
|
|
2542
2540
|
/* @__PURE__ */ jsx2(
|
|
2543
|
-
|
|
2541
|
+
FormControlLabel_default,
|
|
2544
2542
|
{
|
|
2545
2543
|
control: /* @__PURE__ */ jsx2(
|
|
2546
|
-
|
|
2544
|
+
Checkbox_default,
|
|
2547
2545
|
{
|
|
2548
2546
|
size: "small",
|
|
2549
2547
|
checked: showArchived,
|
|
@@ -2551,17 +2549,17 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2551
2549
|
sx: { p: 0.5 }
|
|
2552
2550
|
}
|
|
2553
2551
|
),
|
|
2554
|
-
label: /* @__PURE__ */ jsx2(
|
|
2552
|
+
label: /* @__PURE__ */ jsx2(Typography_default, { sx: { fontSize: "0.78rem", color: "#666" }, children: "Show archived" }),
|
|
2555
2553
|
sx: { mr: 0 }
|
|
2556
2554
|
}
|
|
2557
2555
|
)
|
|
2558
2556
|
] }),
|
|
2559
|
-
/* @__PURE__ */ jsx2(
|
|
2557
|
+
/* @__PURE__ */ jsx2(Box_default, { sx: { flex: 1, overflow: "auto", p: 1 }, children: loading ? /* @__PURE__ */ jsx2(Box_default, { sx: { display: "flex", justifyContent: "center", py: 4 }, children: /* @__PURE__ */ jsx2(CircularProgress_default, { size: 24, sx: { color: "#1A5F6C" } }) }) : visibleCampaigns.length === 0 ? /* @__PURE__ */ jsx2(Typography_default, { sx: { textAlign: "center", py: 3, color: "#999", fontSize: "0.85rem" }, children: "No campaigns" }) : visibleCampaigns.map((c) => {
|
|
2560
2558
|
var _a2, _b2;
|
|
2561
2559
|
const isSel = c.id === selectedId;
|
|
2562
2560
|
const wStr = `${((_a2 = c.startTime) == null ? void 0 : _a2.slice(0, 5)) || "09:00"}\u2013${((_b2 = c.endTime) == null ? void 0 : _b2.slice(0, 5)) || "17:00"}`;
|
|
2563
2561
|
return /* @__PURE__ */ jsxs(
|
|
2564
|
-
|
|
2562
|
+
Paper_default,
|
|
2565
2563
|
{
|
|
2566
2564
|
elevation: 0,
|
|
2567
2565
|
onClick: () => handleSelectCampaign(c.id),
|
|
@@ -2569,11 +2567,11 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2569
2567
|
"&:hover": { borderColor: "#1A5F6C", backgroundColor: "#f5fafb", boxShadow: "0 2px 6px rgba(26,95,108,0.1)" }
|
|
2570
2568
|
}),
|
|
2571
2569
|
children: [
|
|
2572
|
-
/* @__PURE__ */ jsxs(
|
|
2573
|
-
/* @__PURE__ */ jsx2(
|
|
2574
|
-
/* @__PURE__ */ jsx2(
|
|
2570
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { display: "flex", justifyContent: "space-between", alignItems: "center", mb: 0.5 }, children: [
|
|
2571
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: { fontWeight: 600, fontSize: "0.88rem", color: "#1a1a1a", fontFamily: "poppins, Arial, sans-serif" }, children: c.name }),
|
|
2572
|
+
/* @__PURE__ */ jsx2(Chip_default, { label: c.status || "draft", size: "small", sx: statusChipSx(c.status) })
|
|
2575
2573
|
] }),
|
|
2576
|
-
/* @__PURE__ */ jsxs(
|
|
2574
|
+
/* @__PURE__ */ jsxs(Typography_default, { sx: { fontSize: "0.73rem", color: "#999", fontFamily: "poppins, Arial, sans-serif" }, children: [
|
|
2577
2575
|
c.dialingMode,
|
|
2578
2576
|
" \xB7 TZ: ",
|
|
2579
2577
|
c.timezone || "Etc/UTC",
|
|
@@ -2588,8 +2586,8 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2588
2586
|
] })
|
|
2589
2587
|
}
|
|
2590
2588
|
),
|
|
2591
|
-
/* @__PURE__ */ jsx2(
|
|
2592
|
-
|
|
2589
|
+
/* @__PURE__ */ jsx2(Box_default, { sx: { flex: 1, display: "flex", flexDirection: "column", gap: 1.5, minWidth: 0, overflow: "hidden" }, children: !sc ? /* @__PURE__ */ jsx2(
|
|
2590
|
+
Paper_default,
|
|
2593
2591
|
{
|
|
2594
2592
|
elevation: 0,
|
|
2595
2593
|
sx: {
|
|
@@ -2601,14 +2599,14 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2601
2599
|
border: "2px dashed #d0d0d0",
|
|
2602
2600
|
backgroundColor: "#fafafa"
|
|
2603
2601
|
},
|
|
2604
|
-
children: /* @__PURE__ */ jsxs(
|
|
2602
|
+
children: /* @__PURE__ */ jsxs(Box_default, { sx: { textAlign: "center" }, children: [
|
|
2605
2603
|
/* @__PURE__ */ jsx2(Settings_default, { sx: { fontSize: 40, color: "#ccc", mb: 1 } }),
|
|
2606
|
-
/* @__PURE__ */ jsx2(
|
|
2604
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: { fontSize: "0.95rem", color: "#999", fontFamily: "poppins, Arial, sans-serif" }, children: "Select a campaign to view details" })
|
|
2607
2605
|
] })
|
|
2608
2606
|
}
|
|
2609
2607
|
) : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
2610
2608
|
/* @__PURE__ */ jsxs(
|
|
2611
|
-
|
|
2609
|
+
Paper_default,
|
|
2612
2610
|
{
|
|
2613
2611
|
elevation: 0,
|
|
2614
2612
|
sx: {
|
|
@@ -2618,7 +2616,7 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2618
2616
|
boxShadow: "0 1px 3px rgba(0,0,0,0.08)"
|
|
2619
2617
|
},
|
|
2620
2618
|
children: [
|
|
2621
|
-
/* @__PURE__ */ jsxs(
|
|
2619
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: {
|
|
2622
2620
|
display: "flex",
|
|
2623
2621
|
alignItems: { xs: "flex-start", sm: "center" },
|
|
2624
2622
|
justifyContent: "space-between",
|
|
@@ -2626,11 +2624,11 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2626
2624
|
gap: 1,
|
|
2627
2625
|
mb: 2
|
|
2628
2626
|
}, children: [
|
|
2629
|
-
/* @__PURE__ */ jsxs(
|
|
2630
|
-
/* @__PURE__ */ jsx2(
|
|
2631
|
-
/* @__PURE__ */ jsx2(
|
|
2627
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { display: "flex", alignItems: "center", gap: 1, flexWrap: "wrap" }, children: [
|
|
2628
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: { fontWeight: 700, fontSize: { xs: "1rem", sm: "1.2rem" }, color: "#1a1a1a", fontFamily: "poppins, Arial, sans-serif" }, children: sc.name }),
|
|
2629
|
+
/* @__PURE__ */ jsx2(Chip_default, { label: sc.status || "draft", size: "small", sx: statusChipSx(sc.status) })
|
|
2632
2630
|
] }),
|
|
2633
|
-
!scArchived && /* @__PURE__ */ jsxs(
|
|
2631
|
+
!scArchived && /* @__PURE__ */ jsxs(Box_default, { sx: { display: "flex", gap: 1, flexWrap: "wrap" }, children: [
|
|
2634
2632
|
/* @__PURE__ */ jsx2(
|
|
2635
2633
|
SDKPermissionGuard,
|
|
2636
2634
|
{
|
|
@@ -2712,9 +2710,9 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2712
2710
|
)
|
|
2713
2711
|
] })
|
|
2714
2712
|
] }),
|
|
2715
|
-
sc.description && /* @__PURE__ */ jsx2(
|
|
2713
|
+
sc.description && /* @__PURE__ */ jsx2(Typography_default, { sx: { fontSize: "0.85rem", color: "#666", mb: 1.5, fontFamily: "poppins, Arial, sans-serif", lineHeight: 1.5 }, children: sc.description }),
|
|
2716
2714
|
/* @__PURE__ */ jsx2(
|
|
2717
|
-
|
|
2715
|
+
Box_default,
|
|
2718
2716
|
{
|
|
2719
2717
|
sx: {
|
|
2720
2718
|
overflowX: "auto",
|
|
@@ -2728,7 +2726,7 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2728
2726
|
}
|
|
2729
2727
|
},
|
|
2730
2728
|
children: /* @__PURE__ */ jsx2(
|
|
2731
|
-
|
|
2729
|
+
Box_default,
|
|
2732
2730
|
{
|
|
2733
2731
|
sx: {
|
|
2734
2732
|
display: "flex",
|
|
@@ -2765,7 +2763,7 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2765
2763
|
]
|
|
2766
2764
|
}
|
|
2767
2765
|
].map((card, idx) => /* @__PURE__ */ jsx2(
|
|
2768
|
-
|
|
2766
|
+
Box_default,
|
|
2769
2767
|
{
|
|
2770
2768
|
sx: {
|
|
2771
2769
|
display: "flex",
|
|
@@ -2779,12 +2777,12 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2779
2777
|
flex: "0 0 auto",
|
|
2780
2778
|
minWidth: 180
|
|
2781
2779
|
},
|
|
2782
|
-
children: card.fields.map((field) => /* @__PURE__ */ jsxs(
|
|
2783
|
-
/* @__PURE__ */ jsxs(
|
|
2780
|
+
children: card.fields.map((field) => /* @__PURE__ */ jsxs(Box_default, { sx: { display: "flex", alignItems: "center", gap: 0.75 }, children: [
|
|
2781
|
+
/* @__PURE__ */ jsxs(Typography_default, { sx: { fontFamily: "poppins, Arial, sans-serif", fontSize: "0.72rem", fontWeight: 600, color: "#888", whiteSpace: "nowrap", flexShrink: 0 }, children: [
|
|
2784
2782
|
field.label,
|
|
2785
2783
|
":"
|
|
2786
2784
|
] }),
|
|
2787
|
-
/* @__PURE__ */ jsx2(
|
|
2785
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: { fontFamily: "poppins, Arial, sans-serif", fontSize: "0.75rem", fontWeight: 700, color: "#333", whiteSpace: "nowrap" }, children: field.value })
|
|
2788
2786
|
] }, field.label))
|
|
2789
2787
|
},
|
|
2790
2788
|
idx
|
|
@@ -2797,7 +2795,7 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2797
2795
|
}
|
|
2798
2796
|
),
|
|
2799
2797
|
/* @__PURE__ */ jsx2(SDKPermissionGuard, { permission: SDK_PERMISSIONS.CAMPAIGNS_LEADS_READ, showFallback: false, children: /* @__PURE__ */ jsxs(
|
|
2800
|
-
|
|
2798
|
+
Paper_default,
|
|
2801
2799
|
{
|
|
2802
2800
|
elevation: 0,
|
|
2803
2801
|
sx: {
|
|
@@ -2807,7 +2805,7 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2807
2805
|
boxShadow: "0 1px 3px rgba(0,0,0,0.08)"
|
|
2808
2806
|
},
|
|
2809
2807
|
children: [
|
|
2810
|
-
/* @__PURE__ */ jsxs(
|
|
2808
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: {
|
|
2811
2809
|
display: "flex",
|
|
2812
2810
|
flexDirection: "column",
|
|
2813
2811
|
gap: 1.25,
|
|
@@ -2816,15 +2814,15 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2816
2814
|
borderBottom: "1px solid #eee",
|
|
2817
2815
|
backgroundColor: "#fafafa"
|
|
2818
2816
|
}, children: [
|
|
2819
|
-
/* @__PURE__ */ jsxs(
|
|
2817
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: {
|
|
2820
2818
|
display: "flex",
|
|
2821
2819
|
alignItems: { xs: "flex-start", sm: "center" },
|
|
2822
2820
|
justifyContent: "space-between",
|
|
2823
2821
|
flexDirection: { xs: "column", sm: "row" },
|
|
2824
2822
|
gap: 1
|
|
2825
2823
|
}, children: [
|
|
2826
|
-
/* @__PURE__ */ jsxs(
|
|
2827
|
-
/* @__PURE__ */ jsx2(
|
|
2824
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { display: "flex", alignItems: "center", gap: 1, flexWrap: "wrap" }, children: [
|
|
2825
|
+
/* @__PURE__ */ jsx2(Typography_default, { sx: { fontWeight: 700, fontSize: "1rem", color: "#1a1a1a", fontFamily: "poppins, Arial, sans-serif" }, children: "Leads" }),
|
|
2828
2826
|
/* @__PURE__ */ jsx2(
|
|
2829
2827
|
SDKPermissionGuard,
|
|
2830
2828
|
{
|
|
@@ -2846,9 +2844,9 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2846
2844
|
}
|
|
2847
2845
|
)
|
|
2848
2846
|
] }),
|
|
2849
|
-
/* @__PURE__ */ jsxs(
|
|
2847
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { display: "flex", alignItems: "center", gap: 1, flexWrap: "wrap", width: { xs: "100%", sm: "auto" } }, children: [
|
|
2850
2848
|
/* @__PURE__ */ jsx2(
|
|
2851
|
-
|
|
2849
|
+
OutlinedInput_default,
|
|
2852
2850
|
{
|
|
2853
2851
|
size: "small",
|
|
2854
2852
|
value: leadSearch,
|
|
@@ -2858,11 +2856,11 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2858
2856
|
},
|
|
2859
2857
|
placeholder: "Search number...",
|
|
2860
2858
|
sx: { width: { xs: "100%", sm: 200 }, fontSize: "0.85rem", height: 36, borderRadius: "20px" },
|
|
2861
|
-
startAdornment: /* @__PURE__ */ jsx2(
|
|
2859
|
+
startAdornment: /* @__PURE__ */ jsx2(InputAdornment_default, { position: "start", children: /* @__PURE__ */ jsx2(Search_default, { sx: { fontSize: 16, color: "#aaa" } }) })
|
|
2862
2860
|
}
|
|
2863
2861
|
),
|
|
2864
|
-
/* @__PURE__ */ jsx2(
|
|
2865
|
-
|
|
2862
|
+
/* @__PURE__ */ jsx2(FormControl_default, { size: "small", sx: { minWidth: 130 }, children: /* @__PURE__ */ jsx2(
|
|
2863
|
+
Select_default,
|
|
2866
2864
|
{
|
|
2867
2865
|
value: leadStatusFilter,
|
|
2868
2866
|
onChange: (e) => {
|
|
@@ -2870,14 +2868,14 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2870
2868
|
setLeadPage(0);
|
|
2871
2869
|
},
|
|
2872
2870
|
sx: { height: 36, borderRadius: "30px", fontSize: "0.85rem" },
|
|
2873
|
-
children: LEAD_STATUSES.map((s) => /* @__PURE__ */ jsx2(
|
|
2871
|
+
children: LEAD_STATUSES.map((s) => /* @__PURE__ */ jsx2(MenuItem_default, { value: s, children: s }, s))
|
|
2874
2872
|
}
|
|
2875
2873
|
) })
|
|
2876
2874
|
] })
|
|
2877
2875
|
] }),
|
|
2878
|
-
/* @__PURE__ */ jsxs(
|
|
2876
|
+
/* @__PURE__ */ jsxs(Box_default, { sx: { display: "flex", alignItems: "center", justifyContent: "space-between", gap: 1, flexWrap: "wrap" }, children: [
|
|
2879
2877
|
/* @__PURE__ */ jsxs(
|
|
2880
|
-
|
|
2878
|
+
Box_default,
|
|
2881
2879
|
{
|
|
2882
2880
|
sx: {
|
|
2883
2881
|
display: "flex",
|
|
@@ -2906,7 +2904,7 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2906
2904
|
}
|
|
2907
2905
|
}
|
|
2908
2906
|
) }),
|
|
2909
|
-
(leadStartDate || leadEndDate) && /* @__PURE__ */ jsx2(
|
|
2907
|
+
(leadStartDate || leadEndDate) && /* @__PURE__ */ jsx2(Tooltip_default, { title: "Clear dates", children: /* @__PURE__ */ jsx2(IconButton_default, { size: "small", onClick: clearLeadDates, sx: { p: 0.5, color: "#7a8599" }, children: /* @__PURE__ */ jsx2(Clear_default, { sx: { fontSize: 16 } }) }) })
|
|
2910
2908
|
]
|
|
2911
2909
|
}
|
|
2912
2910
|
),
|
|
@@ -2923,14 +2921,14 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2923
2921
|
)
|
|
2924
2922
|
] })
|
|
2925
2923
|
] }),
|
|
2926
|
-
/* @__PURE__ */ jsx2(
|
|
2924
|
+
/* @__PURE__ */ jsx2(Box_default, { sx: {
|
|
2927
2925
|
overflowX: "auto",
|
|
2928
2926
|
overflowY: "visible",
|
|
2929
2927
|
WebkitOverflowScrolling: "touch",
|
|
2930
2928
|
"&::-webkit-scrollbar": { height: 4 },
|
|
2931
2929
|
"&::-webkit-scrollbar-thumb": { backgroundColor: "#ccc", borderRadius: 2 }
|
|
2932
|
-
}, children: /* @__PURE__ */ jsxs(
|
|
2933
|
-
/* @__PURE__ */ jsx2(
|
|
2930
|
+
}, children: /* @__PURE__ */ jsxs(Table_default, { size: "small", sx: { minWidth: 980 }, children: [
|
|
2931
|
+
/* @__PURE__ */ jsx2(TableHead_default, { children: /* @__PURE__ */ jsx2(TableRow_default, { sx: { backgroundColor: "#f1f1f1" }, children: [
|
|
2934
2932
|
"Number",
|
|
2935
2933
|
"Status",
|
|
2936
2934
|
"Priority",
|
|
@@ -2947,9 +2945,9 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2947
2945
|
"Outcome",
|
|
2948
2946
|
...showVoicemail ? ["Voice Mail"] : [],
|
|
2949
2947
|
"Actions"
|
|
2950
|
-
].map((col) => /* @__PURE__ */ jsx2(
|
|
2951
|
-
/* @__PURE__ */ jsx2(
|
|
2952
|
-
|
|
2948
|
+
].map((col) => /* @__PURE__ */ jsx2(TableCell_default, { sx: __spreadValues(__spreadValues({}, headCellSx), col === "Actions" ? { textAlign: "center" } : {}), children: col }, col)) }) }),
|
|
2949
|
+
/* @__PURE__ */ jsx2(TableBody_default, { children: leadsLoading ? /* @__PURE__ */ jsx2(TableRow_default, { children: /* @__PURE__ */ jsx2(TableCell_default, { colSpan: showVoicemail ? 16 : 15, align: "center", sx: { py: 4 }, children: /* @__PURE__ */ jsx2(CircularProgress_default, { size: 24, sx: { color: "#1A5F6C" } }) }) }) : leads.length === 0 ? /* @__PURE__ */ jsx2(TableRow_default, { children: /* @__PURE__ */ jsx2(
|
|
2950
|
+
TableCell_default,
|
|
2953
2951
|
{
|
|
2954
2952
|
colSpan: showVoicemail ? 16 : 15,
|
|
2955
2953
|
align: "center",
|
|
@@ -2967,25 +2965,25 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
2967
2965
|
const isDialable = isDialerEnabled && hasOutboundPermission && isAgentIdle && !isCompleted && !isInProgress && dialLoading !== lead.id;
|
|
2968
2966
|
const dialTooltip = !isDialerEnabled ? "Dialer is not enabled" : !hasOutboundPermission ? "No outbound call permission" : isCompleted ? "Lead is completed" : isInProgress ? "Lead is in progress" : !isAgentIdle ? "Agent is not idle" : dialLoading === lead.id ? "Dialing\u2026" : `Call ${lead.phoneNumber}`;
|
|
2969
2967
|
const { chip: prioChip, label: prioLabel } = leadPriorityChipSx(lead.priority);
|
|
2970
|
-
return /* @__PURE__ */ jsxs(
|
|
2971
|
-
/* @__PURE__ */ jsx2(
|
|
2972
|
-
/* @__PURE__ */ jsx2(
|
|
2973
|
-
/* @__PURE__ */ jsx2(
|
|
2974
|
-
/* @__PURE__ */ jsx2(
|
|
2975
|
-
/* @__PURE__ */ jsx2(
|
|
2976
|
-
/* @__PURE__ */ jsx2(
|
|
2977
|
-
/* @__PURE__ */ jsx2(
|
|
2978
|
-
/* @__PURE__ */ jsx2(
|
|
2979
|
-
/* @__PURE__ */ jsx2(
|
|
2980
|
-
/* @__PURE__ */ jsx2(
|
|
2981
|
-
/* @__PURE__ */ jsx2(
|
|
2982
|
-
/* @__PURE__ */ jsx2(
|
|
2983
|
-
/* @__PURE__ */ jsx2(
|
|
2984
|
-
/* @__PURE__ */ jsx2(
|
|
2985
|
-
showVoicemail && /* @__PURE__ */ jsx2(
|
|
2986
|
-
/* @__PURE__ */ jsxs(
|
|
2987
|
-
/* @__PURE__ */ jsx2(
|
|
2988
|
-
|
|
2968
|
+
return /* @__PURE__ */ jsxs(TableRow_default, { sx: tableRowSx, children: [
|
|
2969
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: bodyCellSx, children: lead.phoneNumber }),
|
|
2970
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: bodyCellSx, children: /* @__PURE__ */ jsx2(Chip_default, { label: lead.status || "pending", size: "small", sx: leadStatusChipSx(lead.status) }) }),
|
|
2971
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: bodyCellSx, children: /* @__PURE__ */ jsx2(Chip_default, { label: prioLabel, size: "small", sx: prioChip }) }),
|
|
2972
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: bodyCellSx, children: lead.source || "" }),
|
|
2973
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: __spreadProps(__spreadValues({}, bodyCellSx), { maxWidth: 140, overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }), children: /* @__PURE__ */ jsx2(Tooltip_default, { title: lead.originalCallId || "", children: /* @__PURE__ */ jsx2("span", { children: lead.originalCallId || "" }) }) }),
|
|
2974
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: bodyCellSx, children: lead.queueName || "" }),
|
|
2975
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: bodyCellSx, children: (_a2 = lead.attemptCount) != null ? _a2 : 0 }),
|
|
2976
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: __spreadProps(__spreadValues({}, bodyCellSx), { whiteSpace: "nowrap" }), children: lead.createdAt ? new Date(lead.createdAt).toLocaleString() : "" }),
|
|
2977
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: __spreadProps(__spreadValues({}, bodyCellSx), { whiteSpace: "nowrap" }), children: lead.lastAttemptAt ? new Date(lead.lastAttemptAt).toLocaleString() : "" }),
|
|
2978
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: __spreadProps(__spreadValues({}, bodyCellSx), { whiteSpace: "nowrap" }), children: lead.nextAttemptAt ? new Date(lead.nextAttemptAt).toLocaleString() : "" }),
|
|
2979
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: bodyCellSx, children: lead.lastOutcome || "" }),
|
|
2980
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: __spreadProps(__spreadValues({}, bodyCellSx), { whiteSpace: "nowrap" }), children: lead.completedAt ? new Date(lead.completedAt).toLocaleString() : "" }),
|
|
2981
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: __spreadProps(__spreadValues({}, bodyCellSx), { maxWidth: 150, overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }), children: lead.notes ? /* @__PURE__ */ jsx2(Tooltip_default, { title: lead.notes, arrow: true, placement: "top", children: /* @__PURE__ */ jsx2("span", { children: lead.notes }) }) : "" }),
|
|
2982
|
+
/* @__PURE__ */ jsx2(TableCell_default, { sx: bodyCellSx, children: lead.lastReason || "" }),
|
|
2983
|
+
showVoicemail && /* @__PURE__ */ jsx2(TableCell_default, { sx: __spreadProps(__spreadValues({}, bodyCellSx), { minWidth: 180 }), children: lead.originalCallId ? /* @__PURE__ */ jsx2(CallRecording, { callUuid: lead.originalCallId, recordingPath: lead.voicemail, iconOnly: true }) : "" }),
|
|
2984
|
+
/* @__PURE__ */ jsxs(TableCell_default, { sx: __spreadProps(__spreadValues({}, bodyCellSx), { textAlign: "center", whiteSpace: "nowrap" }), children: [
|
|
2985
|
+
/* @__PURE__ */ jsx2(Tooltip_default, { title: dialTooltip, children: /* @__PURE__ */ jsx2("span", { children: /* @__PURE__ */ jsx2(
|
|
2986
|
+
IconButton_default,
|
|
2989
2987
|
{
|
|
2990
2988
|
size: "small",
|
|
2991
2989
|
onClick: () => handleDialPreview(lead.id),
|
|
@@ -3002,11 +3000,11 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
3002
3000
|
boxShadow: isDialable ? "0 0 8px rgba(67,160,71,0.5)" : "none"
|
|
3003
3001
|
}
|
|
3004
3002
|
},
|
|
3005
|
-
children: dialLoading === lead.id ? /* @__PURE__ */ jsx2(
|
|
3003
|
+
children: dialLoading === lead.id ? /* @__PURE__ */ jsx2(CircularProgress_default, { size: 16 }) : /* @__PURE__ */ jsx2(Phone_default, { sx: { fontSize: 18 } })
|
|
3006
3004
|
}
|
|
3007
3005
|
) }) }),
|
|
3008
|
-
/* @__PURE__ */ jsx2(
|
|
3009
|
-
|
|
3006
|
+
/* @__PURE__ */ jsx2(Tooltip_default, { title: lead.latestCallId ? "View call details" : "No call data available", children: /* @__PURE__ */ jsx2("span", { children: /* @__PURE__ */ jsx2(
|
|
3007
|
+
IconButton_default,
|
|
3010
3008
|
{
|
|
3011
3009
|
size: "small",
|
|
3012
3010
|
onClick: () => handleViewCallData(lead),
|
|
@@ -3026,8 +3024,8 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
3026
3024
|
SDK_PERMISSIONS.CAMPAIGNS_LEADS_DELETE
|
|
3027
3025
|
],
|
|
3028
3026
|
showFallback: false,
|
|
3029
|
-
children: /* @__PURE__ */ jsx2(
|
|
3030
|
-
|
|
3027
|
+
children: /* @__PURE__ */ jsx2(Tooltip_default, { title: deleteDisabled ? `Cannot delete \u2014 status is ${leadStatus.toLowerCase().replace("_", " ")}` : `Delete lead ${lead.phoneNumber}`, children: /* @__PURE__ */ jsx2("span", { children: /* @__PURE__ */ jsx2(
|
|
3028
|
+
IconButton_default,
|
|
3031
3029
|
{
|
|
3032
3030
|
size: "small",
|
|
3033
3031
|
onClick: () => {
|
|
@@ -3058,7 +3056,7 @@ var CampaignsContent = memo(function CampaignsContent2() {
|
|
|
3058
3056
|
}) })
|
|
3059
3057
|
] }) }),
|
|
3060
3058
|
leads.length > 0 && /* @__PURE__ */ jsx2(
|
|
3061
|
-
|
|
3059
|
+
TablePagination_default,
|
|
3062
3060
|
{
|
|
3063
3061
|
component: "div",
|
|
3064
3062
|
count: leadTotal,
|
|
@@ -3183,4 +3181,4 @@ var campaigns_default = Campaigns;
|
|
|
3183
3181
|
export {
|
|
3184
3182
|
campaigns_default as default
|
|
3185
3183
|
};
|
|
3186
|
-
//# sourceMappingURL=campaigns-
|
|
3184
|
+
//# sourceMappingURL=campaigns-5PVHXBSD.mjs.map
|