callix-dialer-widget 1.1.5 → 1.1.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.
|
@@ -53044,10 +53044,10 @@ const MAX_DIAL_LENGTH = 32;
|
|
|
53044
53044
|
const DEFAULT_DIALER_DIMENSIONS = { width: 448, height: 640 };
|
|
53045
53045
|
const MIN_DIALER_WIDTH = 280;
|
|
53046
53046
|
const MIN_DIALER_HEIGHT = 420;
|
|
53047
|
-
const MAX_DIALER_WIDTH =
|
|
53048
|
-
const MAX_DIALER_HEIGHT =
|
|
53049
|
-
const MIN_DIALER_SCALE = 0.
|
|
53050
|
-
const MAX_DIALER_SCALE =
|
|
53047
|
+
const MAX_DIALER_WIDTH = 1024;
|
|
53048
|
+
const MAX_DIALER_HEIGHT = 960;
|
|
53049
|
+
const MIN_DIALER_SCALE = 0.55;
|
|
53050
|
+
const MAX_DIALER_SCALE = 2.5;
|
|
53051
53051
|
const VIEWPORT_MARGIN_SMALL = 12;
|
|
53052
53052
|
const VIEWPORT_MARGIN_DEFAULT = 16;
|
|
53053
53053
|
const keypadKeys = [
|
|
@@ -53413,6 +53413,8 @@ function FloatingDialer({
|
|
|
53413
53413
|
}
|
|
53414
53414
|
);
|
|
53415
53415
|
const scale = Number.isFinite(contentScale) && contentScale > 0 ? contentScale : 1;
|
|
53416
|
+
const scaledWidth = DEFAULT_DIALER_DIMENSIONS.width / scale;
|
|
53417
|
+
const scaledHeight = DEFAULT_DIALER_DIMENSIONS.height / scale;
|
|
53416
53418
|
const cardStyle = {
|
|
53417
53419
|
width: manualSize ? `${manualSize.width}px` : void 0,
|
|
53418
53420
|
height: manualSize ? `${manualSize.height}px` : void 0,
|
|
@@ -53427,15 +53429,15 @@ function FloatingDialer({
|
|
|
53427
53429
|
flexDirection: "column",
|
|
53428
53430
|
transform: `scale(${scale})`,
|
|
53429
53431
|
transformOrigin: "top left",
|
|
53430
|
-
width: `${
|
|
53431
|
-
minHeight: `${
|
|
53432
|
+
width: `${scaledWidth}px`,
|
|
53433
|
+
minHeight: `${scaledHeight}px`
|
|
53432
53434
|
};
|
|
53433
53435
|
const cardContentStyle = {
|
|
53434
53436
|
flex: 1,
|
|
53435
53437
|
display: "flex",
|
|
53436
53438
|
flexDirection: "column",
|
|
53437
|
-
|
|
53438
|
-
|
|
53439
|
+
width: `${DEFAULT_DIALER_DIMENSIONS.width}px`,
|
|
53440
|
+
minHeight: `${DEFAULT_DIALER_DIMENSIONS.height}px`
|
|
53439
53441
|
};
|
|
53440
53442
|
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
53441
53443
|
"div",
|
|
@@ -53455,35 +53457,43 @@ function FloatingDialer({
|
|
|
53455
53457
|
className: tw`relative flex flex-col items-start overflow-hidden rounded-3xl border border-slate-200/60 bg-gradient-to-br from-white/95 via-slate-50/95 to-white/90 shadow-2xl backdrop-blur-lg transition-all duration-300 w-[min(32rem,calc(100vw-1.5rem))] max-w-[calc(100vw-1.5rem)] sm:w-[28rem] md:w-[30rem] max-h-[calc(100vh-3rem)] sm:max-h-none`,
|
|
53456
53458
|
style: cardStyle,
|
|
53457
53459
|
children: [
|
|
53458
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: tw`flex flex-1 flex-col overflow-hidden`, style: scaledWrapperStyle, children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
53459
|
-
|
|
53460
|
-
|
|
53461
|
-
|
|
53462
|
-
|
|
53463
|
-
|
|
53464
|
-
|
|
53465
|
-
|
|
53466
|
-
|
|
53467
|
-
|
|
53468
|
-
|
|
53469
|
-
|
|
53470
|
-
|
|
53471
|
-
|
|
53472
|
-
|
|
53473
|
-
|
|
53474
|
-
|
|
53475
|
-
|
|
53476
|
-
|
|
53477
|
-
|
|
53478
|
-
|
|
53479
|
-
|
|
53480
|
-
|
|
53481
|
-
|
|
53482
|
-
|
|
53483
|
-
|
|
53484
|
-
|
|
53485
|
-
|
|
53486
|
-
|
|
53460
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: tw`flex flex-1 flex-col overflow-hidden`, style: scaledWrapperStyle, children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
53461
|
+
"div",
|
|
53462
|
+
{
|
|
53463
|
+
"data-floating-dialer-content": true,
|
|
53464
|
+
className: tw`flex flex-1 flex-col rounded-3xl overflow-hidden`,
|
|
53465
|
+
style: cardContentStyle,
|
|
53466
|
+
children: [
|
|
53467
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
53468
|
+
"div",
|
|
53469
|
+
{
|
|
53470
|
+
className: tw`cursor-grab touch-none active:cursor-grabbing flex items-center justify-between bg-gradient-to-r from-primary to-primaryDark px-4 py-3 text-white shadow-sm`,
|
|
53471
|
+
onPointerDown: beginDrag,
|
|
53472
|
+
children: [
|
|
53473
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: tw`flex items-center gap-3`, children: [
|
|
53474
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: tw`inline-flex h-10 w-10 items-center justify-center rounded-2xl bg-white/15 shadow-inner`, children: /* @__PURE__ */ jsxRuntimeExports.jsx(FiPhoneCall, { className: tw`text-xl` }) }),
|
|
53475
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: tw`space-y-0.5`, children: [
|
|
53476
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: tw`text-[11px] uppercase tracking-[0.2em] text-white/70`, children: "Discadora" }),
|
|
53477
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: tw`text-base font-semibold`, children: username ?? "Visitante" })
|
|
53478
|
+
] })
|
|
53479
|
+
] }),
|
|
53480
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
53481
|
+
"button",
|
|
53482
|
+
{
|
|
53483
|
+
type: "button",
|
|
53484
|
+
className: tw`rounded-full p-2 text-white/80 transition hover:bg-white/15 hover:text-white`,
|
|
53485
|
+
onClick: () => setIsOpen(false),
|
|
53486
|
+
"aria-label": "Fechar discadora",
|
|
53487
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(FiX, { className: tw`text-lg` })
|
|
53488
|
+
}
|
|
53489
|
+
)
|
|
53490
|
+
]
|
|
53491
|
+
}
|
|
53492
|
+
),
|
|
53493
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: tw`flex-1 overflow-y-auto p-3`, children: dialerContent })
|
|
53494
|
+
]
|
|
53495
|
+
}
|
|
53496
|
+
) }),
|
|
53487
53497
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
53488
53498
|
"div",
|
|
53489
53499
|
{
|
|
@@ -54297,7 +54307,7 @@ function AuthenticatedDialer({ username, dialValue, setDialValue, onLogout }) {
|
|
|
54297
54307
|
"aria-label": "Discador manual",
|
|
54298
54308
|
onFocusCapture: handleFocusWithin,
|
|
54299
54309
|
onBlurCapture: handleBlurWithin,
|
|
54300
|
-
className: tw`space-y-3
|
|
54310
|
+
className: tw`space-y-3 rounded-2xl outline-none`,
|
|
54301
54311
|
children: [
|
|
54302
54312
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: tw`flex items-center justify-between gap-2`, children: [
|
|
54303
54313
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: tw`flex items-center gap-2 min-w-0 flex-1`, children: [
|
|
@@ -54506,23 +54516,23 @@ function AuthenticatedDialer({ username, dialValue, setDialValue, onLogout }) {
|
|
|
54506
54516
|
}
|
|
54507
54517
|
)
|
|
54508
54518
|
] }),
|
|
54509
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: tw`rounded-xl border border-slate-200 bg-white/80 p-
|
|
54519
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: tw`rounded-xl border border-slate-200 bg-white/80 p-3 shadow-sm`, children: [
|
|
54510
54520
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: tw`flex flex-wrap items-center justify-between gap-2`, children: [
|
|
54511
54521
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { children: [
|
|
54512
54522
|
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: tw`text-[10px] uppercase tracking-wide text-slate-500`, children: "Volume" }),
|
|
54513
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs("p", { className: tw`text-
|
|
54523
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("p", { className: tw`text-sm font-semibold text-slate-800`, children: [
|
|
54514
54524
|
"Saída ",
|
|
54515
54525
|
volumePercent,
|
|
54516
54526
|
"%"
|
|
54517
54527
|
] })
|
|
54518
54528
|
] }),
|
|
54519
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: tw`flex items-center gap-
|
|
54529
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: tw`flex items-center gap-2`, children: [
|
|
54520
54530
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
54521
54531
|
"button",
|
|
54522
54532
|
{
|
|
54523
54533
|
type: "button",
|
|
54524
54534
|
onClick: () => setVolumeClamped((outputVolume ?? 0) - 0.05),
|
|
54525
|
-
className: tw`inline-flex h-
|
|
54535
|
+
className: tw`inline-flex h-8 w-8 items-center justify-center rounded-full border border-slate-200 bg-white text-slate-600 transition hover:border-primary/60 hover:text-primary`,
|
|
54526
54536
|
"aria-label": "Diminuir volume",
|
|
54527
54537
|
children: /* @__PURE__ */ jsxRuntimeExports.jsx(FiMinus, { className: tw`text-sm` })
|
|
54528
54538
|
}
|
|
@@ -54536,7 +54546,7 @@ function AuthenticatedDialer({ username, dialValue, setDialValue, onLogout }) {
|
|
|
54536
54546
|
step: 0.01,
|
|
54537
54547
|
value: Number.isFinite(outputVolume) ? outputVolume : 0,
|
|
54538
54548
|
onChange: (event2) => setVolumeClamped(parseFloat(event2.target.value)),
|
|
54539
|
-
className: tw`h-1 w-full max-w-
|
|
54549
|
+
className: tw`h-1 w-full max-w-full cursor-pointer appearance-none rounded-full bg-slate-200 accent-primary`,
|
|
54540
54550
|
"aria-label": "Volume de saida"
|
|
54541
54551
|
}
|
|
54542
54552
|
),
|
|
@@ -54545,21 +54555,21 @@ function AuthenticatedDialer({ username, dialValue, setDialValue, onLogout }) {
|
|
|
54545
54555
|
{
|
|
54546
54556
|
type: "button",
|
|
54547
54557
|
onClick: () => setVolumeClamped((outputVolume ?? 0) + 0.05),
|
|
54548
|
-
className: tw`inline-flex h-
|
|
54558
|
+
className: tw`inline-flex h-8 w-8 items-center justify-center rounded-full border border-slate-200 bg-white text-slate-600 transition hover:border-primary/60 hover:text-primary`,
|
|
54549
54559
|
"aria-label": "Aumentar volume",
|
|
54550
54560
|
children: /* @__PURE__ */ jsxRuntimeExports.jsx(FiPlus, { className: tw`text-sm` })
|
|
54551
54561
|
}
|
|
54552
54562
|
)
|
|
54553
54563
|
] })
|
|
54554
54564
|
] }),
|
|
54555
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: tw`mt-2 flex flex-wrap items-center gap-2 text-
|
|
54565
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: tw`mt-2 flex flex-wrap items-center gap-2 text-xs text-slate-600`, children: [
|
|
54556
54566
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: tw`flex items-center gap-1.5`, children: [
|
|
54557
54567
|
/* @__PURE__ */ jsxRuntimeExports.jsx(FiMic, { className: tw`text-sm text-primary` }),
|
|
54558
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: tw`truncate max-w-
|
|
54568
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: tw`truncate max-w-full`, children: inputDeviceLabel })
|
|
54559
54569
|
] }),
|
|
54560
54570
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: tw`flex items-center gap-1.5`, children: [
|
|
54561
54571
|
/* @__PURE__ */ jsxRuntimeExports.jsx(FiHeadphones, { className: tw`text-sm text-primary` }),
|
|
54562
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: tw`truncate max-w-
|
|
54572
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: tw`truncate max-w-full`, children: outputDeviceLabel })
|
|
54563
54573
|
] }),
|
|
54564
54574
|
(audioDevices.inputs.length > 0 || audioDevices.outputs.length > 0) && /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
54565
54575
|
"button",
|
|
@@ -54574,7 +54584,7 @@ function AuthenticatedDialer({ username, dialValue, setDialValue, onLogout }) {
|
|
|
54574
54584
|
}
|
|
54575
54585
|
)
|
|
54576
54586
|
] }),
|
|
54577
|
-
isDevicePanelOpen && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: tw`mt-3 grid gap-2
|
|
54587
|
+
isDevicePanelOpen && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: tw`mt-3 grid gap-2`, children: [
|
|
54578
54588
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("label", { className: tw`space-y-1 text-xs text-slate-700`, children: [
|
|
54579
54589
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("span", { className: tw`flex items-center gap-1.5 font-semibold`, children: [
|
|
54580
54590
|
/* @__PURE__ */ jsxRuntimeExports.jsx(FiMic, { className: tw`text-sm text-primary` }),
|
|
@@ -54583,7 +54593,7 @@ function AuthenticatedDialer({ username, dialValue, setDialValue, onLogout }) {
|
|
|
54583
54593
|
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
54584
54594
|
"select",
|
|
54585
54595
|
{
|
|
54586
|
-
className: tw`w-full rounded-lg border border-slate-200 bg-white px-2.5 py-1.5 text-
|
|
54596
|
+
className: tw`w-full rounded-lg border border-slate-200 bg-white px-2.5 py-1.5 text-xs shadow-inner focus:border-primary focus:outline-none focus:ring-2 focus:ring-primary/40`,
|
|
54587
54597
|
value: selectedInputId ?? "",
|
|
54588
54598
|
onChange: handleSelectInputDevice,
|
|
54589
54599
|
children: [
|
|
@@ -54601,7 +54611,7 @@ function AuthenticatedDialer({ username, dialValue, setDialValue, onLogout }) {
|
|
|
54601
54611
|
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
54602
54612
|
"select",
|
|
54603
54613
|
{
|
|
54604
|
-
className: tw`w-full rounded-lg border border-slate-200 bg-white px-2.5 py-1.5 text-
|
|
54614
|
+
className: tw`w-full rounded-lg border border-slate-200 bg-white px-2.5 py-1.5 text-xs shadow-inner focus:border-primary focus:outline-none focus:ring-2 focus:ring-primary/40`,
|
|
54605
54615
|
value: selectedOutputId ?? "",
|
|
54606
54616
|
onChange: handleSelectOutputDevice,
|
|
54607
54617
|
children: [
|
|
@@ -55047,37 +55057,26 @@ function InlineDialer(props) {
|
|
|
55047
55057
|
inset: auto !important;
|
|
55048
55058
|
transform: none !important;
|
|
55049
55059
|
width: 100% !important;
|
|
55050
|
-
max-width: 100% !important;
|
|
55051
|
-
min-width: 0 !important;
|
|
55052
55060
|
height: 100% !important;
|
|
55053
|
-
max-height: 100% !important;
|
|
55054
|
-
min-height: 0 !important;
|
|
55055
55061
|
}
|
|
55056
55062
|
.callix-inline-wrapper [data-floating-dialer-card] {
|
|
55063
|
+
position: relative !important;
|
|
55064
|
+
inset: auto !important;
|
|
55065
|
+
transform: none !important;
|
|
55057
55066
|
width: 100% !important;
|
|
55058
|
-
max-width: 100% !important;
|
|
55059
|
-
min-width: 0 !important;
|
|
55060
55067
|
height: 100% !important;
|
|
55061
|
-
max-height: 100% !important;
|
|
55062
|
-
min-height: 0 !important;
|
|
55063
55068
|
box-shadow: none !important;
|
|
55064
55069
|
backdrop-filter: none !important;
|
|
55065
55070
|
}
|
|
55066
|
-
.callix-inline-wrapper [data-floating-dialer-card] > * {
|
|
55067
|
-
width: 100% !important;
|
|
55068
|
-
height: 100% !important;
|
|
55069
|
-
}
|
|
55070
55071
|
.callix-inline-wrapper [data-floating-dialer-card] > div:first-child {
|
|
55071
|
-
transform: none !important;
|
|
55072
|
-
width: 100% !important;
|
|
55073
|
-
min-height: 100% !important;
|
|
55074
|
-
}
|
|
55075
|
-
.callix-inline-wrapper [data-floating-dialer-card] > div:first-child > div:first-child {
|
|
55076
55072
|
width: 100% !important;
|
|
55077
|
-
|
|
55073
|
+
height: 100% !important;
|
|
55074
|
+
transform-origin: top left !important;
|
|
55078
55075
|
}
|
|
55079
|
-
.callix-inline-wrapper [data-floating-dialer-card]
|
|
55080
|
-
|
|
55076
|
+
.callix-inline-wrapper [data-floating-dialer-card] [data-floating-dialer-content] {
|
|
55077
|
+
width: auto !important;
|
|
55078
|
+
min-width: 448px !important;
|
|
55079
|
+
min-height: 640px !important;
|
|
55081
55080
|
}
|
|
55082
55081
|
.callix-inline-wrapper [data-floating-dialer-resize] {
|
|
55083
55082
|
display: none !important;
|
|
@@ -55134,6 +55133,12 @@ class CallixDialerWidget {
|
|
|
55134
55133
|
}
|
|
55135
55134
|
}
|
|
55136
55135
|
}
|
|
55136
|
+
const getStorageKeys = (username) => ({
|
|
55137
|
+
SESSION_TOKEN: `callix_dialer_${username}_session_token`,
|
|
55138
|
+
DOMAIN: `callix_dialer_${username}_domain`,
|
|
55139
|
+
TIMESTAMP: `callix_dialer_${username}_timestamp`
|
|
55140
|
+
});
|
|
55141
|
+
const LAST_USERNAME_KEY = "callix_dialer_last_username";
|
|
55137
55142
|
const SESSION_EXPIRATION_MS = 8 * 60 * 60 * 1e3;
|
|
55138
55143
|
function DialerWrapper({ options }) {
|
|
55139
55144
|
const [username, setUsername] = useState(null);
|
|
@@ -55149,22 +55154,27 @@ function DialerWrapper({ options }) {
|
|
|
55149
55154
|
return;
|
|
55150
55155
|
}
|
|
55151
55156
|
try {
|
|
55152
|
-
const
|
|
55157
|
+
const storedLastUsername = localStorage.getItem(LAST_USERNAME_KEY);
|
|
55158
|
+
if (!storedLastUsername) {
|
|
55159
|
+
setIsRestoringSession(false);
|
|
55160
|
+
return;
|
|
55161
|
+
}
|
|
55162
|
+
const STORAGE_KEYS = getStorageKeys(storedLastUsername);
|
|
55153
55163
|
const storedToken = localStorage.getItem(STORAGE_KEYS.SESSION_TOKEN);
|
|
55154
55164
|
const storedDomain = localStorage.getItem(STORAGE_KEYS.DOMAIN);
|
|
55155
55165
|
const storedTimestamp = localStorage.getItem(STORAGE_KEYS.TIMESTAMP);
|
|
55156
|
-
if (
|
|
55166
|
+
if (storedLastUsername && storedToken && storedDomain && storedTimestamp) {
|
|
55157
55167
|
const timestamp = parseInt(storedTimestamp, 10);
|
|
55158
55168
|
const now = Date.now();
|
|
55159
55169
|
if (now - timestamp < SESSION_EXPIRATION_MS) {
|
|
55160
|
-
console.log("[Callix Dialer] Restaurando sessão salva:",
|
|
55161
|
-
setUsername(
|
|
55170
|
+
console.log("[Callix Dialer] Restaurando sessão salva:", storedLastUsername);
|
|
55171
|
+
setUsername(storedLastUsername);
|
|
55162
55172
|
setSessionToken(storedToken);
|
|
55163
55173
|
setCallixDomain(storedDomain);
|
|
55164
55174
|
setIsAuthenticated(true);
|
|
55165
55175
|
} else {
|
|
55166
55176
|
console.log("[Callix Dialer] Sessão expirada, limpando...");
|
|
55167
|
-
localStorage.removeItem(
|
|
55177
|
+
localStorage.removeItem(LAST_USERNAME_KEY);
|
|
55168
55178
|
localStorage.removeItem(STORAGE_KEYS.SESSION_TOKEN);
|
|
55169
55179
|
localStorage.removeItem(STORAGE_KEYS.DOMAIN);
|
|
55170
55180
|
localStorage.removeItem(STORAGE_KEYS.TIMESTAMP);
|
|
@@ -55202,7 +55212,8 @@ function DialerWrapper({ options }) {
|
|
|
55202
55212
|
setError(null);
|
|
55203
55213
|
if (typeof window !== "undefined") {
|
|
55204
55214
|
try {
|
|
55205
|
-
|
|
55215
|
+
const STORAGE_KEYS = getStorageKeys(user);
|
|
55216
|
+
localStorage.setItem(LAST_USERNAME_KEY, user);
|
|
55206
55217
|
localStorage.setItem(STORAGE_KEYS.SESSION_TOKEN, data.userSessionToken);
|
|
55207
55218
|
localStorage.setItem(STORAGE_KEYS.DOMAIN, data.domain || "villelabrasil.callix.com.br");
|
|
55208
55219
|
localStorage.setItem(STORAGE_KEYS.TIMESTAMP, Date.now().toString());
|
|
@@ -55222,14 +55233,16 @@ function DialerWrapper({ options }) {
|
|
|
55222
55233
|
}
|
|
55223
55234
|
};
|
|
55224
55235
|
const handleLogout = () => {
|
|
55236
|
+
const currentUsername = username;
|
|
55225
55237
|
setUsername(null);
|
|
55226
55238
|
setIsAuthenticated(false);
|
|
55227
55239
|
setSessionToken(null);
|
|
55228
55240
|
setCallixDomain(null);
|
|
55229
55241
|
setError(null);
|
|
55230
|
-
if (typeof window !== "undefined") {
|
|
55242
|
+
if (typeof window !== "undefined" && currentUsername) {
|
|
55231
55243
|
try {
|
|
55232
|
-
|
|
55244
|
+
const STORAGE_KEYS = getStorageKeys(currentUsername);
|
|
55245
|
+
localStorage.removeItem(LAST_USERNAME_KEY);
|
|
55233
55246
|
localStorage.removeItem(STORAGE_KEYS.SESSION_TOKEN);
|
|
55234
55247
|
localStorage.removeItem(STORAGE_KEYS.DOMAIN);
|
|
55235
55248
|
localStorage.removeItem(STORAGE_KEYS.TIMESTAMP);
|