@burdenoff/microfe-proserviceworld 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/proserviceworld/pages/AdminReportsPage.js +102 -68
- package/dist/proserviceworld/pages/AdminReportsPage.js.map +1 -1
- package/dist/proserviceworld/pages/AdminUsersPage.js +37 -33
- package/dist/proserviceworld/pages/AdminUsersPage.js.map +1 -1
- package/dist/proserviceworld/pages/AnalyticsPage.js +66 -36
- package/dist/proserviceworld/pages/AnalyticsPage.js.map +1 -1
- package/dist/proserviceworld/pages/BookingsPage.js +52 -48
- package/dist/proserviceworld/pages/BookingsPage.js.map +1 -1
- package/dist/proserviceworld/pages/DashboardPage.js +275 -243
- package/dist/proserviceworld/pages/DashboardPage.js.map +1 -1
- package/dist/proserviceworld/pages/DocumentsPage.js +204 -200
- package/dist/proserviceworld/pages/DocumentsPage.js.map +1 -1
- package/dist/proserviceworld/pages/MessagesPage.js +200 -186
- package/dist/proserviceworld/pages/MessagesPage.js.map +1 -1
- package/dist/proserviceworld/pages/PaymentsPage.js +70 -39
- package/dist/proserviceworld/pages/PaymentsPage.js.map +1 -1
- package/dist/proserviceworld/pages/ProjectsPage.js +510 -477
- package/dist/proserviceworld/pages/ProjectsPage.js.map +1 -1
- package/dist/proserviceworld/pages/ProviderDetailPage.js +71 -41
- package/dist/proserviceworld/pages/ProviderDetailPage.js.map +1 -1
- package/dist/proserviceworld/pages/ProvidersPage.js +62 -58
- package/dist/proserviceworld/pages/ProvidersPage.js.map +1 -1
- package/dist/proserviceworld/pages/ReviewsPage.js +80 -63
- package/dist/proserviceworld/pages/ReviewsPage.js.map +1 -1
- package/dist/proserviceworld/pages/ServiceDetailsPage.js +118 -83
- package/dist/proserviceworld/pages/ServiceDetailsPage.js.map +1 -1
- package/dist/proserviceworld/pages/ServicesPage.js +134 -130
- package/dist/proserviceworld/pages/ServicesPage.js.map +1 -1
- package/dist/proserviceworld/pages/VerificationPage.js +23 -19
- package/dist/proserviceworld/pages/VerificationPage.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,188 +1,219 @@
|
|
|
1
1
|
import { useProServiceWorldStore as e } from "../store/proserviceworldStore.js";
|
|
2
2
|
import { tWithFallback as t } from "../utils/i18n.js";
|
|
3
3
|
import { useState as n } from "react";
|
|
4
|
-
import { AlertCircle as r, BarChart3 as i, Bell as a, BookOpen as o, Calendar as s, CheckCircle as c, Clock as l, DollarSign as u, Eye as d,
|
|
5
|
-
import { useI18n as
|
|
6
|
-
import { jsx as
|
|
7
|
-
import { AuroraBackground as
|
|
4
|
+
import { AlertCircle as r, BarChart3 as i, Bell as a, BookOpen as o, Calendar as s, CheckCircle as c, Clock as l, DollarSign as u, Eye as d, Plus as f, Star as p, TrendingUp as m, Users as h } from "lucide-react";
|
|
5
|
+
import { useI18n as g } from "@burdenoff/fe-libs/shared/providers/shell";
|
|
6
|
+
import { jsx as _, jsxs as v } from "react/jsx-runtime";
|
|
7
|
+
import { AuroraBackground as y, Badge as b, Button as x, CTAOverflowMenu as S, Card as C, CardContent as w, CardHeader as T, CardTitle as E, EmphasisPanel as D, GlassCard as O, GradientText as k, IllustratedEmptyState as A, NextSteps as j, PagePurpose as M } from "@burdenoff/fe-libs/ui";
|
|
8
8
|
//#region src/proserviceworld/pages/DashboardPage.tsx
|
|
9
|
-
function
|
|
10
|
-
let { t:
|
|
9
|
+
function N() {
|
|
10
|
+
let { t: N } = g(), P = (e, n, r) => t(N, e, n, r), { bookings: F, providers: I, services: L, reviews: R, notifications: z } = e(), [B, V] = n("client"), H = F.filter((e) => e.status === "in_progress"), U = F.filter((e) => e.status === "completed"), W = F.filter((e) => e.status === "pending"), G = F.filter((e) => e.paymentStatus === "completed").reduce((e, t) => e + t.budget, 0), K = z.filter((e) => !e.read).length, q = [
|
|
11
11
|
{
|
|
12
12
|
id: "client",
|
|
13
|
-
label:
|
|
13
|
+
label: P("proserviceworld.dashboard.views.client", "Client")
|
|
14
14
|
},
|
|
15
15
|
{
|
|
16
16
|
id: "provider",
|
|
17
|
-
label:
|
|
17
|
+
label: P("proserviceworld.dashboard.views.provider", "Provider")
|
|
18
18
|
},
|
|
19
19
|
{
|
|
20
20
|
id: "admin",
|
|
21
|
-
label:
|
|
21
|
+
label: P("proserviceworld.dashboard.views.admin", "Admin")
|
|
22
22
|
},
|
|
23
23
|
{
|
|
24
24
|
id: "team",
|
|
25
|
-
label:
|
|
25
|
+
label: P("proserviceworld.dashboard.views.team", "Team")
|
|
26
26
|
}
|
|
27
|
-
],
|
|
28
|
-
return /* @__PURE__ */
|
|
27
|
+
], J = (e) => e === "completed" ? P("proserviceworld.shared.bookingStatus.completed", "completed") : e === "in_progress" ? P("proserviceworld.shared.bookingStatus.inProgress", "in progress") : e === "pending" ? P("proserviceworld.shared.bookingStatus.pending", "pending") : P("proserviceworld.shared.bookingStatus.cancelled", "cancelled");
|
|
28
|
+
return /* @__PURE__ */ v("div", {
|
|
29
29
|
className: "space-y-6 p-6 bg-bg-canvas min-h-screen",
|
|
30
30
|
children: [
|
|
31
|
-
/* @__PURE__ */
|
|
31
|
+
/* @__PURE__ */ v("div", {
|
|
32
32
|
className: "relative overflow-hidden rounded-card -mx-2 px-2 pt-1",
|
|
33
|
-
children: [/* @__PURE__ */
|
|
33
|
+
children: [/* @__PURE__ */ _(y, { intensity: "subtle" }), /* @__PURE__ */ v("div", {
|
|
34
34
|
className: "flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between",
|
|
35
|
-
children: [/* @__PURE__ */
|
|
35
|
+
children: [/* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("h1", {
|
|
36
36
|
className: "text-2xl font-semibold tracking-tight",
|
|
37
|
-
children: /* @__PURE__ */
|
|
38
|
-
}), /* @__PURE__ */
|
|
37
|
+
children: /* @__PURE__ */ _(k, { children: P("proserviceworld.dashboard.title", "Dashboard") })
|
|
38
|
+
}), /* @__PURE__ */ _("p", {
|
|
39
39
|
className: "text-sm text-text-secondary",
|
|
40
|
-
children:
|
|
41
|
-
})] }), /* @__PURE__ */
|
|
40
|
+
children: P("proserviceworld.dashboard.subtitle", "Welcome back! Here is your activity overview.")
|
|
41
|
+
})] }), /* @__PURE__ */ v("div", {
|
|
42
42
|
className: "flex items-center gap-2",
|
|
43
|
-
children: [/* @__PURE__ */
|
|
43
|
+
children: [/* @__PURE__ */ _("div", {
|
|
44
44
|
className: "flex bg-bg-sunken rounded-lg p-1",
|
|
45
|
-
children:
|
|
46
|
-
onClick: () =>
|
|
47
|
-
"aria-pressed":
|
|
48
|
-
className: `px-3 py-1.5 rounded text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-border-focus ${
|
|
45
|
+
children: q.map((e) => /* @__PURE__ */ _("button", {
|
|
46
|
+
onClick: () => V(e.id),
|
|
47
|
+
"aria-pressed": B === e.id,
|
|
48
|
+
className: `px-3 py-1.5 rounded text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-border-focus ${B === e.id ? "bg-bg-surface text-text-primary shadow-sm" : "text-text-secondary hover:text-text-primary"}`,
|
|
49
49
|
children: e.label
|
|
50
50
|
}, e.id))
|
|
51
|
-
}),
|
|
51
|
+
}), K > 0 && /* @__PURE__ */ v(x, {
|
|
52
52
|
variant: "outline",
|
|
53
53
|
size: "sm",
|
|
54
|
-
"aria-label": `${
|
|
55
|
-
children: [/* @__PURE__ */
|
|
54
|
+
"aria-label": `${K} unread`,
|
|
55
|
+
children: [/* @__PURE__ */ _(a, { className: "h-4 w-4 mr-1" }), /* @__PURE__ */ _("span", {
|
|
56
56
|
className: "tabular-nums",
|
|
57
|
-
children:
|
|
57
|
+
children: K
|
|
58
58
|
})]
|
|
59
59
|
})]
|
|
60
60
|
})]
|
|
61
61
|
})]
|
|
62
62
|
}),
|
|
63
|
-
|
|
63
|
+
/* @__PURE__ */ _(M, {
|
|
64
|
+
icon: /* @__PURE__ */ _(i, { className: "h-4 w-4" }),
|
|
65
|
+
children: P("proserviceworld.dashboard.purpose", "Your command center for ProServiceWorld. Switch between Client, Provider, Admin, and Team views to track bookings, monitor earnings and ratings, watch platform activity, and jump straight to the actions that matter to your role.")
|
|
66
|
+
}),
|
|
67
|
+
/* @__PURE__ */ _(j, {
|
|
68
|
+
storageKey: "proserviceworld-dashboard",
|
|
69
|
+
steps: [
|
|
70
|
+
{
|
|
71
|
+
id: "find-services",
|
|
72
|
+
label: P("proserviceworld.dashboard.nextSteps.findServices", "Find a service to book"),
|
|
73
|
+
description: P("proserviceworld.dashboard.nextSteps.findServicesDesc", "Browse verified providers and book the help you need."),
|
|
74
|
+
icon: /* @__PURE__ */ _(o, { className: "h-4 w-4" }),
|
|
75
|
+
onClick: () => V("client")
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
id: "review-bookings",
|
|
79
|
+
label: P("proserviceworld.dashboard.nextSteps.reviewBookings", "Review active bookings"),
|
|
80
|
+
description: P("proserviceworld.dashboard.nextSteps.reviewBookingsDesc", "Check progress and status on work in flight."),
|
|
81
|
+
icon: /* @__PURE__ */ _(s, { className: "h-4 w-4" }),
|
|
82
|
+
onClick: () => V("client"),
|
|
83
|
+
done: H.length > 0
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
id: "provider-view",
|
|
87
|
+
label: P("proserviceworld.dashboard.nextSteps.providerView", "Grow your provider business"),
|
|
88
|
+
description: P("proserviceworld.dashboard.nextSteps.providerViewDesc", "Switch to the Provider view to manage services and earnings."),
|
|
89
|
+
icon: /* @__PURE__ */ _(m, { className: "h-4 w-4" }),
|
|
90
|
+
onClick: () => V("provider")
|
|
91
|
+
}
|
|
92
|
+
]
|
|
93
|
+
}),
|
|
94
|
+
B === "client" && /* @__PURE__ */ v("div", {
|
|
64
95
|
className: "space-y-6",
|
|
65
96
|
children: [
|
|
66
|
-
/* @__PURE__ */
|
|
97
|
+
/* @__PURE__ */ _(D, { children: /* @__PURE__ */ v("div", {
|
|
67
98
|
className: "flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between",
|
|
68
|
-
children: [/* @__PURE__ */
|
|
99
|
+
children: [/* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("h2", {
|
|
69
100
|
className: "text-xl font-bold tracking-tight",
|
|
70
|
-
children:
|
|
71
|
-
}), /* @__PURE__ */
|
|
101
|
+
children: P("proserviceworld.dashboard.client.welcomeTitle", "Welcome back, Alex!")
|
|
102
|
+
}), /* @__PURE__ */ _("p", {
|
|
72
103
|
className: "text-text-secondary mt-1",
|
|
73
|
-
children:
|
|
74
|
-
})] }), /* @__PURE__ */
|
|
104
|
+
children: P("proserviceworld.dashboard.client.welcomeSubtitle", "Manage your services, bookings, and find new providers")
|
|
105
|
+
})] }), /* @__PURE__ */ v(x, {
|
|
75
106
|
size: "sm",
|
|
76
|
-
children: [/* @__PURE__ */
|
|
107
|
+
children: [/* @__PURE__ */ _(f, { className: "h-4 w-4 mr-2" }), P("proserviceworld.dashboard.client.actions.findServices", "Find Services")]
|
|
77
108
|
})]
|
|
78
109
|
}) }),
|
|
79
|
-
/* @__PURE__ */
|
|
110
|
+
/* @__PURE__ */ v("div", {
|
|
80
111
|
className: "grid gap-4 md:grid-cols-4",
|
|
81
112
|
children: [
|
|
82
|
-
/* @__PURE__ */
|
|
113
|
+
/* @__PURE__ */ _(O, {
|
|
83
114
|
treatment: "metric",
|
|
84
115
|
className: "border-border-seam",
|
|
85
|
-
children: /* @__PURE__ */
|
|
116
|
+
children: /* @__PURE__ */ v("div", {
|
|
86
117
|
className: "flex items-center",
|
|
87
|
-
children: [/* @__PURE__ */
|
|
118
|
+
children: [/* @__PURE__ */ _(s, { className: "h-8 w-8 text-accent-blue" }), /* @__PURE__ */ v("div", {
|
|
88
119
|
className: "ml-4",
|
|
89
|
-
children: [/* @__PURE__ */
|
|
120
|
+
children: [/* @__PURE__ */ _("p", {
|
|
90
121
|
className: "text-2xl font-bold tabular-nums",
|
|
91
|
-
children:
|
|
92
|
-
}), /* @__PURE__ */
|
|
122
|
+
children: H.length
|
|
123
|
+
}), /* @__PURE__ */ _("p", {
|
|
93
124
|
className: "text-sm text-text-secondary",
|
|
94
|
-
children:
|
|
125
|
+
children: P("proserviceworld.dashboard.client.metrics.activeBookings", "Active Bookings")
|
|
95
126
|
})]
|
|
96
127
|
})]
|
|
97
128
|
})
|
|
98
129
|
}),
|
|
99
|
-
/* @__PURE__ */
|
|
130
|
+
/* @__PURE__ */ _(O, {
|
|
100
131
|
treatment: "metric",
|
|
101
132
|
className: "border-border-seam",
|
|
102
|
-
children: /* @__PURE__ */
|
|
133
|
+
children: /* @__PURE__ */ v("div", {
|
|
103
134
|
className: "flex items-center",
|
|
104
|
-
children: [/* @__PURE__ */
|
|
135
|
+
children: [/* @__PURE__ */ _(p, { className: "h-8 w-8 text-status-warning-text" }), /* @__PURE__ */ v("div", {
|
|
105
136
|
className: "ml-4",
|
|
106
|
-
children: [/* @__PURE__ */
|
|
137
|
+
children: [/* @__PURE__ */ _("p", {
|
|
107
138
|
className: "text-2xl font-bold tabular-nums",
|
|
108
139
|
children: "4.8"
|
|
109
|
-
}), /* @__PURE__ */
|
|
140
|
+
}), /* @__PURE__ */ _("p", {
|
|
110
141
|
className: "text-sm text-text-secondary",
|
|
111
|
-
children:
|
|
142
|
+
children: P("proserviceworld.dashboard.client.metrics.avgRatingGiven", "Avg. Rating Given")
|
|
112
143
|
})]
|
|
113
144
|
})]
|
|
114
145
|
})
|
|
115
146
|
}),
|
|
116
|
-
/* @__PURE__ */
|
|
147
|
+
/* @__PURE__ */ _(O, {
|
|
117
148
|
treatment: "metric",
|
|
118
149
|
className: "border-border-seam",
|
|
119
|
-
children: /* @__PURE__ */
|
|
150
|
+
children: /* @__PURE__ */ v("div", {
|
|
120
151
|
className: "flex items-center",
|
|
121
|
-
children: [/* @__PURE__ */
|
|
152
|
+
children: [/* @__PURE__ */ _(c, { className: "h-8 w-8 text-status-success-text" }), /* @__PURE__ */ v("div", {
|
|
122
153
|
className: "ml-4",
|
|
123
|
-
children: [/* @__PURE__ */
|
|
154
|
+
children: [/* @__PURE__ */ _("p", {
|
|
124
155
|
className: "text-2xl font-bold tabular-nums",
|
|
125
|
-
children:
|
|
126
|
-
}), /* @__PURE__ */
|
|
156
|
+
children: U.length
|
|
157
|
+
}), /* @__PURE__ */ _("p", {
|
|
127
158
|
className: "text-sm text-text-secondary",
|
|
128
|
-
children:
|
|
159
|
+
children: P("proserviceworld.dashboard.client.metrics.completedProjects", "Completed Projects")
|
|
129
160
|
})]
|
|
130
161
|
})]
|
|
131
162
|
})
|
|
132
163
|
}),
|
|
133
|
-
/* @__PURE__ */
|
|
164
|
+
/* @__PURE__ */ _(O, {
|
|
134
165
|
treatment: "glass",
|
|
135
166
|
glow: !0,
|
|
136
167
|
className: "border-border-seam",
|
|
137
|
-
children: /* @__PURE__ */
|
|
168
|
+
children: /* @__PURE__ */ v("div", {
|
|
138
169
|
className: "flex items-center",
|
|
139
|
-
children: [/* @__PURE__ */
|
|
170
|
+
children: [/* @__PURE__ */ _(u, { className: "h-8 w-8 text-accent-blue" }), /* @__PURE__ */ v("div", {
|
|
140
171
|
className: "ml-4",
|
|
141
|
-
children: [/* @__PURE__ */
|
|
172
|
+
children: [/* @__PURE__ */ v("p", {
|
|
142
173
|
className: "text-2xl font-bold tabular-nums",
|
|
143
|
-
children: ["$",
|
|
144
|
-
}), /* @__PURE__ */
|
|
174
|
+
children: ["$", G.toLocaleString()]
|
|
175
|
+
}), /* @__PURE__ */ _("p", {
|
|
145
176
|
className: "text-sm text-text-secondary",
|
|
146
|
-
children:
|
|
177
|
+
children: P("proserviceworld.dashboard.client.metrics.totalSpent", "Total Spent")
|
|
147
178
|
})]
|
|
148
179
|
})]
|
|
149
180
|
})
|
|
150
181
|
})
|
|
151
182
|
]
|
|
152
183
|
}),
|
|
153
|
-
/* @__PURE__ */
|
|
184
|
+
/* @__PURE__ */ v(C, {
|
|
154
185
|
className: "border-border-seam",
|
|
155
|
-
children: [/* @__PURE__ */
|
|
186
|
+
children: [/* @__PURE__ */ _(T, { children: /* @__PURE__ */ v("div", {
|
|
156
187
|
className: "flex items-center justify-between",
|
|
157
|
-
children: [/* @__PURE__ */
|
|
188
|
+
children: [/* @__PURE__ */ _(E, { children: P("proserviceworld.dashboard.client.sections.recentBookings", "Recent Bookings") }), /* @__PURE__ */ _(x, {
|
|
158
189
|
variant: "outline",
|
|
159
190
|
size: "sm",
|
|
160
|
-
children:
|
|
191
|
+
children: P("proserviceworld.shared.actions.viewAll", "View All")
|
|
161
192
|
})]
|
|
162
|
-
}) }), /* @__PURE__ */
|
|
193
|
+
}) }), /* @__PURE__ */ _(w, {
|
|
163
194
|
className: "space-y-4",
|
|
164
|
-
children:
|
|
195
|
+
children: F.slice(0, 5).map((e) => /* @__PURE__ */ v("div", {
|
|
165
196
|
className: "flex items-center justify-between p-4 border border-border-seam rounded-lg transition-shadow hover:shadow-pop",
|
|
166
|
-
children: [/* @__PURE__ */
|
|
197
|
+
children: [/* @__PURE__ */ v("div", {
|
|
167
198
|
className: "flex items-center space-x-4",
|
|
168
|
-
children: [/* @__PURE__ */
|
|
199
|
+
children: [/* @__PURE__ */ _("div", {
|
|
169
200
|
className: "h-10 w-10 rounded-full bg-accent-soft flex items-center justify-center",
|
|
170
|
-
children: /* @__PURE__ */
|
|
171
|
-
}), /* @__PURE__ */
|
|
201
|
+
children: /* @__PURE__ */ _(o, { className: "h-5 w-5 text-text-primary" })
|
|
202
|
+
}), /* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("p", {
|
|
172
203
|
className: "font-medium",
|
|
173
204
|
children: e.title
|
|
174
|
-
}), /* @__PURE__ */
|
|
205
|
+
}), /* @__PURE__ */ _("p", {
|
|
175
206
|
className: "text-sm text-text-secondary",
|
|
176
|
-
children:
|
|
207
|
+
children: P("proserviceworld.dashboard.client.booking.provider", "Provider: {{name}}", { name: e.providerName })
|
|
177
208
|
})] })]
|
|
178
|
-
}), /* @__PURE__ */
|
|
209
|
+
}), /* @__PURE__ */ v("div", {
|
|
179
210
|
className: "text-right",
|
|
180
|
-
children: [/* @__PURE__ */
|
|
211
|
+
children: [/* @__PURE__ */ v("p", {
|
|
181
212
|
className: "font-medium text-sm tabular-nums",
|
|
182
213
|
children: ["$", e.budget.toLocaleString()]
|
|
183
|
-
}), /* @__PURE__ */
|
|
214
|
+
}), /* @__PURE__ */ _(b, {
|
|
184
215
|
variant: e.status === "completed" ? "default" : e.status === "in_progress" ? "secondary" : "outline",
|
|
185
|
-
children:
|
|
216
|
+
children: J(e.status)
|
|
186
217
|
})]
|
|
187
218
|
})]
|
|
188
219
|
}, e.id))
|
|
@@ -190,141 +221,141 @@ function j() {
|
|
|
190
221
|
})
|
|
191
222
|
]
|
|
192
223
|
}),
|
|
193
|
-
|
|
224
|
+
B === "provider" && /* @__PURE__ */ v("div", {
|
|
194
225
|
className: "space-y-6",
|
|
195
226
|
children: [
|
|
196
|
-
/* @__PURE__ */
|
|
227
|
+
/* @__PURE__ */ _(D, { children: /* @__PURE__ */ v("div", {
|
|
197
228
|
className: "flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between",
|
|
198
|
-
children: [/* @__PURE__ */
|
|
229
|
+
children: [/* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("h2", {
|
|
199
230
|
className: "text-xl font-bold tracking-tight",
|
|
200
|
-
children:
|
|
201
|
-
}), /* @__PURE__ */
|
|
231
|
+
children: P("proserviceworld.dashboard.provider.welcomeTitle", "Welcome back, Provider!")
|
|
232
|
+
}), /* @__PURE__ */ _("p", {
|
|
202
233
|
className: "text-text-secondary mt-1",
|
|
203
|
-
children:
|
|
204
|
-
})] }), /* @__PURE__ */
|
|
234
|
+
children: P("proserviceworld.dashboard.provider.welcomeSubtitle", "Manage your services, bookings, and grow your business")
|
|
235
|
+
})] }), /* @__PURE__ */ _(S, {
|
|
205
236
|
primary: {
|
|
206
|
-
label:
|
|
237
|
+
label: P("proserviceworld.dashboard.provider.actions.editProfile", "Edit Profile"),
|
|
207
238
|
onSelect: () => {},
|
|
208
|
-
icon: /* @__PURE__ */
|
|
239
|
+
icon: /* @__PURE__ */ _(d, { className: "h-4 w-4" })
|
|
209
240
|
},
|
|
210
241
|
actions: [{
|
|
211
|
-
label:
|
|
242
|
+
label: P("proserviceworld.dashboard.provider.actions.addService", "Add Service"),
|
|
212
243
|
onSelect: () => {},
|
|
213
|
-
icon: /* @__PURE__ */
|
|
244
|
+
icon: /* @__PURE__ */ _(f, { className: "h-4 w-4" })
|
|
214
245
|
}]
|
|
215
246
|
})]
|
|
216
247
|
}) }),
|
|
217
|
-
/* @__PURE__ */
|
|
248
|
+
/* @__PURE__ */ v("div", {
|
|
218
249
|
className: "grid gap-4 md:grid-cols-4",
|
|
219
250
|
children: [
|
|
220
|
-
/* @__PURE__ */
|
|
251
|
+
/* @__PURE__ */ _(O, {
|
|
221
252
|
treatment: "glass",
|
|
222
253
|
glow: !0,
|
|
223
254
|
className: "border-border-seam",
|
|
224
|
-
children: /* @__PURE__ */
|
|
255
|
+
children: /* @__PURE__ */ v("div", {
|
|
225
256
|
className: "flex items-center",
|
|
226
|
-
children: [/* @__PURE__ */
|
|
257
|
+
children: [/* @__PURE__ */ _(p, { className: "h-8 w-8 text-status-warning-text" }), /* @__PURE__ */ v("div", {
|
|
227
258
|
className: "ml-4",
|
|
228
|
-
children: [/* @__PURE__ */
|
|
259
|
+
children: [/* @__PURE__ */ _("p", {
|
|
229
260
|
className: "text-2xl font-bold tabular-nums",
|
|
230
261
|
children: "4.9"
|
|
231
|
-
}), /* @__PURE__ */
|
|
262
|
+
}), /* @__PURE__ */ _("p", {
|
|
232
263
|
className: "text-sm text-text-secondary",
|
|
233
|
-
children:
|
|
264
|
+
children: P("proserviceworld.dashboard.provider.metrics.rating", "Rating ({{count}} reviews)", { count: R.length })
|
|
234
265
|
})]
|
|
235
266
|
})]
|
|
236
267
|
})
|
|
237
268
|
}),
|
|
238
|
-
/* @__PURE__ */
|
|
269
|
+
/* @__PURE__ */ _(O, {
|
|
239
270
|
treatment: "metric",
|
|
240
271
|
className: "border-border-seam",
|
|
241
|
-
children: /* @__PURE__ */
|
|
272
|
+
children: /* @__PURE__ */ v("div", {
|
|
242
273
|
className: "flex items-center",
|
|
243
|
-
children: [/* @__PURE__ */
|
|
274
|
+
children: [/* @__PURE__ */ _(s, { className: "h-8 w-8 text-accent-blue" }), /* @__PURE__ */ v("div", {
|
|
244
275
|
className: "ml-4",
|
|
245
|
-
children: [/* @__PURE__ */
|
|
276
|
+
children: [/* @__PURE__ */ _("p", {
|
|
246
277
|
className: "text-2xl font-bold tabular-nums",
|
|
247
|
-
children:
|
|
248
|
-
}), /* @__PURE__ */
|
|
278
|
+
children: H.length
|
|
279
|
+
}), /* @__PURE__ */ _("p", {
|
|
249
280
|
className: "text-sm text-text-secondary",
|
|
250
|
-
children:
|
|
281
|
+
children: P("proserviceworld.dashboard.provider.metrics.activeProjects", "Active Projects")
|
|
251
282
|
})]
|
|
252
283
|
})]
|
|
253
284
|
})
|
|
254
285
|
}),
|
|
255
|
-
/* @__PURE__ */
|
|
286
|
+
/* @__PURE__ */ _(O, {
|
|
256
287
|
treatment: "metric",
|
|
257
288
|
className: "border-border-seam",
|
|
258
|
-
children: /* @__PURE__ */
|
|
289
|
+
children: /* @__PURE__ */ v("div", {
|
|
259
290
|
className: "flex items-center",
|
|
260
|
-
children: [/* @__PURE__ */
|
|
291
|
+
children: [/* @__PURE__ */ _(m, { className: "h-8 w-8 text-status-success-text" }), /* @__PURE__ */ v("div", {
|
|
261
292
|
className: "ml-4",
|
|
262
|
-
children: [/* @__PURE__ */
|
|
293
|
+
children: [/* @__PURE__ */ _("p", {
|
|
263
294
|
className: "text-2xl font-bold tabular-nums",
|
|
264
295
|
children: "98%"
|
|
265
|
-
}), /* @__PURE__ */
|
|
296
|
+
}), /* @__PURE__ */ _("p", {
|
|
266
297
|
className: "text-sm text-text-secondary",
|
|
267
|
-
children:
|
|
298
|
+
children: P("proserviceworld.dashboard.provider.metrics.completionRate", "Completion Rate")
|
|
268
299
|
})]
|
|
269
300
|
})]
|
|
270
301
|
})
|
|
271
302
|
}),
|
|
272
|
-
/* @__PURE__ */
|
|
303
|
+
/* @__PURE__ */ _(O, {
|
|
273
304
|
treatment: "metric",
|
|
274
305
|
className: "border-border-seam",
|
|
275
|
-
children: /* @__PURE__ */
|
|
306
|
+
children: /* @__PURE__ */ v("div", {
|
|
276
307
|
className: "flex items-center",
|
|
277
|
-
children: [/* @__PURE__ */
|
|
308
|
+
children: [/* @__PURE__ */ _(u, { className: "h-8 w-8 text-accent-blue" }), /* @__PURE__ */ v("div", {
|
|
278
309
|
className: "ml-4",
|
|
279
|
-
children: [/* @__PURE__ */
|
|
310
|
+
children: [/* @__PURE__ */ _("p", {
|
|
280
311
|
className: "text-2xl font-bold tabular-nums",
|
|
281
312
|
children: "$12,850"
|
|
282
|
-
}), /* @__PURE__ */
|
|
313
|
+
}), /* @__PURE__ */ _("p", {
|
|
283
314
|
className: "text-sm text-text-secondary",
|
|
284
|
-
children:
|
|
315
|
+
children: P("proserviceworld.dashboard.provider.metrics.thisMonth", "This Month")
|
|
285
316
|
})]
|
|
286
317
|
})]
|
|
287
318
|
})
|
|
288
319
|
})
|
|
289
320
|
]
|
|
290
321
|
}),
|
|
291
|
-
/* @__PURE__ */
|
|
322
|
+
/* @__PURE__ */ v(C, {
|
|
292
323
|
className: "border-border-seam",
|
|
293
|
-
children: [/* @__PURE__ */
|
|
324
|
+
children: [/* @__PURE__ */ _(T, { children: /* @__PURE__ */ v("div", {
|
|
294
325
|
className: "flex items-center justify-between",
|
|
295
|
-
children: [/* @__PURE__ */
|
|
326
|
+
children: [/* @__PURE__ */ _(E, { children: P("proserviceworld.dashboard.provider.sections.yourServices", "Your Services") }), /* @__PURE__ */ _(S, {
|
|
296
327
|
primary: {
|
|
297
|
-
label:
|
|
328
|
+
label: P("proserviceworld.dashboard.provider.actions.addService", "Add Service"),
|
|
298
329
|
onSelect: () => {},
|
|
299
|
-
icon: /* @__PURE__ */
|
|
330
|
+
icon: /* @__PURE__ */ _(f, { className: "h-4 w-4" })
|
|
300
331
|
},
|
|
301
332
|
actions: [{
|
|
302
|
-
label:
|
|
333
|
+
label: P("proserviceworld.shared.actions.viewAll", "View All"),
|
|
303
334
|
onSelect: () => {},
|
|
304
|
-
icon: /* @__PURE__ */
|
|
335
|
+
icon: /* @__PURE__ */ _(d, { className: "h-4 w-4" })
|
|
305
336
|
}]
|
|
306
337
|
})]
|
|
307
|
-
}) }), /* @__PURE__ */
|
|
338
|
+
}) }), /* @__PURE__ */ _(w, { children: /* @__PURE__ */ _("div", {
|
|
308
339
|
className: "grid gap-4 md:grid-cols-3",
|
|
309
|
-
children:
|
|
340
|
+
children: L.slice(0, 3).map((e) => /* @__PURE__ */ v("div", {
|
|
310
341
|
className: "border border-border-seam rounded-lg p-4 transition-shadow hover:shadow-pop",
|
|
311
342
|
children: [
|
|
312
|
-
/* @__PURE__ */
|
|
343
|
+
/* @__PURE__ */ _("h4", {
|
|
313
344
|
className: "font-medium mb-1",
|
|
314
345
|
children: e.title
|
|
315
346
|
}),
|
|
316
|
-
/* @__PURE__ */
|
|
347
|
+
/* @__PURE__ */ _("p", {
|
|
317
348
|
className: "text-sm text-text-secondary mb-2 line-clamp-2",
|
|
318
349
|
children: e.description
|
|
319
350
|
}),
|
|
320
|
-
/* @__PURE__ */
|
|
351
|
+
/* @__PURE__ */ v("div", {
|
|
321
352
|
className: "flex items-center justify-between",
|
|
322
|
-
children: [/* @__PURE__ */
|
|
353
|
+
children: [/* @__PURE__ */ _("span", {
|
|
323
354
|
className: "text-sm font-medium tabular-nums",
|
|
324
|
-
children:
|
|
325
|
-
}), /* @__PURE__ */
|
|
355
|
+
children: P("proserviceworld.services.card.pricing.from", "From ${{amount}}", { amount: e.pricing.basePrice.toLocaleString() })
|
|
356
|
+
}), /* @__PURE__ */ _(b, {
|
|
326
357
|
variant: "secondary",
|
|
327
|
-
children:
|
|
358
|
+
children: P("proserviceworld.dashboard.provider.service.bookings", "{{count}} bookings", { count: e.totalBookings })
|
|
328
359
|
})]
|
|
329
360
|
})
|
|
330
361
|
]
|
|
@@ -333,133 +364,133 @@ function j() {
|
|
|
333
364
|
})
|
|
334
365
|
]
|
|
335
366
|
}),
|
|
336
|
-
|
|
367
|
+
B === "admin" && /* @__PURE__ */ v("div", {
|
|
337
368
|
className: "space-y-6",
|
|
338
369
|
children: [
|
|
339
|
-
/* @__PURE__ */
|
|
370
|
+
/* @__PURE__ */ _(D, { children: /* @__PURE__ */ v("div", {
|
|
340
371
|
className: "flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between",
|
|
341
|
-
children: [/* @__PURE__ */
|
|
372
|
+
children: [/* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("h2", {
|
|
342
373
|
className: "text-xl font-bold tracking-tight",
|
|
343
|
-
children:
|
|
344
|
-
}), /* @__PURE__ */
|
|
374
|
+
children: P("proserviceworld.dashboard.admin.title", "Admin Dashboard")
|
|
375
|
+
}), /* @__PURE__ */ _("p", {
|
|
345
376
|
className: "text-text-secondary mt-1",
|
|
346
|
-
children:
|
|
347
|
-
})] }), /* @__PURE__ */
|
|
377
|
+
children: P("proserviceworld.dashboard.admin.subtitle", "Monitor platform activity and manage users")
|
|
378
|
+
})] }), /* @__PURE__ */ _(S, {
|
|
348
379
|
primary: {
|
|
349
|
-
label:
|
|
380
|
+
label: P("proserviceworld.dashboard.admin.actions.viewReports", "View Reports"),
|
|
350
381
|
onSelect: () => {},
|
|
351
|
-
icon: /* @__PURE__ */
|
|
382
|
+
icon: /* @__PURE__ */ _(i, { className: "h-4 w-4" })
|
|
352
383
|
},
|
|
353
384
|
actions: [{
|
|
354
|
-
label:
|
|
385
|
+
label: P("proserviceworld.dashboard.admin.actions.manageUsers", "Manage Users"),
|
|
355
386
|
onSelect: () => {},
|
|
356
|
-
icon: /* @__PURE__ */
|
|
387
|
+
icon: /* @__PURE__ */ _(h, { className: "h-4 w-4" })
|
|
357
388
|
}]
|
|
358
389
|
})]
|
|
359
390
|
}) }),
|
|
360
|
-
/* @__PURE__ */
|
|
391
|
+
/* @__PURE__ */ v("div", {
|
|
361
392
|
className: "grid gap-4 md:grid-cols-4",
|
|
362
393
|
children: [
|
|
363
|
-
/* @__PURE__ */
|
|
394
|
+
/* @__PURE__ */ _(O, {
|
|
364
395
|
treatment: "metric",
|
|
365
396
|
className: "border-border-seam",
|
|
366
|
-
children: /* @__PURE__ */
|
|
397
|
+
children: /* @__PURE__ */ v("div", {
|
|
367
398
|
className: "flex items-center",
|
|
368
|
-
children: [/* @__PURE__ */
|
|
399
|
+
children: [/* @__PURE__ */ _(h, { className: "h-8 w-8 text-accent-blue" }), /* @__PURE__ */ v("div", {
|
|
369
400
|
className: "ml-4",
|
|
370
|
-
children: [/* @__PURE__ */
|
|
401
|
+
children: [/* @__PURE__ */ _("p", {
|
|
371
402
|
className: "text-2xl font-bold tabular-nums",
|
|
372
|
-
children:
|
|
373
|
-
}), /* @__PURE__ */
|
|
403
|
+
children: I.length
|
|
404
|
+
}), /* @__PURE__ */ _("p", {
|
|
374
405
|
className: "text-sm text-text-secondary",
|
|
375
|
-
children:
|
|
406
|
+
children: P("proserviceworld.dashboard.admin.metrics.totalProviders", "Total Providers")
|
|
376
407
|
})]
|
|
377
408
|
})]
|
|
378
409
|
})
|
|
379
410
|
}),
|
|
380
|
-
/* @__PURE__ */
|
|
411
|
+
/* @__PURE__ */ _(O, {
|
|
381
412
|
treatment: "metric",
|
|
382
413
|
className: "border-border-seam",
|
|
383
|
-
children: /* @__PURE__ */
|
|
414
|
+
children: /* @__PURE__ */ v("div", {
|
|
384
415
|
className: "flex items-center",
|
|
385
|
-
children: [/* @__PURE__ */
|
|
416
|
+
children: [/* @__PURE__ */ _(o, { className: "h-8 w-8 text-status-success-text" }), /* @__PURE__ */ v("div", {
|
|
386
417
|
className: "ml-4",
|
|
387
|
-
children: [/* @__PURE__ */
|
|
418
|
+
children: [/* @__PURE__ */ _("p", {
|
|
388
419
|
className: "text-2xl font-bold tabular-nums",
|
|
389
|
-
children:
|
|
390
|
-
}), /* @__PURE__ */
|
|
420
|
+
children: L.length
|
|
421
|
+
}), /* @__PURE__ */ _("p", {
|
|
391
422
|
className: "text-sm text-text-secondary",
|
|
392
|
-
children:
|
|
423
|
+
children: P("proserviceworld.dashboard.admin.metrics.totalServices", "Total Services")
|
|
393
424
|
})]
|
|
394
425
|
})]
|
|
395
426
|
})
|
|
396
427
|
}),
|
|
397
|
-
/* @__PURE__ */
|
|
428
|
+
/* @__PURE__ */ _(O, {
|
|
398
429
|
treatment: "metric",
|
|
399
430
|
className: "border-border-seam",
|
|
400
|
-
children: /* @__PURE__ */
|
|
431
|
+
children: /* @__PURE__ */ v("div", {
|
|
401
432
|
className: "flex items-center",
|
|
402
|
-
children: [/* @__PURE__ */
|
|
433
|
+
children: [/* @__PURE__ */ _(s, { className: "h-8 w-8 text-accent-blue" }), /* @__PURE__ */ v("div", {
|
|
403
434
|
className: "ml-4",
|
|
404
|
-
children: [/* @__PURE__ */
|
|
435
|
+
children: [/* @__PURE__ */ _("p", {
|
|
405
436
|
className: "text-2xl font-bold tabular-nums",
|
|
406
|
-
children:
|
|
407
|
-
}), /* @__PURE__ */
|
|
437
|
+
children: F.length
|
|
438
|
+
}), /* @__PURE__ */ _("p", {
|
|
408
439
|
className: "text-sm text-text-secondary",
|
|
409
|
-
children:
|
|
440
|
+
children: P("proserviceworld.dashboard.admin.metrics.totalBookings", "Total Bookings")
|
|
410
441
|
})]
|
|
411
442
|
})]
|
|
412
443
|
})
|
|
413
444
|
}),
|
|
414
|
-
/* @__PURE__ */
|
|
445
|
+
/* @__PURE__ */ _(O, {
|
|
415
446
|
treatment: "glass",
|
|
416
447
|
glow: !0,
|
|
417
448
|
className: "border-border-seam",
|
|
418
|
-
children: /* @__PURE__ */
|
|
449
|
+
children: /* @__PURE__ */ v("div", {
|
|
419
450
|
className: "flex items-center",
|
|
420
|
-
children: [/* @__PURE__ */
|
|
451
|
+
children: [/* @__PURE__ */ _(u, { className: "h-8 w-8 text-status-warning-text" }), /* @__PURE__ */ v("div", {
|
|
421
452
|
className: "ml-4",
|
|
422
|
-
children: [/* @__PURE__ */
|
|
453
|
+
children: [/* @__PURE__ */ _("p", {
|
|
423
454
|
className: "text-2xl font-bold tabular-nums",
|
|
424
455
|
children: "$45,670"
|
|
425
|
-
}), /* @__PURE__ */
|
|
456
|
+
}), /* @__PURE__ */ _("p", {
|
|
426
457
|
className: "text-sm text-text-secondary",
|
|
427
|
-
children:
|
|
458
|
+
children: P("proserviceworld.dashboard.admin.metrics.totalRevenue", "Total Revenue")
|
|
428
459
|
})]
|
|
429
460
|
})]
|
|
430
461
|
})
|
|
431
462
|
})
|
|
432
463
|
]
|
|
433
464
|
}),
|
|
434
|
-
/* @__PURE__ */
|
|
465
|
+
/* @__PURE__ */ v("div", {
|
|
435
466
|
className: "grid gap-4 md:grid-cols-2",
|
|
436
|
-
children: [/* @__PURE__ */
|
|
467
|
+
children: [/* @__PURE__ */ v(C, {
|
|
437
468
|
className: "border-border-seam",
|
|
438
|
-
children: [/* @__PURE__ */
|
|
469
|
+
children: [/* @__PURE__ */ _(T, { children: /* @__PURE__ */ _(E, { children: P("proserviceworld.dashboard.admin.sections.recentProviders", "Recent Providers") }) }), /* @__PURE__ */ _(w, {
|
|
439
470
|
className: "space-y-4",
|
|
440
|
-
children:
|
|
471
|
+
children: I.slice(0, 3).map((e) => /* @__PURE__ */ v("div", {
|
|
441
472
|
className: "flex items-center space-x-4",
|
|
442
473
|
children: [
|
|
443
|
-
/* @__PURE__ */
|
|
474
|
+
/* @__PURE__ */ _("div", {
|
|
444
475
|
className: "h-10 w-10 rounded-full bg-accent-soft flex items-center justify-center",
|
|
445
|
-
children: /* @__PURE__ */
|
|
476
|
+
children: /* @__PURE__ */ _("span", {
|
|
446
477
|
className: "text-text-primary font-medium",
|
|
447
478
|
children: e.name.charAt(0)
|
|
448
479
|
})
|
|
449
480
|
}),
|
|
450
|
-
/* @__PURE__ */
|
|
481
|
+
/* @__PURE__ */ v("div", {
|
|
451
482
|
className: "flex-1",
|
|
452
|
-
children: [/* @__PURE__ */
|
|
483
|
+
children: [/* @__PURE__ */ _("p", {
|
|
453
484
|
className: "font-medium",
|
|
454
485
|
children: e.businessName
|
|
455
|
-
}), /* @__PURE__ */
|
|
486
|
+
}), /* @__PURE__ */ _("p", {
|
|
456
487
|
className: "text-sm text-text-secondary",
|
|
457
488
|
children: e.specializations[0]
|
|
458
489
|
})]
|
|
459
490
|
}),
|
|
460
|
-
/* @__PURE__ */
|
|
491
|
+
/* @__PURE__ */ v("div", {
|
|
461
492
|
className: "flex items-center text-sm",
|
|
462
|
-
children: [/* @__PURE__ */
|
|
493
|
+
children: [/* @__PURE__ */ _(p, { className: "h-4 w-4 text-status-warning-text mr-1" }), /* @__PURE__ */ _("span", {
|
|
463
494
|
className: "tabular-nums",
|
|
464
495
|
children: e.rating.toFixed(1)
|
|
465
496
|
})]
|
|
@@ -467,39 +498,39 @@ function j() {
|
|
|
467
498
|
]
|
|
468
499
|
}, e.id))
|
|
469
500
|
})]
|
|
470
|
-
}), /* @__PURE__ */
|
|
501
|
+
}), /* @__PURE__ */ v(C, {
|
|
471
502
|
className: "border-border-seam",
|
|
472
|
-
children: [/* @__PURE__ */
|
|
503
|
+
children: [/* @__PURE__ */ _(T, { children: /* @__PURE__ */ _(E, { children: P("proserviceworld.dashboard.admin.sections.platformAlerts", "Platform Alerts") }) }), /* @__PURE__ */ v(w, {
|
|
473
504
|
className: "space-y-4",
|
|
474
505
|
children: [
|
|
475
|
-
/* @__PURE__ */
|
|
506
|
+
/* @__PURE__ */ v("div", {
|
|
476
507
|
className: "flex items-start space-x-3",
|
|
477
|
-
children: [/* @__PURE__ */
|
|
508
|
+
children: [/* @__PURE__ */ _(r, { className: "h-5 w-5 text-status-warning-text mt-0.5" }), /* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("p", {
|
|
478
509
|
className: "font-medium text-sm",
|
|
479
|
-
children:
|
|
480
|
-
}), /* @__PURE__ */
|
|
510
|
+
children: P("proserviceworld.dashboard.admin.alerts.pendingVerifications.title", "Pending Verifications")
|
|
511
|
+
}), /* @__PURE__ */ _("p", {
|
|
481
512
|
className: "text-sm text-text-secondary",
|
|
482
|
-
children:
|
|
513
|
+
children: P("proserviceworld.dashboard.admin.alerts.pendingVerifications.description", "3 providers awaiting verification")
|
|
483
514
|
})] })]
|
|
484
515
|
}),
|
|
485
|
-
/* @__PURE__ */
|
|
516
|
+
/* @__PURE__ */ v("div", {
|
|
486
517
|
className: "flex items-start space-x-3",
|
|
487
|
-
children: [/* @__PURE__ */
|
|
518
|
+
children: [/* @__PURE__ */ _(c, { className: "h-5 w-5 text-status-success-text mt-0.5" }), /* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("p", {
|
|
488
519
|
className: "font-medium text-sm",
|
|
489
|
-
children:
|
|
490
|
-
}), /* @__PURE__ */
|
|
520
|
+
children: P("proserviceworld.dashboard.admin.alerts.systemStatus.title", "System Status")
|
|
521
|
+
}), /* @__PURE__ */ _("p", {
|
|
491
522
|
className: "text-sm text-text-secondary",
|
|
492
|
-
children:
|
|
523
|
+
children: P("proserviceworld.dashboard.admin.alerts.systemStatus.description", "All systems operational")
|
|
493
524
|
})] })]
|
|
494
525
|
}),
|
|
495
|
-
/* @__PURE__ */
|
|
526
|
+
/* @__PURE__ */ v("div", {
|
|
496
527
|
className: "flex items-start space-x-3",
|
|
497
|
-
children: [/* @__PURE__ */
|
|
528
|
+
children: [/* @__PURE__ */ _(a, { className: "h-5 w-5 text-accent-blue mt-0.5" }), /* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("p", {
|
|
498
529
|
className: "font-medium text-sm",
|
|
499
|
-
children:
|
|
500
|
-
}), /* @__PURE__ */
|
|
530
|
+
children: P("proserviceworld.dashboard.admin.alerts.newReviews.title", "New Reviews")
|
|
531
|
+
}), /* @__PURE__ */ _("p", {
|
|
501
532
|
className: "text-sm text-text-secondary",
|
|
502
|
-
children:
|
|
533
|
+
children: P("proserviceworld.dashboard.admin.alerts.newReviews.description", "12 new reviews this week")
|
|
503
534
|
})] })]
|
|
504
535
|
})
|
|
505
536
|
]
|
|
@@ -508,105 +539,106 @@ function j() {
|
|
|
508
539
|
})
|
|
509
540
|
]
|
|
510
541
|
}),
|
|
511
|
-
|
|
542
|
+
B === "team" && /* @__PURE__ */ v("div", {
|
|
512
543
|
className: "space-y-6",
|
|
513
544
|
children: [
|
|
514
|
-
/* @__PURE__ */
|
|
545
|
+
/* @__PURE__ */ _(D, { children: /* @__PURE__ */ v("div", {
|
|
515
546
|
className: "flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between",
|
|
516
|
-
children: [/* @__PURE__ */
|
|
547
|
+
children: [/* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("h2", {
|
|
517
548
|
className: "text-xl font-bold tracking-tight",
|
|
518
|
-
children:
|
|
519
|
-
}), /* @__PURE__ */
|
|
549
|
+
children: P("proserviceworld.dashboard.team.title", "Welcome, Team Member!")
|
|
550
|
+
}), /* @__PURE__ */ _("p", {
|
|
520
551
|
className: "text-text-secondary mt-1",
|
|
521
|
-
children:
|
|
522
|
-
})] }), /* @__PURE__ */
|
|
552
|
+
children: P("proserviceworld.dashboard.team.subtitle", "Manage assigned tasks and projects")
|
|
553
|
+
})] }), /* @__PURE__ */ v(x, {
|
|
523
554
|
variant: "outline",
|
|
524
555
|
size: "sm",
|
|
525
|
-
children: [/* @__PURE__ */
|
|
556
|
+
children: [/* @__PURE__ */ _(s, { className: "h-4 w-4 mr-2" }), P("proserviceworld.dashboard.team.actions.myTasks", "My Tasks")]
|
|
526
557
|
})]
|
|
527
558
|
}) }),
|
|
528
|
-
/* @__PURE__ */
|
|
559
|
+
/* @__PURE__ */ v("div", {
|
|
529
560
|
className: "grid gap-4 md:grid-cols-4",
|
|
530
561
|
children: [
|
|
531
|
-
/* @__PURE__ */
|
|
562
|
+
/* @__PURE__ */ _(O, {
|
|
532
563
|
treatment: "metric",
|
|
533
564
|
className: "border-border-seam",
|
|
534
|
-
children: /* @__PURE__ */
|
|
565
|
+
children: /* @__PURE__ */ v("div", {
|
|
535
566
|
className: "flex items-center",
|
|
536
|
-
children: [/* @__PURE__ */
|
|
567
|
+
children: [/* @__PURE__ */ _(c, { className: "h-8 w-8 text-status-success-text" }), /* @__PURE__ */ v("div", {
|
|
537
568
|
className: "ml-4",
|
|
538
|
-
children: [/* @__PURE__ */
|
|
569
|
+
children: [/* @__PURE__ */ _("p", {
|
|
539
570
|
className: "text-2xl font-bold tabular-nums",
|
|
540
571
|
children: "8"
|
|
541
|
-
}), /* @__PURE__ */
|
|
572
|
+
}), /* @__PURE__ */ _("p", {
|
|
542
573
|
className: "text-sm text-text-secondary",
|
|
543
|
-
children:
|
|
574
|
+
children: P("proserviceworld.dashboard.team.metrics.tasksCompleted", "Tasks Completed")
|
|
544
575
|
})]
|
|
545
576
|
})]
|
|
546
577
|
})
|
|
547
578
|
}),
|
|
548
|
-
/* @__PURE__ */
|
|
579
|
+
/* @__PURE__ */ _(O, {
|
|
549
580
|
treatment: "metric",
|
|
550
581
|
className: "border-border-seam",
|
|
551
|
-
children: /* @__PURE__ */
|
|
582
|
+
children: /* @__PURE__ */ v("div", {
|
|
552
583
|
className: "flex items-center",
|
|
553
|
-
children: [/* @__PURE__ */
|
|
584
|
+
children: [/* @__PURE__ */ _(l, { className: "h-8 w-8 text-status-warning-text" }), /* @__PURE__ */ v("div", {
|
|
554
585
|
className: "ml-4",
|
|
555
|
-
children: [/* @__PURE__ */
|
|
586
|
+
children: [/* @__PURE__ */ _("p", {
|
|
556
587
|
className: "text-2xl font-bold tabular-nums",
|
|
557
|
-
children:
|
|
558
|
-
}), /* @__PURE__ */
|
|
588
|
+
children: W.length
|
|
589
|
+
}), /* @__PURE__ */ _("p", {
|
|
559
590
|
className: "text-sm text-text-secondary",
|
|
560
|
-
children:
|
|
591
|
+
children: P("proserviceworld.dashboard.team.metrics.pendingTasks", "Pending Tasks")
|
|
561
592
|
})]
|
|
562
593
|
})]
|
|
563
594
|
})
|
|
564
595
|
}),
|
|
565
|
-
/* @__PURE__ */
|
|
596
|
+
/* @__PURE__ */ _(O, {
|
|
566
597
|
treatment: "glass",
|
|
567
598
|
glow: !0,
|
|
568
599
|
className: "border-border-seam",
|
|
569
|
-
children: /* @__PURE__ */
|
|
600
|
+
children: /* @__PURE__ */ v("div", {
|
|
570
601
|
className: "flex items-center",
|
|
571
|
-
children: [/* @__PURE__ */
|
|
602
|
+
children: [/* @__PURE__ */ _(p, { className: "h-8 w-8 text-accent-blue" }), /* @__PURE__ */ v("div", {
|
|
572
603
|
className: "ml-4",
|
|
573
|
-
children: [/* @__PURE__ */
|
|
604
|
+
children: [/* @__PURE__ */ _("p", {
|
|
574
605
|
className: "text-2xl font-bold tabular-nums",
|
|
575
606
|
children: "4.9"
|
|
576
|
-
}), /* @__PURE__ */
|
|
607
|
+
}), /* @__PURE__ */ _("p", {
|
|
577
608
|
className: "text-sm text-text-secondary",
|
|
578
|
-
children:
|
|
609
|
+
children: P("proserviceworld.dashboard.team.metrics.performanceScore", "Performance Score")
|
|
579
610
|
})]
|
|
580
611
|
})]
|
|
581
612
|
})
|
|
582
613
|
}),
|
|
583
|
-
/* @__PURE__ */
|
|
614
|
+
/* @__PURE__ */ _(O, {
|
|
584
615
|
treatment: "metric",
|
|
585
616
|
className: "border-border-seam",
|
|
586
|
-
children: /* @__PURE__ */
|
|
617
|
+
children: /* @__PURE__ */ v("div", {
|
|
587
618
|
className: "flex items-center",
|
|
588
|
-
children: [/* @__PURE__ */
|
|
619
|
+
children: [/* @__PURE__ */ _(h, { className: "h-8 w-8 text-accent-blue" }), /* @__PURE__ */ v("div", {
|
|
589
620
|
className: "ml-4",
|
|
590
|
-
children: [/* @__PURE__ */
|
|
621
|
+
children: [/* @__PURE__ */ _("p", {
|
|
591
622
|
className: "text-2xl font-bold tabular-nums",
|
|
592
|
-
children:
|
|
593
|
-
}), /* @__PURE__ */
|
|
623
|
+
children: H.length
|
|
624
|
+
}), /* @__PURE__ */ _("p", {
|
|
594
625
|
className: "text-sm text-text-secondary",
|
|
595
|
-
children:
|
|
626
|
+
children: P("proserviceworld.dashboard.team.metrics.activeProjects", "Active Projects")
|
|
596
627
|
})]
|
|
597
628
|
})]
|
|
598
629
|
})
|
|
599
630
|
})
|
|
600
631
|
]
|
|
601
632
|
}),
|
|
602
|
-
/* @__PURE__ */
|
|
633
|
+
/* @__PURE__ */ v(C, {
|
|
603
634
|
className: "border-border-seam",
|
|
604
|
-
children: [/* @__PURE__ */
|
|
605
|
-
className: "
|
|
606
|
-
children:
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
635
|
+
children: [/* @__PURE__ */ _(T, { children: /* @__PURE__ */ _(E, { children: P("proserviceworld.dashboard.team.sections.recentActivity", "Recent Activity") }) }), /* @__PURE__ */ _(w, {
|
|
636
|
+
className: "py-4",
|
|
637
|
+
children: /* @__PURE__ */ _(A, {
|
|
638
|
+
illustration: "empty-notifications",
|
|
639
|
+
title: P("proserviceworld.dashboard.team.sections.comingSoonTitle", "No recent activity yet"),
|
|
640
|
+
description: P("proserviceworld.dashboard.team.sections.comingSoon", "Team member features are on the way — assigned tasks and project updates will show up here.")
|
|
641
|
+
})
|
|
610
642
|
})]
|
|
611
643
|
})
|
|
612
644
|
]
|
|
@@ -615,6 +647,6 @@ function j() {
|
|
|
615
647
|
});
|
|
616
648
|
}
|
|
617
649
|
//#endregion
|
|
618
|
-
export {
|
|
650
|
+
export { N as DashboardPage };
|
|
619
651
|
|
|
620
652
|
//# sourceMappingURL=DashboardPage.js.map
|