@burdenoff/microfe-subscriberbot 2026.625.1 → 2026.626.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/subscriberbot/pages/HomePage.js +19 -14
- package/dist/subscriberbot/pages/HomePage.js.map +1 -1
- package/dist/subscriberbot/pages/admin/AdminAnalyticsPage.js +66 -60
- package/dist/subscriberbot/pages/admin/AdminAnalyticsPage.js.map +1 -1
- package/dist/subscriberbot/pages/admin/AdminDashboard.js +83 -44
- package/dist/subscriberbot/pages/admin/AdminDashboard.js.map +1 -1
- package/dist/subscriberbot/pages/admin/AdminFinancialPage.js +38 -32
- package/dist/subscriberbot/pages/admin/AdminFinancialPage.js.map +1 -1
- package/dist/subscriberbot/pages/admin/AdminOrdersPage.js +226 -221
- package/dist/subscriberbot/pages/admin/AdminOrdersPage.js.map +1 -1
- package/dist/subscriberbot/pages/admin/AdminProfilePage.js +127 -125
- package/dist/subscriberbot/pages/admin/AdminProfilePage.js.map +1 -1
- package/dist/subscriberbot/pages/admin/AdminSettingsPage.js +235 -230
- package/dist/subscriberbot/pages/admin/AdminSettingsPage.js.map +1 -1
- package/dist/subscriberbot/pages/admin/CartManagementPage.js +267 -262
- package/dist/subscriberbot/pages/admin/CartManagementPage.js.map +1 -1
- package/dist/subscriberbot/pages/admin/UserManagementPage.js +267 -262
- package/dist/subscriberbot/pages/admin/UserManagementPage.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/AnalyticsDashboard.js +46 -41
- package/dist/subscriberbot/pages/cart-owner/AnalyticsDashboard.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/BusinessSettingsPage.js +257 -252
- package/dist/subscriberbot/pages/cart-owner/BusinessSettingsPage.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/CartOwnerDashboard.js +231 -194
- package/dist/subscriberbot/pages/cart-owner/CartOwnerDashboard.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/CartOwnerProfilePage.js +167 -162
- package/dist/subscriberbot/pages/cart-owner/CartOwnerProfilePage.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/CartServiceConfigPage.js +128 -126
- package/dist/subscriberbot/pages/cart-owner/CartServiceConfigPage.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/InventoryManagementPage.js +297 -300
- package/dist/subscriberbot/pages/cart-owner/InventoryManagementPage.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/OrderManagementPage.js +220 -223
- package/dist/subscriberbot/pages/cart-owner/OrderManagementPage.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/StaffManagementPage.js +250 -245
- package/dist/subscriberbot/pages/cart-owner/StaffManagementPage.js.map +1 -1
- package/dist/subscriberbot/pages/common/HelpSupportPage.js +94 -96
- package/dist/subscriberbot/pages/common/HelpSupportPage.js.map +1 -1
- package/dist/subscriberbot/pages/common/NotificationCenterPage.js +48 -42
- package/dist/subscriberbot/pages/common/NotificationCenterPage.js.map +1 -1
- package/dist/subscriberbot/pages/common/SettingsPage.js +745 -736
- package/dist/subscriberbot/pages/common/SettingsPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/BookingDetailsPage.js +353 -321
- package/dist/subscriberbot/pages/customer/BookingDetailsPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/CartDetailPage.js +258 -225
- package/dist/subscriberbot/pages/customer/CartDetailPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/CartDiscoveryPage.js +82 -76
- package/dist/subscriberbot/pages/customer/CartDiscoveryPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/CheckoutPage.js +212 -215
- package/dist/subscriberbot/pages/customer/CheckoutPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/CustomerDashboard.js +416 -381
- package/dist/subscriberbot/pages/customer/CustomerDashboard.js.map +1 -1
- package/dist/subscriberbot/pages/customer/CustomerProfilePage.js +488 -479
- package/dist/subscriberbot/pages/customer/CustomerProfilePage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/DirectServiceBookingPage.js +521 -512
- package/dist/subscriberbot/pages/customer/DirectServiceBookingPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/FavoritesPage.js +57 -51
- package/dist/subscriberbot/pages/customer/FavoritesPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/OrderHistoryPage.js +56 -50
- package/dist/subscriberbot/pages/customer/OrderHistoryPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/OrderTrackingPage.js +65 -60
- package/dist/subscriberbot/pages/customer/OrderTrackingPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/PaymentMethodsPage.js +79 -73
- package/dist/subscriberbot/pages/customer/PaymentMethodsPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/ReviewsPage.js +68 -62
- package/dist/subscriberbot/pages/customer/ReviewsPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/SavedAddressesPage.js +60 -54
- package/dist/subscriberbot/pages/customer/SavedAddressesPage.js.map +1 -1
- package/dist/subscriberbot/pages/investor/InvestmentDetailsPage.js +292 -255
- package/dist/subscriberbot/pages/investor/InvestmentDetailsPage.js.map +1 -1
- package/dist/subscriberbot/pages/investor/InvestmentOpportunitiesPage.js +237 -231
- package/dist/subscriberbot/pages/investor/InvestmentOpportunitiesPage.js.map +1 -1
- package/dist/subscriberbot/pages/investor/InvestorAnalyticsPage.js +60 -54
- package/dist/subscriberbot/pages/investor/InvestorAnalyticsPage.js.map +1 -1
- package/dist/subscriberbot/pages/investor/InvestorDashboard.js +350 -319
- package/dist/subscriberbot/pages/investor/InvestorDashboard.js.map +1 -1
- package/dist/subscriberbot/pages/investor/InvestorInvestmentsPage.js +106 -100
- package/dist/subscriberbot/pages/investor/InvestorInvestmentsPage.js.map +1 -1
- package/dist/subscriberbot/pages/investor/InvestorPortfolioPage.js +51 -45
- package/dist/subscriberbot/pages/investor/InvestorPortfolioPage.js.map +1 -1
- package/dist/subscriberbot/pages/investor/InvestorProfilePage.js +387 -382
- package/dist/subscriberbot/pages/investor/InvestorProfilePage.js.map +1 -1
- package/dist/subscriberbot/pages/worker/TaskDetailsPage.js +320 -282
- package/dist/subscriberbot/pages/worker/TaskDetailsPage.js.map +1 -1
- package/dist/subscriberbot/pages/worker/WorkerDashboard.js +92 -61
- package/dist/subscriberbot/pages/worker/WorkerDashboard.js.map +1 -1
- package/dist/subscriberbot/pages/worker/WorkerOrdersPage.js +82 -77
- package/dist/subscriberbot/pages/worker/WorkerOrdersPage.js.map +1 -1
- package/dist/subscriberbot/pages/worker/WorkerProfilePage.js +82 -77
- package/dist/subscriberbot/pages/worker/WorkerProfilePage.js.map +1 -1
- package/dist/subscriberbot/pages/worker/WorkerSchedulePage.js +348 -340
- package/dist/subscriberbot/pages/worker/WorkerSchedulePage.js.map +1 -1
- package/package.json +3 -3
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { useSubscriberBot as e } from "../../context/SubscriberBotContext.js";
|
|
2
2
|
import { cn as t } from "../../utils/cn.js";
|
|
3
3
|
import { PageLayout as n } from "../../components/PageLayout.js";
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
4
|
+
import { EmptyState as r } from "../../components/EmptyState.js";
|
|
5
|
+
import { formatDate as i } from "../../utils/formatters.js";
|
|
6
|
+
import { useMemo as a, useState as o } from "react";
|
|
7
|
+
import { AlertCircle as ee, AlertTriangle as s, BookOpen as te, CheckCircle2 as c, ChevronDown as ne, ChevronUp as re, Circle as l, CircleDot as u, Clock as d, CreditCard as f, ExternalLink as ie, FileText as p, HelpCircle as m, Info as ae, Lightbulb as oe, Mail as h, MessageCircle as g, MessageSquare as _, Phone as v, PhoneCall as y, Search as se, Send as ce, Shield as b, ShoppingBag as x, Tag as S, ThumbsUp as C, Ticket as w, TrendingUp as T, Truck as E, User as D, Wrench as O, X as k, XCircle as A } from "lucide-react";
|
|
7
8
|
import { Fragment as j, jsx as M, jsxs as N } from "react/jsx-runtime";
|
|
9
|
+
import { EmphasisPanel as le, PagePurpose as ue } from "@burdenoff/fe-libs/ui";
|
|
8
10
|
//#region src/subscriberbot/pages/common/HelpSupportPage.tsx
|
|
9
11
|
var P = [
|
|
10
12
|
"Account & Profile",
|
|
@@ -15,22 +17,22 @@ var P = [
|
|
|
15
17
|
"Technical Issues",
|
|
16
18
|
"Billing & Refunds",
|
|
17
19
|
"Privacy & Security"
|
|
18
|
-
],
|
|
20
|
+
], de = [
|
|
19
21
|
{
|
|
20
22
|
label: "Getting Started",
|
|
21
|
-
icon:
|
|
23
|
+
icon: te,
|
|
22
24
|
description: "New to SubscriberBot? Start here",
|
|
23
25
|
color: "bg-status-info-bg/10 text-status-info-text"
|
|
24
26
|
},
|
|
25
27
|
{
|
|
26
28
|
label: "Orders & Delivery",
|
|
27
|
-
icon:
|
|
29
|
+
icon: x,
|
|
28
30
|
description: "Placing, tracking, and cancelling orders",
|
|
29
31
|
color: "bg-status-success-bg/10 text-status-success-text"
|
|
30
32
|
},
|
|
31
33
|
{
|
|
32
34
|
label: "Payments & Billing",
|
|
33
|
-
icon:
|
|
35
|
+
icon: f,
|
|
34
36
|
description: "Payment methods, refunds, and invoices",
|
|
35
37
|
color: "bg-accent-purple-subtle text-accent-purple"
|
|
36
38
|
},
|
|
@@ -60,17 +62,17 @@ var P = [
|
|
|
60
62
|
},
|
|
61
63
|
{
|
|
62
64
|
label: "Security & Privacy",
|
|
63
|
-
icon:
|
|
65
|
+
icon: b,
|
|
64
66
|
description: "Data protection and safety",
|
|
65
67
|
color: "bg-status-error-bg/10 text-status-error-text"
|
|
66
68
|
},
|
|
67
69
|
{
|
|
68
70
|
label: "Technical Issues",
|
|
69
|
-
icon:
|
|
71
|
+
icon: s,
|
|
70
72
|
description: "App issues and troubleshooting",
|
|
71
73
|
color: "bg-status-warning-bg/10 text-status-warning-text"
|
|
72
74
|
}
|
|
73
|
-
],
|
|
75
|
+
], F = [
|
|
74
76
|
{
|
|
75
77
|
type: "email",
|
|
76
78
|
label: "Email Support",
|
|
@@ -103,7 +105,7 @@ var P = [
|
|
|
103
105
|
responseTime: "2-4 hours",
|
|
104
106
|
icon: _
|
|
105
107
|
}
|
|
106
|
-
],
|
|
108
|
+
], fe = [
|
|
107
109
|
{
|
|
108
110
|
id: "faq-001",
|
|
109
111
|
category: "Account & Profile",
|
|
@@ -360,7 +362,7 @@ var P = [
|
|
|
360
362
|
"data"
|
|
361
363
|
]
|
|
362
364
|
}
|
|
363
|
-
],
|
|
365
|
+
], I = [
|
|
364
366
|
{
|
|
365
367
|
id: "ticket-001",
|
|
366
368
|
subject: "Payment failed but amount deducted",
|
|
@@ -472,15 +474,15 @@ var P = [
|
|
|
472
474
|
views: 4321
|
|
473
475
|
}
|
|
474
476
|
];
|
|
475
|
-
function
|
|
477
|
+
function R(e) {
|
|
476
478
|
switch (e) {
|
|
477
|
-
case "open": return
|
|
478
|
-
case "in-progress": return
|
|
479
|
+
case "open": return l;
|
|
480
|
+
case "in-progress": return u;
|
|
479
481
|
case "resolved": return c;
|
|
480
482
|
case "closed": return A;
|
|
481
483
|
}
|
|
482
484
|
}
|
|
483
|
-
function
|
|
485
|
+
function z(e) {
|
|
484
486
|
switch (e) {
|
|
485
487
|
case "open": return "bg-status-info-bg/10 text-status-info-text";
|
|
486
488
|
case "in-progress": return "bg-status-warning-bg/10 text-status-warning-text";
|
|
@@ -488,7 +490,7 @@ function R(e) {
|
|
|
488
490
|
case "closed": return "bg-bg-sunken text-text-secondary";
|
|
489
491
|
}
|
|
490
492
|
}
|
|
491
|
-
function
|
|
493
|
+
function B(e) {
|
|
492
494
|
switch (e) {
|
|
493
495
|
case "urgent": return "bg-status-error-bg/10 text-status-error-text";
|
|
494
496
|
case "high": return "bg-status-warning-bg/10 text-status-warning-text";
|
|
@@ -496,31 +498,31 @@ function z(e) {
|
|
|
496
498
|
case "low": return "bg-bg-sunken text-text-secondary";
|
|
497
499
|
}
|
|
498
500
|
}
|
|
499
|
-
function
|
|
501
|
+
function pe(e) {
|
|
500
502
|
return e.replace("-", " ").replace(/\b\w/g, (e) => e.toUpperCase());
|
|
501
503
|
}
|
|
502
504
|
function V() {
|
|
503
|
-
let { currentUser:
|
|
505
|
+
let { currentUser: te } = e(), [l, u] = o("faq"), [f, g] = o(""), [y, b] = o(""), [x, T] = o(null), [E, D] = o(fe), [O, A] = o(I), [V, H] = o(!1), [U, W] = o(!1), [G, K] = o(""), [q, J] = o(""), [Y, X] = o({
|
|
504
506
|
subject: "",
|
|
505
507
|
category: "",
|
|
506
508
|
priority: "medium",
|
|
507
509
|
description: ""
|
|
508
|
-
}), Z =
|
|
509
|
-
let t = !
|
|
510
|
+
}), Z = a(() => E.filter((e) => {
|
|
511
|
+
let t = !f || e.question.toLowerCase().includes(f.toLowerCase()) || e.answer.toLowerCase().includes(f.toLowerCase()) || e.tags.some((e) => e.toLowerCase().includes(f.toLowerCase())), n = !y || e.category === y;
|
|
510
512
|
return t && n;
|
|
511
513
|
}), [
|
|
512
514
|
E,
|
|
513
|
-
|
|
515
|
+
f,
|
|
514
516
|
y
|
|
515
|
-
]), Q =
|
|
517
|
+
]), Q = a(() => ({
|
|
516
518
|
open: O.filter((e) => e.status === "open").length,
|
|
517
519
|
inProgress: O.filter((e) => e.status === "in-progress").length,
|
|
518
520
|
resolved: O.filter((e) => e.status === "resolved").length,
|
|
519
521
|
closed: O.filter((e) => e.status === "closed").length,
|
|
520
522
|
total: O.length
|
|
521
|
-
}), [O]),
|
|
523
|
+
}), [O]), me = (e) => {
|
|
522
524
|
T((t) => t === e ? null : e);
|
|
523
|
-
},
|
|
525
|
+
}, he = (e) => {
|
|
524
526
|
D((t) => t.map((t) => t.id === e ? {
|
|
525
527
|
...t,
|
|
526
528
|
helpful: t.helpful + 1
|
|
@@ -540,7 +542,7 @@ function V() {
|
|
|
540
542
|
alert("Live chat will be available soon!");
|
|
541
543
|
break;
|
|
542
544
|
}
|
|
543
|
-
},
|
|
545
|
+
}, ge = () => {
|
|
544
546
|
if (J(""), K(""), !Y.subject.trim()) {
|
|
545
547
|
J("Please enter a subject for your ticket.");
|
|
546
548
|
return;
|
|
@@ -570,13 +572,13 @@ function V() {
|
|
|
570
572
|
category: "",
|
|
571
573
|
priority: "medium",
|
|
572
574
|
description: ""
|
|
573
|
-
}), W(!1), H(!1), K("Support ticket created successfully! Our team will respond within 24 hours."),
|
|
575
|
+
}), W(!1), H(!1), K("Support ticket created successfully! Our team will respond within 24 hours."), u("tickets"), setTimeout(() => K(""), 5e3);
|
|
574
576
|
}, 1e3);
|
|
575
|
-
},
|
|
577
|
+
}, _e = [
|
|
576
578
|
{
|
|
577
579
|
id: "faq",
|
|
578
580
|
label: "FAQ",
|
|
579
|
-
icon:
|
|
581
|
+
icon: m
|
|
580
582
|
},
|
|
581
583
|
{
|
|
582
584
|
id: "contact",
|
|
@@ -593,6 +595,11 @@ function V() {
|
|
|
593
595
|
title: "Help & Support",
|
|
594
596
|
description: "Find answers, contact support, or track your requests",
|
|
595
597
|
children: [
|
|
598
|
+
/* @__PURE__ */ M(ue, {
|
|
599
|
+
icon: /* @__PURE__ */ M(m, { className: "h-4 w-4" }),
|
|
600
|
+
className: "mb-6",
|
|
601
|
+
children: "Stuck on something? Start here. Search the FAQ and help articles for a quick answer, raise a support ticket if you need a hand, and track the status of requests you've already sent. Most questions are answered in seconds without ever needing to wait on a reply."
|
|
602
|
+
}),
|
|
596
603
|
G && /* @__PURE__ */ N("div", {
|
|
597
604
|
className: "mb-4 flex items-center gap-2 rounded-lg border border-status-success-border/30 bg-status-success-bg/10 px-4 py-3 text-sm text-status-success-text",
|
|
598
605
|
children: [
|
|
@@ -606,22 +613,22 @@ function V() {
|
|
|
606
613
|
})
|
|
607
614
|
]
|
|
608
615
|
}),
|
|
609
|
-
/* @__PURE__ */ M(
|
|
616
|
+
/* @__PURE__ */ M(le, {
|
|
610
617
|
className: "mb-6",
|
|
611
618
|
children: /* @__PURE__ */ N("div", {
|
|
612
619
|
className: "relative",
|
|
613
620
|
children: [
|
|
614
|
-
/* @__PURE__ */ M(
|
|
621
|
+
/* @__PURE__ */ M(se, { className: "absolute left-3 top-1/2 h-5 w-5 -translate-y-1/2 text-text-secondary" }),
|
|
615
622
|
/* @__PURE__ */ M("input", {
|
|
616
623
|
type: "text",
|
|
617
|
-
value:
|
|
624
|
+
value: f,
|
|
618
625
|
onChange: (e) => {
|
|
619
|
-
g(e.target.value),
|
|
626
|
+
g(e.target.value), l !== "faq" && u("faq");
|
|
620
627
|
},
|
|
621
628
|
placeholder: "Search help articles, FAQs, and more...",
|
|
622
629
|
className: "w-full rounded-lg border border-border-seam bg-bg-surface py-3 pl-10 pr-10 text-sm text-text-primary placeholder:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
|
|
623
630
|
}),
|
|
624
|
-
|
|
631
|
+
f && /* @__PURE__ */ M("button", {
|
|
625
632
|
type: "button",
|
|
626
633
|
onClick: () => g(""),
|
|
627
634
|
className: "absolute right-3 top-1/2 -translate-y-1/2 text-text-secondary hover:text-text-primary",
|
|
@@ -637,12 +644,12 @@ function V() {
|
|
|
637
644
|
children: "Browse Help Topics"
|
|
638
645
|
}), /* @__PURE__ */ M("div", {
|
|
639
646
|
className: "grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3",
|
|
640
|
-
children:
|
|
647
|
+
children: de.map((e) => {
|
|
641
648
|
let n = e.icon;
|
|
642
649
|
return /* @__PURE__ */ N("button", {
|
|
643
650
|
type: "button",
|
|
644
651
|
onClick: () => {
|
|
645
|
-
|
|
652
|
+
b(e.label === y ? "" : e.label), u("faq");
|
|
646
653
|
},
|
|
647
654
|
className: t("flex items-start gap-3 rounded-lg border bg-bg-surface p-4 text-left transition-all hover:shadow-sm", y === e.label ? "border-primary ring-1 ring-primary" : "border-border-seam"),
|
|
648
655
|
children: [/* @__PURE__ */ M("div", {
|
|
@@ -663,12 +670,12 @@ function V() {
|
|
|
663
670
|
className: "mb-6",
|
|
664
671
|
children: /* @__PURE__ */ M("div", {
|
|
665
672
|
className: "flex space-x-1 bg-bg-sunken p-1 rounded-lg w-full sm:w-fit",
|
|
666
|
-
children:
|
|
673
|
+
children: _e.map((e) => {
|
|
667
674
|
let n = e.icon;
|
|
668
675
|
return /* @__PURE__ */ N("button", {
|
|
669
676
|
type: "button",
|
|
670
|
-
onClick: () =>
|
|
671
|
-
className: t("flex flex-1 sm:flex-none items-center justify-center gap-2 rounded-md px-4 py-2 text-sm font-medium transition-colors",
|
|
677
|
+
onClick: () => u(e.id),
|
|
678
|
+
className: t("flex flex-1 sm:flex-none items-center justify-center gap-2 rounded-md px-4 py-2 text-sm font-medium transition-colors", l === e.id ? "bg-bg-surface text-text-primary shadow-sm" : "text-text-secondary hover:text-text-primary"),
|
|
672
679
|
children: [
|
|
673
680
|
/* @__PURE__ */ M(n, { className: "h-4 w-4" }),
|
|
674
681
|
/* @__PURE__ */ M("span", { children: e.label }),
|
|
@@ -681,7 +688,7 @@ function V() {
|
|
|
681
688
|
})
|
|
682
689
|
})
|
|
683
690
|
}),
|
|
684
|
-
|
|
691
|
+
l === "faq" && /* @__PURE__ */ N("div", { children: [/* @__PURE__ */ N("div", {
|
|
685
692
|
className: "mb-4 flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between",
|
|
686
693
|
children: [/* @__PURE__ */ N("p", {
|
|
687
694
|
className: "text-sm text-text-secondary",
|
|
@@ -699,7 +706,7 @@ function V() {
|
|
|
699
706
|
}),
|
|
700
707
|
/* @__PURE__ */ M("button", {
|
|
701
708
|
type: "button",
|
|
702
|
-
onClick: () =>
|
|
709
|
+
onClick: () => b(""),
|
|
703
710
|
className: "ml-1 text-primary hover:underline",
|
|
704
711
|
children: "(clear)"
|
|
705
712
|
})
|
|
@@ -707,7 +714,7 @@ function V() {
|
|
|
707
714
|
]
|
|
708
715
|
}), /* @__PURE__ */ N("select", {
|
|
709
716
|
value: y,
|
|
710
|
-
onChange: (e) =>
|
|
717
|
+
onChange: (e) => b(e.target.value),
|
|
711
718
|
className: "rounded-lg border border-border-seam bg-bg-surface px-3 py-2 text-sm text-text-primary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]",
|
|
712
719
|
children: [/* @__PURE__ */ M("option", {
|
|
713
720
|
value: "",
|
|
@@ -720,12 +727,12 @@ function V() {
|
|
|
720
727
|
}), Z.length > 0 ? /* @__PURE__ */ M("div", {
|
|
721
728
|
className: "space-y-3",
|
|
722
729
|
children: Z.map((e) => {
|
|
723
|
-
let n =
|
|
730
|
+
let n = x === e.id;
|
|
724
731
|
return /* @__PURE__ */ N("div", {
|
|
725
732
|
className: "rounded-lg border border-border-seam bg-bg-surface overflow-hidden",
|
|
726
733
|
children: [/* @__PURE__ */ N("button", {
|
|
727
734
|
type: "button",
|
|
728
|
-
onClick: () =>
|
|
735
|
+
onClick: () => me(e.id),
|
|
729
736
|
className: "flex w-full items-start justify-between gap-3 px-4 py-4 text-left hover:bg-accent/50 transition-colors",
|
|
730
737
|
children: [/* @__PURE__ */ N("div", {
|
|
731
738
|
className: "flex-1 min-w-0",
|
|
@@ -742,7 +749,7 @@ function V() {
|
|
|
742
749
|
className: t("text-sm", n ? "font-semibold text-text-primary" : "font-medium text-text-primary"),
|
|
743
750
|
children: e.question
|
|
744
751
|
})]
|
|
745
|
-
}), M(n ?
|
|
752
|
+
}), M(n ? re : ne, { className: "h-4 w-4 text-text-secondary shrink-0 mt-1" })]
|
|
746
753
|
}), n && /* @__PURE__ */ N("div", {
|
|
747
754
|
className: "border-t border-border-seam px-4 pb-4 pt-3",
|
|
748
755
|
children: [/* @__PURE__ */ M("p", {
|
|
@@ -754,12 +761,12 @@ function V() {
|
|
|
754
761
|
className: "flex flex-wrap gap-1.5",
|
|
755
762
|
children: e.tags.map((e) => /* @__PURE__ */ N("span", {
|
|
756
763
|
className: "inline-flex items-center gap-1 rounded-full bg-bg-sunken px-2 py-0.5 text-xs text-text-secondary",
|
|
757
|
-
children: [/* @__PURE__ */ M(
|
|
764
|
+
children: [/* @__PURE__ */ M(S, { className: "h-2.5 w-2.5" }), e]
|
|
758
765
|
}, e))
|
|
759
766
|
}), /* @__PURE__ */ N("button", {
|
|
760
767
|
type: "button",
|
|
761
768
|
onClick: (t) => {
|
|
762
|
-
t.stopPropagation(),
|
|
769
|
+
t.stopPropagation(), he(e.id);
|
|
763
770
|
},
|
|
764
771
|
className: "flex items-center gap-1.5 rounded-lg border border-border-seam px-3 py-1.5 text-xs font-medium text-text-secondary hover:bg-accent hover:text-text-primary transition-colors",
|
|
765
772
|
children: [
|
|
@@ -773,29 +780,20 @@ function V() {
|
|
|
773
780
|
})]
|
|
774
781
|
}, e.id);
|
|
775
782
|
})
|
|
776
|
-
}) : /* @__PURE__ */
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
/* @__PURE__ */ M("button", {
|
|
789
|
-
type: "button",
|
|
790
|
-
onClick: () => {
|
|
791
|
-
g(""), x("");
|
|
792
|
-
},
|
|
793
|
-
className: "text-sm font-medium text-primary hover:underline",
|
|
794
|
-
children: "Clear all filters"
|
|
795
|
-
})
|
|
796
|
-
]
|
|
783
|
+
}) : /* @__PURE__ */ M(r, {
|
|
784
|
+
illustration: "empty-search",
|
|
785
|
+
title: "No FAQs found",
|
|
786
|
+
description: "Try adjusting your search or browse different categories.",
|
|
787
|
+
action: /* @__PURE__ */ M("button", {
|
|
788
|
+
type: "button",
|
|
789
|
+
onClick: () => {
|
|
790
|
+
g(""), b("");
|
|
791
|
+
},
|
|
792
|
+
className: "text-sm font-medium text-primary hover:underline",
|
|
793
|
+
children: "Clear all filters"
|
|
794
|
+
})
|
|
797
795
|
})] }),
|
|
798
|
-
|
|
796
|
+
l === "contact" && /* @__PURE__ */ N("div", {
|
|
799
797
|
className: "space-y-6",
|
|
800
798
|
children: [
|
|
801
799
|
/* @__PURE__ */ N("div", { children: [/* @__PURE__ */ M("h2", {
|
|
@@ -803,7 +801,7 @@ function V() {
|
|
|
803
801
|
children: "Get in Touch"
|
|
804
802
|
}), /* @__PURE__ */ M("div", {
|
|
805
803
|
className: "grid grid-cols-1 gap-4 sm:grid-cols-2",
|
|
806
|
-
children:
|
|
804
|
+
children: F.map((e) => {
|
|
807
805
|
let n = e.icon;
|
|
808
806
|
return /* @__PURE__ */ M("div", {
|
|
809
807
|
className: "rounded-lg border border-border-seam bg-bg-surface p-5",
|
|
@@ -825,14 +823,14 @@ function V() {
|
|
|
825
823
|
}),
|
|
826
824
|
/* @__PURE__ */ N("div", {
|
|
827
825
|
className: "flex items-center gap-1 mt-1 text-xs text-text-secondary",
|
|
828
|
-
children: [/* @__PURE__ */ M(
|
|
826
|
+
children: [/* @__PURE__ */ M(d, { className: "h-3 w-3" }), e.responseTime]
|
|
829
827
|
}),
|
|
830
828
|
/* @__PURE__ */ N("button", {
|
|
831
829
|
type: "button",
|
|
832
830
|
onClick: () => $(e),
|
|
833
831
|
disabled: !e.available,
|
|
834
832
|
className: t("mt-3 flex items-center gap-1.5 rounded-lg px-4 py-2 text-sm font-medium transition-colors", e.available ? "bg-action-primary-bg text-action-primary-text hover:bg-action-primary-bg/90" : "bg-bg-sunken text-text-secondary cursor-not-allowed"),
|
|
835
|
-
children: [e.type === "chat" ? "Start Chat" : e.type === "email" ? "Send Email" : "Contact", /* @__PURE__ */ M(
|
|
833
|
+
children: [e.type === "chat" ? "Start Chat" : e.type === "email" ? "Send Email" : "Contact", /* @__PURE__ */ M(ie, { className: "h-3.5 w-3.5" })]
|
|
836
834
|
})
|
|
837
835
|
]
|
|
838
836
|
})]
|
|
@@ -951,7 +949,7 @@ function V() {
|
|
|
951
949
|
className: "rounded-lg bg-status-info-bg/5 border border-status-info-border/20 p-4",
|
|
952
950
|
children: [/* @__PURE__ */ N("div", {
|
|
953
951
|
className: "flex items-center gap-2 mb-2",
|
|
954
|
-
children: [/* @__PURE__ */ M(
|
|
952
|
+
children: [/* @__PURE__ */ M(oe, { className: "h-4 w-4 text-status-info-text" }), /* @__PURE__ */ M("h4", {
|
|
955
953
|
className: "text-sm font-medium text-status-info-text",
|
|
956
954
|
children: "Tips for faster resolution"
|
|
957
955
|
})]
|
|
@@ -969,10 +967,10 @@ function V() {
|
|
|
969
967
|
className: "flex items-center gap-3 pt-1",
|
|
970
968
|
children: [/* @__PURE__ */ M("button", {
|
|
971
969
|
type: "button",
|
|
972
|
-
onClick:
|
|
970
|
+
onClick: ge,
|
|
973
971
|
disabled: U,
|
|
974
972
|
className: t("flex items-center gap-2 rounded-lg px-5 py-2.5 text-sm font-medium text-action-primary-text transition-colors", U ? "bg-action-primary-bg/70 cursor-not-allowed" : "bg-action-primary-bg hover:bg-action-primary-bg/90"),
|
|
975
|
-
children: U ? /* @__PURE__ */ N(j, { children: [/* @__PURE__ */ M("span", { className: "h-4 w-4 animate-spin rounded-full border-2 border-primary-foreground/30 border-t-primary-foreground" }), "Submitting..."] }) : /* @__PURE__ */ N(j, { children: [/* @__PURE__ */ M(
|
|
973
|
+
children: U ? /* @__PURE__ */ N(j, { children: [/* @__PURE__ */ M("span", { className: "h-4 w-4 animate-spin rounded-full border-2 border-primary-foreground/30 border-t-primary-foreground" }), "Submitting..."] }) : /* @__PURE__ */ N(j, { children: [/* @__PURE__ */ M(ce, { className: "h-4 w-4" }), "Submit Ticket"] })
|
|
976
974
|
}), /* @__PURE__ */ M("button", {
|
|
977
975
|
type: "button",
|
|
978
976
|
onClick: () => {
|
|
@@ -991,7 +989,7 @@ function V() {
|
|
|
991
989
|
className: "rounded-lg border border-border-seam bg-bg-surface p-5",
|
|
992
990
|
children: [/* @__PURE__ */ N("div", {
|
|
993
991
|
className: "flex items-center gap-2 mb-3",
|
|
994
|
-
children: [/* @__PURE__ */ M(
|
|
992
|
+
children: [/* @__PURE__ */ M(d, { className: "h-5 w-5 text-text-secondary" }), /* @__PURE__ */ M("h3", {
|
|
995
993
|
className: "text-sm font-semibold text-text-primary",
|
|
996
994
|
children: "Support Hours"
|
|
997
995
|
})]
|
|
@@ -1045,7 +1043,7 @@ function V() {
|
|
|
1045
1043
|
children: [
|
|
1046
1044
|
/* @__PURE__ */ N("div", {
|
|
1047
1045
|
className: "flex items-center gap-2 mb-3",
|
|
1048
|
-
children: [/* @__PURE__ */ M(
|
|
1046
|
+
children: [/* @__PURE__ */ M(s, { className: "h-5 w-5 text-status-error-text" }), /* @__PURE__ */ M("h3", {
|
|
1049
1047
|
className: "text-sm font-semibold text-status-error-text",
|
|
1050
1048
|
children: "Emergency Contact"
|
|
1051
1049
|
})]
|
|
@@ -1088,7 +1086,7 @@ function V() {
|
|
|
1088
1086
|
children: L.map((e) => /* @__PURE__ */ N("button", {
|
|
1089
1087
|
type: "button",
|
|
1090
1088
|
className: "flex items-start gap-3 rounded-lg border border-border-seam bg-bg-surface p-4 text-left hover:bg-accent/50 transition-colors",
|
|
1091
|
-
children: [/* @__PURE__ */ M(
|
|
1089
|
+
children: [/* @__PURE__ */ M(p, { className: "h-5 w-5 text-text-secondary shrink-0 mt-0.5" }), /* @__PURE__ */ N("div", {
|
|
1092
1090
|
className: "min-w-0",
|
|
1093
1091
|
children: [/* @__PURE__ */ M("p", {
|
|
1094
1092
|
className: "text-sm font-medium text-text-primary truncate",
|
|
@@ -1108,7 +1106,7 @@ function V() {
|
|
|
1108
1106
|
})] })
|
|
1109
1107
|
]
|
|
1110
1108
|
}),
|
|
1111
|
-
|
|
1109
|
+
l === "tickets" && /* @__PURE__ */ N("div", {
|
|
1112
1110
|
className: "space-y-4",
|
|
1113
1111
|
children: [
|
|
1114
1112
|
/* @__PURE__ */ N("div", {
|
|
@@ -1168,7 +1166,7 @@ function V() {
|
|
|
1168
1166
|
}), /* @__PURE__ */ N("button", {
|
|
1169
1167
|
type: "button",
|
|
1170
1168
|
onClick: () => {
|
|
1171
|
-
H(!0),
|
|
1169
|
+
H(!0), u("contact");
|
|
1172
1170
|
},
|
|
1173
1171
|
className: "flex items-center gap-1.5 rounded-lg bg-action-primary-bg px-4 py-2 text-sm font-medium text-action-primary-text hover:bg-action-primary-bg/90 transition-colors",
|
|
1174
1172
|
children: [/* @__PURE__ */ M(w, { className: "h-4 w-4" }), "New Ticket"]
|
|
@@ -1189,7 +1187,7 @@ function V() {
|
|
|
1189
1187
|
/* @__PURE__ */ M("button", {
|
|
1190
1188
|
type: "button",
|
|
1191
1189
|
onClick: () => {
|
|
1192
|
-
H(!0),
|
|
1190
|
+
H(!0), u("contact");
|
|
1193
1191
|
},
|
|
1194
1192
|
className: "flex items-center gap-1.5 rounded-lg bg-action-primary-bg px-4 py-2 text-sm font-medium text-action-primary-text hover:bg-action-primary-bg/90 transition-colors",
|
|
1195
1193
|
children: "Create Your First Ticket"
|
|
@@ -1198,7 +1196,7 @@ function V() {
|
|
|
1198
1196
|
}) : /* @__PURE__ */ M("div", {
|
|
1199
1197
|
className: "space-y-4",
|
|
1200
1198
|
children: O.map((e) => {
|
|
1201
|
-
let n =
|
|
1199
|
+
let n = R(e.status), r = e.responses.length > 0 ? e.responses[e.responses.length - 1] : null;
|
|
1202
1200
|
return /* @__PURE__ */ N("div", {
|
|
1203
1201
|
className: "rounded-lg border border-border-seam bg-bg-surface overflow-hidden",
|
|
1204
1202
|
children: [/* @__PURE__ */ N("div", {
|
|
@@ -1210,7 +1208,7 @@ function V() {
|
|
|
1210
1208
|
className: "flex-1 min-w-0",
|
|
1211
1209
|
children: [/* @__PURE__ */ N("div", {
|
|
1212
1210
|
className: "flex items-center gap-2 mb-1",
|
|
1213
|
-
children: [/* @__PURE__ */ M(n, { className: t("h-4 w-4",
|
|
1211
|
+
children: [/* @__PURE__ */ M(n, { className: t("h-4 w-4", z(e.status).split(" ").slice(1).join(" ")) }), /* @__PURE__ */ M("h3", {
|
|
1214
1212
|
className: "text-sm font-semibold text-text-primary truncate",
|
|
1215
1213
|
children: e.subject
|
|
1216
1214
|
})]
|
|
@@ -1225,11 +1223,11 @@ function V() {
|
|
|
1225
1223
|
}), /* @__PURE__ */ N("div", {
|
|
1226
1224
|
className: "flex flex-wrap gap-2",
|
|
1227
1225
|
children: [/* @__PURE__ */ M("span", {
|
|
1228
|
-
className: t("inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium",
|
|
1226
|
+
className: t("inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium", B(e.priority)),
|
|
1229
1227
|
children: e.priority.toUpperCase()
|
|
1230
1228
|
}), /* @__PURE__ */ M("span", {
|
|
1231
|
-
className: t("inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium",
|
|
1232
|
-
children:
|
|
1229
|
+
className: t("inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium", z(e.status)),
|
|
1230
|
+
children: pe(e.status)
|
|
1233
1231
|
})]
|
|
1234
1232
|
})]
|
|
1235
1233
|
}),
|
|
@@ -1237,7 +1235,7 @@ function V() {
|
|
|
1237
1235
|
className: "text-sm text-text-secondary mt-2 leading-relaxed",
|
|
1238
1236
|
children: e.description
|
|
1239
1237
|
}),
|
|
1240
|
-
|
|
1238
|
+
r && /* @__PURE__ */ N("div", {
|
|
1241
1239
|
className: "mt-3 rounded-lg bg-bg-sunken/50 border border-border-seam p-3",
|
|
1242
1240
|
children: [/* @__PURE__ */ N("div", {
|
|
1243
1241
|
className: "flex items-center gap-1.5 mb-1",
|
|
@@ -1245,28 +1243,28 @@ function V() {
|
|
|
1245
1243
|
/* @__PURE__ */ M(_, { className: "h-3.5 w-3.5 text-text-secondary" }),
|
|
1246
1244
|
/* @__PURE__ */ M("span", {
|
|
1247
1245
|
className: "text-xs font-medium text-text-primary",
|
|
1248
|
-
children:
|
|
1246
|
+
children: r.sender === "support" ? "Support Team" : "You"
|
|
1249
1247
|
}),
|
|
1250
1248
|
/* @__PURE__ */ N("span", {
|
|
1251
1249
|
className: "text-xs text-text-secondary",
|
|
1252
|
-
children: ["· ", r
|
|
1250
|
+
children: ["· ", i(r.timestamp)]
|
|
1253
1251
|
})
|
|
1254
1252
|
]
|
|
1255
1253
|
}), /* @__PURE__ */ M("p", {
|
|
1256
1254
|
className: "text-sm text-text-secondary",
|
|
1257
|
-
children:
|
|
1255
|
+
children: r.message
|
|
1258
1256
|
})]
|
|
1259
1257
|
}),
|
|
1260
1258
|
e.responses.length === 0 && e.status === "open" && /* @__PURE__ */ N("div", {
|
|
1261
1259
|
className: "mt-3 flex items-center gap-2 text-xs text-text-secondary",
|
|
1262
|
-
children: [/* @__PURE__ */ M(
|
|
1260
|
+
children: [/* @__PURE__ */ M(ae, { className: "h-3.5 w-3.5" }), "Awaiting response from support team"]
|
|
1263
1261
|
})
|
|
1264
1262
|
]
|
|
1265
1263
|
}), /* @__PURE__ */ N("div", {
|
|
1266
1264
|
className: "flex flex-col gap-1 border-t border-border-seam bg-bg-sunken/30 px-4 py-2.5 sm:flex-row sm:items-center sm:justify-between text-xs text-text-secondary",
|
|
1267
1265
|
children: [
|
|
1268
|
-
/* @__PURE__ */ N("span", { children: ["Created: ",
|
|
1269
|
-
/* @__PURE__ */ N("span", { children: ["Updated: ",
|
|
1266
|
+
/* @__PURE__ */ N("span", { children: ["Created: ", i(e.createdAt)] }),
|
|
1267
|
+
/* @__PURE__ */ N("span", { children: ["Updated: ", i(e.updatedAt)] }),
|
|
1270
1268
|
/* @__PURE__ */ N("span", { children: [
|
|
1271
1269
|
e.responses.length,
|
|
1272
1270
|
" response",
|
|
@@ -1294,20 +1292,20 @@ function V() {
|
|
|
1294
1292
|
children: [
|
|
1295
1293
|
/* @__PURE__ */ N("button", {
|
|
1296
1294
|
type: "button",
|
|
1297
|
-
onClick: () => $(
|
|
1295
|
+
onClick: () => $(F[0]),
|
|
1298
1296
|
className: "flex items-center gap-1.5 rounded-lg border border-border-seam bg-bg-surface px-3 py-2 text-xs font-medium text-text-primary hover:bg-accent transition-colors",
|
|
1299
1297
|
children: [/* @__PURE__ */ M(h, { className: "h-3.5 w-3.5" }), "Email Us"]
|
|
1300
1298
|
}),
|
|
1301
1299
|
/* @__PURE__ */ N("button", {
|
|
1302
1300
|
type: "button",
|
|
1303
|
-
onClick: () => $(
|
|
1301
|
+
onClick: () => $(F[1]),
|
|
1304
1302
|
className: "flex items-center gap-1.5 rounded-lg border border-border-seam bg-bg-surface px-3 py-2 text-xs font-medium text-text-primary hover:bg-accent transition-colors",
|
|
1305
1303
|
children: [/* @__PURE__ */ M(v, { className: "h-3.5 w-3.5" }), "Call Us"]
|
|
1306
1304
|
}),
|
|
1307
1305
|
/* @__PURE__ */ N("button", {
|
|
1308
1306
|
type: "button",
|
|
1309
1307
|
onClick: () => {
|
|
1310
|
-
H(!0),
|
|
1308
|
+
H(!0), u("contact");
|
|
1311
1309
|
},
|
|
1312
1310
|
className: "flex items-center gap-1.5 rounded-lg bg-action-primary-bg px-3 py-2 text-xs font-medium text-action-primary-text hover:bg-action-primary-bg/90 transition-colors",
|
|
1313
1311
|
children: [/* @__PURE__ */ M(w, { className: "h-3.5 w-3.5" }), "Submit Ticket"]
|