@burdenoff/microfe-coolandlovely 2026.625.2 → 2026.628.1
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/coolandlovely/CoolAndLovelyRoot.js +66 -122
- package/dist/coolandlovely/CoolAndLovelyRoot.js.map +1 -1
- package/dist/coolandlovely/CoolAndLovelyRoutes.js +87 -175
- package/dist/coolandlovely/CoolAndLovelyRoutes.js.map +1 -1
- package/dist/coolandlovely/components/Field.js +81 -0
- package/dist/coolandlovely/components/Field.js.map +1 -0
- package/dist/coolandlovely/components/StateViews.js +34 -0
- package/dist/coolandlovely/components/StateViews.js.map +1 -0
- package/dist/coolandlovely/components/StatusBadge.js +25 -22
- package/dist/coolandlovely/components/StatusBadge.js.map +1 -1
- package/dist/coolandlovely/components/TagList.js +21 -0
- package/dist/coolandlovely/components/TagList.js.map +1 -0
- package/dist/coolandlovely/components/Thumbnail.js +29 -0
- package/dist/coolandlovely/components/Thumbnail.js.map +1 -0
- package/dist/coolandlovely/context/CoolAndLovelyContext.js +10 -10
- package/dist/coolandlovely/context/CoolAndLovelyContext.js.map +1 -1
- package/dist/coolandlovely/hooks/index.js +1 -0
- package/dist/coolandlovely/hooks/useCoolAndLovelyApi.js +462 -169
- package/dist/coolandlovely/hooks/useCoolAndLovelyApi.js.map +1 -1
- package/dist/coolandlovely/pages/HomePage.js +251 -845
- package/dist/coolandlovely/pages/HomePage.js.map +1 -1
- package/dist/coolandlovely/pages/brands/BrandDetailPage.js +319 -0
- package/dist/coolandlovely/pages/brands/BrandDetailPage.js.map +1 -0
- package/dist/coolandlovely/pages/brands/BrandFormPage.js +190 -0
- package/dist/coolandlovely/pages/brands/BrandFormPage.js.map +1 -0
- package/dist/coolandlovely/pages/brands/BrandsListPage.js +158 -0
- package/dist/coolandlovely/pages/brands/BrandsListPage.js.map +1 -0
- package/dist/coolandlovely/pages/collaborations/CollaborationDetailPage.js +253 -0
- package/dist/coolandlovely/pages/collaborations/CollaborationDetailPage.js.map +1 -0
- package/dist/coolandlovely/pages/collaborations/CollaborationFormPage.js +206 -0
- package/dist/coolandlovely/pages/collaborations/CollaborationFormPage.js.map +1 -0
- package/dist/coolandlovely/pages/collaborations/CollaborationsListPage.js +129 -0
- package/dist/coolandlovely/pages/collaborations/CollaborationsListPage.js.map +1 -0
- package/dist/coolandlovely/pages/collections/CollectionDetailPage.js +217 -0
- package/dist/coolandlovely/pages/collections/CollectionDetailPage.js.map +1 -0
- package/dist/coolandlovely/pages/collections/CollectionFormPage.js +217 -0
- package/dist/coolandlovely/pages/collections/CollectionFormPage.js.map +1 -0
- package/dist/coolandlovely/pages/collections/CollectionsListPage.js +122 -0
- package/dist/coolandlovely/pages/collections/CollectionsListPage.js.map +1 -0
- package/dist/coolandlovely/pages/items/StyleItemDetailPage.js +230 -0
- package/dist/coolandlovely/pages/items/StyleItemDetailPage.js.map +1 -0
- package/dist/coolandlovely/pages/items/StyleItemFormPage.js +276 -0
- package/dist/coolandlovely/pages/items/StyleItemFormPage.js.map +1 -0
- package/dist/coolandlovely/pages/items/StyleItemsListPage.js +170 -0
- package/dist/coolandlovely/pages/items/StyleItemsListPage.js.map +1 -0
- package/dist/coolandlovely/pages/lookbooks/LookbookDetailPage.js +124 -0
- package/dist/coolandlovely/pages/lookbooks/LookbookDetailPage.js.map +1 -0
- package/dist/coolandlovely/pages/lookbooks/LookbooksListPage.js +156 -0
- package/dist/coolandlovely/pages/lookbooks/LookbooksListPage.js.map +1 -0
- package/dist/coolandlovely/pages/looks/LookDetailPage.js +238 -0
- package/dist/coolandlovely/pages/looks/LookDetailPage.js.map +1 -0
- package/dist/coolandlovely/pages/looks/LookFormPage.js +209 -0
- package/dist/coolandlovely/pages/looks/LookFormPage.js.map +1 -0
- package/dist/coolandlovely/pages/looks/LooksListPage.js +181 -0
- package/dist/coolandlovely/pages/looks/LooksListPage.js.map +1 -0
- package/dist/coolandlovely/pages/profile/StyleProfilePage.js +224 -0
- package/dist/coolandlovely/pages/profile/StyleProfilePage.js.map +1 -0
- package/dist/coolandlovely/pages/wardrobe/WardrobeFormPage.js +173 -0
- package/dist/coolandlovely/pages/wardrobe/WardrobeFormPage.js.map +1 -0
- package/dist/coolandlovely/pages/wardrobe/WardrobeListPage.js +172 -0
- package/dist/coolandlovely/pages/wardrobe/WardrobeListPage.js.map +1 -0
- package/dist/coolandlovely/store/coolandlovelyStore.js +2 -6
- package/dist/coolandlovely/store/coolandlovelyStore.js.map +1 -1
- package/dist/coolandlovely/utils/formatters.js +31 -23
- package/dist/coolandlovely/utils/formatters.js.map +1 -1
- package/dist/coolandlovely/utils/icons.js +34 -0
- package/dist/coolandlovely/utils/icons.js.map +1 -0
- package/dist/index.js +4 -4
- package/package.json +1 -1
- package/dist/coolandlovely/components/InvestmentCard.js +0 -98
- package/dist/coolandlovely/components/InvestmentCard.js.map +0 -1
- package/dist/coolandlovely/components/RatingDisplay.js +0 -35
- package/dist/coolandlovely/components/RatingDisplay.js.map +0 -1
- package/dist/coolandlovely/mocks/data.js +0 -1517
- package/dist/coolandlovely/mocks/data.js.map +0 -1
- package/dist/coolandlovely/mocks/users.js +0 -34
- package/dist/coolandlovely/mocks/users.js.map +0 -1
- package/dist/coolandlovely/pages/admin/AdminAnalyticsPage.js +0 -651
- package/dist/coolandlovely/pages/admin/AdminAnalyticsPage.js.map +0 -1
- package/dist/coolandlovely/pages/admin/AdminDashboard.js +0 -673
- package/dist/coolandlovely/pages/admin/AdminDashboard.js.map +0 -1
- package/dist/coolandlovely/pages/admin/AdminFinancialPage.js +0 -427
- package/dist/coolandlovely/pages/admin/AdminFinancialPage.js.map +0 -1
- package/dist/coolandlovely/pages/admin/AdminOrdersPage.js +0 -665
- package/dist/coolandlovely/pages/admin/AdminOrdersPage.js.map +0 -1
- package/dist/coolandlovely/pages/admin/AdminProfilePage.js +0 -264
- package/dist/coolandlovely/pages/admin/AdminProfilePage.js.map +0 -1
- package/dist/coolandlovely/pages/admin/AdminSettingsPage.js +0 -654
- package/dist/coolandlovely/pages/admin/AdminSettingsPage.js.map +0 -1
- package/dist/coolandlovely/pages/admin/CartManagementPage.js +0 -874
- package/dist/coolandlovely/pages/admin/CartManagementPage.js.map +0 -1
- package/dist/coolandlovely/pages/admin/UserManagementPage.js +0 -898
- package/dist/coolandlovely/pages/admin/UserManagementPage.js.map +0 -1
- package/dist/coolandlovely/pages/cart-owner/AnalyticsDashboard.js +0 -842
- package/dist/coolandlovely/pages/cart-owner/AnalyticsDashboard.js.map +0 -1
- package/dist/coolandlovely/pages/cart-owner/BusinessSettingsPage.js +0 -705
- package/dist/coolandlovely/pages/cart-owner/BusinessSettingsPage.js.map +0 -1
- package/dist/coolandlovely/pages/cart-owner/CartOwnerDashboard.js +0 -802
- package/dist/coolandlovely/pages/cart-owner/CartOwnerDashboard.js.map +0 -1
- package/dist/coolandlovely/pages/cart-owner/CartOwnerProfilePage.js +0 -891
- package/dist/coolandlovely/pages/cart-owner/CartOwnerProfilePage.js.map +0 -1
- package/dist/coolandlovely/pages/cart-owner/CartServiceConfigPage.js +0 -639
- package/dist/coolandlovely/pages/cart-owner/CartServiceConfigPage.js.map +0 -1
- package/dist/coolandlovely/pages/cart-owner/InventoryManagementPage.js +0 -914
- package/dist/coolandlovely/pages/cart-owner/InventoryManagementPage.js.map +0 -1
- package/dist/coolandlovely/pages/cart-owner/OrderManagementPage.js +0 -882
- package/dist/coolandlovely/pages/cart-owner/OrderManagementPage.js.map +0 -1
- package/dist/coolandlovely/pages/cart-owner/StaffManagementPage.js +0 -831
- package/dist/coolandlovely/pages/cart-owner/StaffManagementPage.js.map +0 -1
- package/dist/coolandlovely/pages/common/HelpSupportPage.js +0 -1325
- package/dist/coolandlovely/pages/common/HelpSupportPage.js.map +0 -1
- package/dist/coolandlovely/pages/common/NotificationCenterPage.js +0 -671
- package/dist/coolandlovely/pages/common/NotificationCenterPage.js.map +0 -1
- package/dist/coolandlovely/pages/common/SettingsPage.js +0 -973
- package/dist/coolandlovely/pages/common/SettingsPage.js.map +0 -1
- package/dist/coolandlovely/pages/customer/BookingDetailsPage.js +0 -630
- package/dist/coolandlovely/pages/customer/BookingDetailsPage.js.map +0 -1
- package/dist/coolandlovely/pages/customer/CartDetailPage.js +0 -623
- package/dist/coolandlovely/pages/customer/CartDetailPage.js.map +0 -1
- package/dist/coolandlovely/pages/customer/CartDiscoveryPage.js +0 -558
- package/dist/coolandlovely/pages/customer/CartDiscoveryPage.js.map +0 -1
- package/dist/coolandlovely/pages/customer/CheckoutPage.js +0 -529
- package/dist/coolandlovely/pages/customer/CheckoutPage.js.map +0 -1
- package/dist/coolandlovely/pages/customer/CustomerDashboard.js +0 -538
- package/dist/coolandlovely/pages/customer/CustomerDashboard.js.map +0 -1
- package/dist/coolandlovely/pages/customer/CustomerProfilePage.js +0 -658
- package/dist/coolandlovely/pages/customer/CustomerProfilePage.js.map +0 -1
- package/dist/coolandlovely/pages/customer/DirectServiceBookingPage.js +0 -632
- package/dist/coolandlovely/pages/customer/DirectServiceBookingPage.js.map +0 -1
- package/dist/coolandlovely/pages/customer/FavoritesPage.js +0 -487
- package/dist/coolandlovely/pages/customer/FavoritesPage.js.map +0 -1
- package/dist/coolandlovely/pages/customer/OrderHistoryPage.js +0 -447
- package/dist/coolandlovely/pages/customer/OrderHistoryPage.js.map +0 -1
- package/dist/coolandlovely/pages/customer/OrderTrackingPage.js +0 -425
- package/dist/coolandlovely/pages/customer/OrderTrackingPage.js.map +0 -1
- package/dist/coolandlovely/pages/customer/PaymentMethodsPage.js +0 -494
- package/dist/coolandlovely/pages/customer/PaymentMethodsPage.js.map +0 -1
- package/dist/coolandlovely/pages/customer/ReviewsPage.js +0 -616
- package/dist/coolandlovely/pages/customer/ReviewsPage.js.map +0 -1
- package/dist/coolandlovely/pages/customer/SavedAddressesPage.js +0 -449
- package/dist/coolandlovely/pages/customer/SavedAddressesPage.js.map +0 -1
- package/dist/coolandlovely/pages/investor/InvestmentDetailsPage.js +0 -887
- package/dist/coolandlovely/pages/investor/InvestmentDetailsPage.js.map +0 -1
- package/dist/coolandlovely/pages/investor/InvestmentOpportunitiesPage.js +0 -945
- package/dist/coolandlovely/pages/investor/InvestmentOpportunitiesPage.js.map +0 -1
- package/dist/coolandlovely/pages/investor/InvestorAnalyticsPage.js +0 -687
- package/dist/coolandlovely/pages/investor/InvestorAnalyticsPage.js.map +0 -1
- package/dist/coolandlovely/pages/investor/InvestorDashboard.js +0 -455
- package/dist/coolandlovely/pages/investor/InvestorDashboard.js.map +0 -1
- package/dist/coolandlovely/pages/investor/InvestorInvestmentsPage.js +0 -405
- package/dist/coolandlovely/pages/investor/InvestorInvestmentsPage.js.map +0 -1
- package/dist/coolandlovely/pages/investor/InvestorPortfolioPage.js +0 -602
- package/dist/coolandlovely/pages/investor/InvestorPortfolioPage.js.map +0 -1
- package/dist/coolandlovely/pages/investor/InvestorProfilePage.js +0 -1070
- package/dist/coolandlovely/pages/investor/InvestorProfilePage.js.map +0 -1
- package/dist/coolandlovely/pages/worker/TaskDetailsPage.js +0 -533
- package/dist/coolandlovely/pages/worker/TaskDetailsPage.js.map +0 -1
- package/dist/coolandlovely/pages/worker/WorkerDashboard.js +0 -671
- package/dist/coolandlovely/pages/worker/WorkerDashboard.js.map +0 -1
- package/dist/coolandlovely/pages/worker/WorkerOrdersPage.js +0 -680
- package/dist/coolandlovely/pages/worker/WorkerOrdersPage.js.map +0 -1
- package/dist/coolandlovely/pages/worker/WorkerProfilePage.js +0 -692
- package/dist/coolandlovely/pages/worker/WorkerProfilePage.js.map +0 -1
- package/dist/coolandlovely/pages/worker/WorkerSchedulePage.js +0 -583
- package/dist/coolandlovely/pages/worker/WorkerSchedulePage.js.map +0 -1
|
@@ -3,926 +3,332 @@ import { cn as t } from "../utils/cn.js";
|
|
|
3
3
|
import { PageLayout as n } from "../components/PageLayout.js";
|
|
4
4
|
import { MetricsCard as r } from "../components/MetricsCard.js";
|
|
5
5
|
import { StatusBadge as i } from "../components/StatusBadge.js";
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
6
|
+
import { ErrorView as a, LoadingView as o } from "../components/StateViews.js";
|
|
7
|
+
import { Thumbnail as s } from "../components/Thumbnail.js";
|
|
8
|
+
import { useBrands as c, useCollaborations as l, useLooks as u, useStyleItems as d, useWardrobeItems as f } from "../hooks/useCoolAndLovelyApi.js";
|
|
9
|
+
import "../hooks/index.js";
|
|
10
|
+
import { formatRelativeTime as p, titleCase as m } from "../utils/formatters.js";
|
|
11
|
+
import { useMemo as h } from "react";
|
|
12
|
+
import { ArrowRight as g, BookHeart as _, Handshake as v, Heart as y, Plus as b, Shapes as x, Shirt as S, Sparkles as C, Star as w, Store as T, UserCircle as E } from "lucide-react";
|
|
13
|
+
import { jsx as D, jsxs as O } from "react/jsx-runtime";
|
|
14
|
+
import { EmphasisPanel as k, PagePurpose as A } from "@burdenoff/fe-libs/ui";
|
|
14
15
|
//#region src/coolandlovely/pages/HomePage.tsx
|
|
15
|
-
var
|
|
16
|
-
customer: [
|
|
17
|
-
{
|
|
18
|
-
label: "Discover Services",
|
|
19
|
-
description: "Browse carts near you",
|
|
20
|
-
icon: /* @__PURE__ */ q(N, { className: "h-5 w-5" }),
|
|
21
|
-
path: "/customer/carts",
|
|
22
|
-
color: "bg-accent-blue-subtle/10 text-accent-blue"
|
|
23
|
-
},
|
|
24
|
-
{
|
|
25
|
-
label: "My Orders",
|
|
26
|
-
description: "Track your orders",
|
|
27
|
-
icon: /* @__PURE__ */ q(I, { className: "h-5 w-5" }),
|
|
28
|
-
path: "/customer/orders",
|
|
29
|
-
color: "bg-status-success-bg-subtle/10 text-status-success-text"
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
label: "Favorites",
|
|
33
|
-
description: "Your saved carts",
|
|
34
|
-
icon: /* @__PURE__ */ q(T, { className: "h-5 w-5" }),
|
|
35
|
-
path: "/customer/favorites",
|
|
36
|
-
color: "bg-accent-pink-subtle/10 text-accent-pink"
|
|
37
|
-
},
|
|
38
|
-
{
|
|
39
|
-
label: "Settings",
|
|
40
|
-
description: "Manage preferences",
|
|
41
|
-
icon: /* @__PURE__ */ q(P, { className: "h-5 w-5" }),
|
|
42
|
-
path: "/settings",
|
|
43
|
-
color: "bg-bg-sunken text-text-secondary"
|
|
44
|
-
}
|
|
45
|
-
],
|
|
46
|
-
cart_owner: [
|
|
47
|
-
{
|
|
48
|
-
label: "My Cart",
|
|
49
|
-
description: "Manage your cart",
|
|
50
|
-
icon: /* @__PURE__ */ q(B, { className: "h-5 w-5" }),
|
|
51
|
-
path: "/owner/dashboard",
|
|
52
|
-
color: "bg-accent-purple-subtle/10 text-accent-purple"
|
|
53
|
-
},
|
|
54
|
-
{
|
|
55
|
-
label: "Orders",
|
|
56
|
-
description: "Incoming orders",
|
|
57
|
-
icon: /* @__PURE__ */ q(I, { className: "h-5 w-5" }),
|
|
58
|
-
path: "/owner/orders",
|
|
59
|
-
color: "bg-accent-blue-subtle/10 text-accent-blue"
|
|
60
|
-
},
|
|
61
|
-
{
|
|
62
|
-
label: "Analytics",
|
|
63
|
-
description: "Revenue & insights",
|
|
64
|
-
icon: /* @__PURE__ */ q(_, { className: "h-5 w-5" }),
|
|
65
|
-
path: "/owner/analytics",
|
|
66
|
-
color: "bg-status-success-bg-subtle/10 text-status-success-text"
|
|
67
|
-
},
|
|
68
|
-
{
|
|
69
|
-
label: "Staff",
|
|
70
|
-
description: "Manage workers",
|
|
71
|
-
icon: /* @__PURE__ */ q(U, { className: "h-5 w-5" }),
|
|
72
|
-
path: "/owner/staff",
|
|
73
|
-
color: "bg-accent-orange-subtle/10 text-accent-orange"
|
|
74
|
-
}
|
|
75
|
-
],
|
|
76
|
-
worker: [
|
|
77
|
-
{
|
|
78
|
-
label: "My Tasks",
|
|
79
|
-
description: "View assigned tasks",
|
|
80
|
-
icon: /* @__PURE__ */ q(b, { className: "h-5 w-5" }),
|
|
81
|
-
path: "/worker/dashboard",
|
|
82
|
-
color: "bg-accent-orange-subtle/10 text-accent-orange"
|
|
83
|
-
},
|
|
84
|
-
{
|
|
85
|
-
label: "Schedule",
|
|
86
|
-
description: "View shifts",
|
|
87
|
-
icon: /* @__PURE__ */ q(x, { className: "h-5 w-5" }),
|
|
88
|
-
path: "/worker/schedule",
|
|
89
|
-
color: "bg-accent-blue-subtle/10 text-accent-blue"
|
|
90
|
-
},
|
|
91
|
-
{
|
|
92
|
-
label: "Earnings",
|
|
93
|
-
description: "Track pay",
|
|
94
|
-
icon: /* @__PURE__ */ q(W, { className: "h-5 w-5" }),
|
|
95
|
-
path: "/worker/earnings",
|
|
96
|
-
color: "bg-status-success-bg-subtle/10 text-status-success-text"
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
label: "Performance",
|
|
100
|
-
description: "Ratings & stats",
|
|
101
|
-
icon: /* @__PURE__ */ q(z, { className: "h-5 w-5" }),
|
|
102
|
-
path: "/worker/performance",
|
|
103
|
-
color: "bg-status-warning-bg-subtle/10 text-status-warning-text"
|
|
104
|
-
}
|
|
105
|
-
],
|
|
106
|
-
investor: [
|
|
107
|
-
{
|
|
108
|
-
label: "Portfolio",
|
|
109
|
-
description: "Your investments",
|
|
110
|
-
icon: /* @__PURE__ */ q(V, { className: "h-5 w-5" }),
|
|
111
|
-
path: "/investor/dashboard",
|
|
112
|
-
color: "bg-status-success-bg-subtle/10 text-status-success-text"
|
|
113
|
-
},
|
|
114
|
-
{
|
|
115
|
-
label: "Opportunities",
|
|
116
|
-
description: "New investments",
|
|
117
|
-
icon: /* @__PURE__ */ q(w, { className: "h-5 w-5" }),
|
|
118
|
-
path: "/investor/opportunities",
|
|
119
|
-
color: "bg-accent-blue-subtle/10 text-accent-blue"
|
|
120
|
-
},
|
|
121
|
-
{
|
|
122
|
-
label: "Returns",
|
|
123
|
-
description: "Earnings history",
|
|
124
|
-
icon: /* @__PURE__ */ q(D, { className: "h-5 w-5" }),
|
|
125
|
-
path: "/investor/returns",
|
|
126
|
-
color: "bg-status-success-bg-subtle/10 text-status-success-text"
|
|
127
|
-
},
|
|
128
|
-
{
|
|
129
|
-
label: "Reports",
|
|
130
|
-
description: "Performance reports",
|
|
131
|
-
icon: /* @__PURE__ */ q(S, { className: "h-5 w-5" }),
|
|
132
|
-
path: "/investor/reports",
|
|
133
|
-
color: "bg-accent-purple-subtle/10 text-accent-purple"
|
|
134
|
-
}
|
|
135
|
-
],
|
|
136
|
-
admin: [
|
|
137
|
-
{
|
|
138
|
-
label: "Dashboard",
|
|
139
|
-
description: "Platform overview",
|
|
140
|
-
icon: /* @__PURE__ */ q(O, { className: "h-5 w-5" }),
|
|
141
|
-
path: "/admin/dashboard",
|
|
142
|
-
color: "bg-status-error-bg-subtle/10 text-status-error-text"
|
|
143
|
-
},
|
|
144
|
-
{
|
|
145
|
-
label: "Users",
|
|
146
|
-
description: "Manage accounts",
|
|
147
|
-
icon: /* @__PURE__ */ q(U, { className: "h-5 w-5" }),
|
|
148
|
-
path: "/admin/users",
|
|
149
|
-
color: "bg-accent-blue-subtle/10 text-accent-blue"
|
|
150
|
-
},
|
|
151
|
-
{
|
|
152
|
-
label: "Carts",
|
|
153
|
-
description: "Approve & manage",
|
|
154
|
-
icon: /* @__PURE__ */ q(B, { className: "h-5 w-5" }),
|
|
155
|
-
path: "/admin/carts",
|
|
156
|
-
color: "bg-accent-purple-subtle/10 text-accent-purple"
|
|
157
|
-
},
|
|
158
|
-
{
|
|
159
|
-
label: "Analytics",
|
|
160
|
-
description: "Revenue reports",
|
|
161
|
-
icon: /* @__PURE__ */ q(_, { className: "h-5 w-5" }),
|
|
162
|
-
path: "/admin/analytics",
|
|
163
|
-
color: "bg-status-success-bg-subtle/10 text-status-success-text"
|
|
164
|
-
}
|
|
165
|
-
]
|
|
166
|
-
};
|
|
167
|
-
function te(e, t, n) {
|
|
168
|
-
switch (e) {
|
|
169
|
-
case "customer": return [
|
|
170
|
-
{
|
|
171
|
-
icon: /* @__PURE__ */ q(I, { className: "h-5 w-5" }),
|
|
172
|
-
value: t.length.toString(),
|
|
173
|
-
label: "Total Orders",
|
|
174
|
-
trend: "up",
|
|
175
|
-
trendValue: "+2 this week"
|
|
176
|
-
},
|
|
177
|
-
{
|
|
178
|
-
icon: /* @__PURE__ */ q(B, { className: "h-5 w-5" }),
|
|
179
|
-
value: (n?.activeProviders ?? 0).toString(),
|
|
180
|
-
label: "Nearby Providers",
|
|
181
|
-
trend: "up",
|
|
182
|
-
trendValue: "+3"
|
|
183
|
-
},
|
|
184
|
-
{
|
|
185
|
-
icon: /* @__PURE__ */ q(z, { className: "h-5 w-5" }),
|
|
186
|
-
value: (n?.avgRating ?? 0).toFixed(1),
|
|
187
|
-
label: "Avg. Rating",
|
|
188
|
-
trend: "up",
|
|
189
|
-
trendValue: "+0.1"
|
|
190
|
-
},
|
|
191
|
-
{
|
|
192
|
-
icon: /* @__PURE__ */ q(D, { className: "h-5 w-5" }),
|
|
193
|
-
value: s(t.reduce((e, t) => e + t.total, 0), { minimumFractionDigits: 0 }),
|
|
194
|
-
label: "Total Spent",
|
|
195
|
-
trend: "neutral",
|
|
196
|
-
trendValue: ""
|
|
197
|
-
}
|
|
198
|
-
];
|
|
199
|
-
case "cart_owner": return [
|
|
200
|
-
{
|
|
201
|
-
icon: /* @__PURE__ */ q(I, { className: "h-5 w-5" }),
|
|
202
|
-
value: "48",
|
|
203
|
-
label: "Orders Today",
|
|
204
|
-
trend: "up",
|
|
205
|
-
trendValue: "+12%"
|
|
206
|
-
},
|
|
207
|
-
{
|
|
208
|
-
icon: /* @__PURE__ */ q(D, { className: "h-5 w-5" }),
|
|
209
|
-
value: s(12850, { minimumFractionDigits: 0 }),
|
|
210
|
-
label: "Today's Revenue",
|
|
211
|
-
trend: "up",
|
|
212
|
-
trendValue: "+8%"
|
|
213
|
-
},
|
|
214
|
-
{
|
|
215
|
-
icon: /* @__PURE__ */ q(z, { className: "h-5 w-5" }),
|
|
216
|
-
value: "4.6",
|
|
217
|
-
label: "Cart Rating",
|
|
218
|
-
trend: "up",
|
|
219
|
-
trendValue: "+0.2"
|
|
220
|
-
},
|
|
221
|
-
{
|
|
222
|
-
icon: /* @__PURE__ */ q(U, { className: "h-5 w-5" }),
|
|
223
|
-
value: "5",
|
|
224
|
-
label: "Active Staff",
|
|
225
|
-
trend: "neutral",
|
|
226
|
-
trendValue: ""
|
|
227
|
-
}
|
|
228
|
-
];
|
|
229
|
-
case "worker": return [
|
|
230
|
-
{
|
|
231
|
-
icon: /* @__PURE__ */ q(b, { className: "h-5 w-5" }),
|
|
232
|
-
value: "5",
|
|
233
|
-
label: "Tasks Today",
|
|
234
|
-
trend: "up",
|
|
235
|
-
trendValue: "+2"
|
|
236
|
-
},
|
|
237
|
-
{
|
|
238
|
-
icon: /* @__PURE__ */ q(D, { className: "h-5 w-5" }),
|
|
239
|
-
value: s(425, { minimumFractionDigits: 0 }),
|
|
240
|
-
label: "Today's Earnings",
|
|
241
|
-
trend: "up",
|
|
242
|
-
trendValue: "+15%"
|
|
243
|
-
},
|
|
244
|
-
{
|
|
245
|
-
icon: /* @__PURE__ */ q(z, { className: "h-5 w-5" }),
|
|
246
|
-
value: "4.7",
|
|
247
|
-
label: "Rating",
|
|
248
|
-
trend: "up",
|
|
249
|
-
trendValue: "+0.1"
|
|
250
|
-
},
|
|
251
|
-
{
|
|
252
|
-
icon: /* @__PURE__ */ q(v, { className: "h-5 w-5" }),
|
|
253
|
-
value: "96.8%",
|
|
254
|
-
label: "Completion Rate",
|
|
255
|
-
trend: "up",
|
|
256
|
-
trendValue: "+0.5%"
|
|
257
|
-
}
|
|
258
|
-
];
|
|
259
|
-
case "investor": return [
|
|
260
|
-
{
|
|
261
|
-
icon: /* @__PURE__ */ q(V, { className: "h-5 w-5" }),
|
|
262
|
-
value: "3",
|
|
263
|
-
label: "Active Investments",
|
|
264
|
-
trend: "up",
|
|
265
|
-
trendValue: "+1"
|
|
266
|
-
},
|
|
267
|
-
{
|
|
268
|
-
icon: /* @__PURE__ */ q(D, { className: "h-5 w-5" }),
|
|
269
|
-
value: s(45e4, { minimumFractionDigits: 0 }),
|
|
270
|
-
label: "Total Invested",
|
|
271
|
-
trend: "up",
|
|
272
|
-
trendValue: ""
|
|
273
|
-
},
|
|
274
|
-
{
|
|
275
|
-
icon: /* @__PURE__ */ q(w, { className: "h-5 w-5" }),
|
|
276
|
-
value: "16.5%",
|
|
277
|
-
label: "Avg. Returns",
|
|
278
|
-
trend: "up",
|
|
279
|
-
trendValue: "+2.1%"
|
|
280
|
-
},
|
|
281
|
-
{
|
|
282
|
-
icon: /* @__PURE__ */ q(_, { className: "h-5 w-5" }),
|
|
283
|
-
value: s(74250, { minimumFractionDigits: 0 }),
|
|
284
|
-
label: "Total Returns",
|
|
285
|
-
trend: "up",
|
|
286
|
-
trendValue: "+8.5%"
|
|
287
|
-
}
|
|
288
|
-
];
|
|
289
|
-
default: return [
|
|
290
|
-
{
|
|
291
|
-
icon: /* @__PURE__ */ q(U, { className: "h-5 w-5" }),
|
|
292
|
-
value: (n?.activeCustomers ?? 0).toLocaleString("en-IN"),
|
|
293
|
-
label: "Active Customers",
|
|
294
|
-
trend: "up",
|
|
295
|
-
trendValue: "+50"
|
|
296
|
-
},
|
|
297
|
-
{
|
|
298
|
-
icon: /* @__PURE__ */ q(B, { className: "h-5 w-5" }),
|
|
299
|
-
value: (n?.activeProviders ?? 0).toString(),
|
|
300
|
-
label: "Service Providers",
|
|
301
|
-
trend: "up",
|
|
302
|
-
trendValue: "+3"
|
|
303
|
-
},
|
|
304
|
-
{
|
|
305
|
-
icon: /* @__PURE__ */ q(I, { className: "h-5 w-5" }),
|
|
306
|
-
value: (n?.totalOrders ?? 0).toLocaleString("en-IN"),
|
|
307
|
-
label: "Total Orders",
|
|
308
|
-
trend: "up",
|
|
309
|
-
trendValue: "+12%"
|
|
310
|
-
},
|
|
311
|
-
{
|
|
312
|
-
icon: /* @__PURE__ */ q(D, { className: "h-5 w-5" }),
|
|
313
|
-
value: s(n?.totalRevenue ?? 0, { minimumFractionDigits: 0 }),
|
|
314
|
-
label: "Total Revenue",
|
|
315
|
-
trend: "up",
|
|
316
|
-
trendValue: "+8.5%"
|
|
317
|
-
}
|
|
318
|
-
];
|
|
319
|
-
}
|
|
320
|
-
}
|
|
321
|
-
var ne = [
|
|
16
|
+
var j = [
|
|
322
17
|
{
|
|
323
|
-
label: "
|
|
324
|
-
|
|
325
|
-
|
|
18
|
+
label: "New Brand",
|
|
19
|
+
description: "Launch a storefront",
|
|
20
|
+
icon: /* @__PURE__ */ D(T, { className: "h-5 w-5" }),
|
|
21
|
+
path: "/brands/new",
|
|
22
|
+
color: "bg-accent-purple-subtle text-text-primary"
|
|
326
23
|
},
|
|
327
24
|
{
|
|
328
|
-
label: "
|
|
329
|
-
|
|
330
|
-
|
|
25
|
+
label: "Add Style Item",
|
|
26
|
+
description: "List a piece",
|
|
27
|
+
icon: /* @__PURE__ */ D(S, { className: "h-5 w-5" }),
|
|
28
|
+
path: "/items/new",
|
|
29
|
+
color: "bg-[var(--color-accent-soft)] text-text-primary"
|
|
331
30
|
},
|
|
332
31
|
{
|
|
333
|
-
label: "
|
|
334
|
-
|
|
335
|
-
|
|
32
|
+
label: "Publish a Look",
|
|
33
|
+
description: "Shop-the-look outfit",
|
|
34
|
+
icon: /* @__PURE__ */ D(C, { className: "h-5 w-5" }),
|
|
35
|
+
path: "/looks/new",
|
|
36
|
+
color: "bg-status-success-bg-subtle text-status-success-text"
|
|
336
37
|
},
|
|
337
38
|
{
|
|
338
|
-
label: "
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
label: "Clothing & Fashion",
|
|
344
|
-
icon: /* @__PURE__ */ q(F, { className: "h-6 w-6" }),
|
|
345
|
-
color: "bg-accent-purple-subtle/10 text-accent-purple"
|
|
346
|
-
},
|
|
347
|
-
{
|
|
348
|
-
label: "Health & Wellness",
|
|
349
|
-
icon: /* @__PURE__ */ q(T, { className: "h-6 w-6" }),
|
|
350
|
-
color: "bg-status-error-bg-subtle/10 text-status-error-text"
|
|
351
|
-
},
|
|
352
|
-
{
|
|
353
|
-
label: "Education & Skills",
|
|
354
|
-
icon: /* @__PURE__ */ q(C, { className: "h-6 w-6" }),
|
|
355
|
-
color: "bg-status-warning-bg-subtle/10 text-status-warning-text"
|
|
356
|
-
},
|
|
357
|
-
{
|
|
358
|
-
label: "Retail & Merchandise",
|
|
359
|
-
icon: /* @__PURE__ */ q(j, { className: "h-6 w-6" }),
|
|
360
|
-
color: "bg-accent-indigo-subtle/10 text-accent-indigo"
|
|
361
|
-
},
|
|
362
|
-
{
|
|
363
|
-
label: "Grocery & Essentials",
|
|
364
|
-
icon: /* @__PURE__ */ q(L, { className: "h-6 w-6" }),
|
|
365
|
-
color: "bg-status-success-bg-subtle/10 text-status-success-text"
|
|
366
|
-
}
|
|
367
|
-
], re = [
|
|
368
|
-
{
|
|
369
|
-
step: 1,
|
|
370
|
-
title: "Browse Services",
|
|
371
|
-
description: "Discover local service providers and carts near you.",
|
|
372
|
-
icon: /* @__PURE__ */ q(N, { className: "h-6 w-6" })
|
|
373
|
-
},
|
|
374
|
-
{
|
|
375
|
-
step: 2,
|
|
376
|
-
title: "Place an Order",
|
|
377
|
-
description: "Select items or services and place your order seamlessly.",
|
|
378
|
-
icon: /* @__PURE__ */ q(I, { className: "h-6 w-6" })
|
|
379
|
-
},
|
|
380
|
-
{
|
|
381
|
-
step: 3,
|
|
382
|
-
title: "Track in Real-time",
|
|
383
|
-
description: "Get live updates on your order from confirmation to delivery.",
|
|
384
|
-
icon: /* @__PURE__ */ q(H, { className: "h-6 w-6" })
|
|
385
|
-
},
|
|
386
|
-
{
|
|
387
|
-
step: 4,
|
|
388
|
-
title: "Rate & Review",
|
|
389
|
-
description: "Share your experience and help others find great services.",
|
|
390
|
-
icon: /* @__PURE__ */ q(z, { className: "h-6 w-6" })
|
|
39
|
+
label: "My Wardrobe",
|
|
40
|
+
description: "What you own",
|
|
41
|
+
icon: /* @__PURE__ */ D(y, { className: "h-5 w-5" }),
|
|
42
|
+
path: "/wardrobe",
|
|
43
|
+
color: "bg-status-warning-bg-subtle text-status-warning-text"
|
|
391
44
|
}
|
|
392
|
-
],
|
|
45
|
+
], M = [
|
|
393
46
|
{
|
|
394
|
-
|
|
395
|
-
description: "
|
|
396
|
-
|
|
397
|
-
|
|
47
|
+
label: "Brands",
|
|
48
|
+
description: "Storefronts with a publish lifecycle",
|
|
49
|
+
icon: /* @__PURE__ */ D(T, { className: "h-6 w-6" }),
|
|
50
|
+
path: "/brands",
|
|
51
|
+
color: "bg-accent-purple-subtle text-text-primary"
|
|
398
52
|
},
|
|
399
53
|
{
|
|
400
|
-
|
|
401
|
-
description: "
|
|
402
|
-
|
|
403
|
-
|
|
54
|
+
label: "Collections",
|
|
55
|
+
description: "Seasonal drops & curated edits",
|
|
56
|
+
icon: /* @__PURE__ */ D(x, { className: "h-6 w-6" }),
|
|
57
|
+
path: "/collections",
|
|
58
|
+
color: "bg-accent-blue-subtle text-accent-blue"
|
|
404
59
|
},
|
|
405
60
|
{
|
|
406
|
-
|
|
407
|
-
description: "
|
|
408
|
-
|
|
409
|
-
|
|
61
|
+
label: "Style Items",
|
|
62
|
+
description: "The shoppable catalogue",
|
|
63
|
+
icon: /* @__PURE__ */ D(S, { className: "h-6 w-6" }),
|
|
64
|
+
path: "/items",
|
|
65
|
+
color: "bg-[var(--color-accent-soft)] text-text-primary"
|
|
410
66
|
},
|
|
411
67
|
{
|
|
412
|
-
|
|
413
|
-
description: "
|
|
414
|
-
|
|
415
|
-
|
|
68
|
+
label: "Looks",
|
|
69
|
+
description: "Published shop-the-look outfits",
|
|
70
|
+
icon: /* @__PURE__ */ D(C, { className: "h-6 w-6" }),
|
|
71
|
+
path: "/looks",
|
|
72
|
+
color: "bg-status-success-bg-subtle text-status-success-text"
|
|
416
73
|
},
|
|
417
74
|
{
|
|
418
|
-
|
|
419
|
-
description: "
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
], ae = [
|
|
424
|
-
{
|
|
425
|
-
label: "Service Providers",
|
|
426
|
-
value: "21+",
|
|
427
|
-
icon: /* @__PURE__ */ q(B, { className: "h-5 w-5" })
|
|
75
|
+
label: "Collaborations",
|
|
76
|
+
description: "Brand × creator partnerships",
|
|
77
|
+
icon: /* @__PURE__ */ D(v, { className: "h-6 w-6" }),
|
|
78
|
+
path: "/collaborations",
|
|
79
|
+
color: "bg-status-warning-bg-subtle text-status-warning-text"
|
|
428
80
|
},
|
|
429
81
|
{
|
|
430
|
-
label: "
|
|
431
|
-
|
|
432
|
-
icon: /* @__PURE__ */
|
|
82
|
+
label: "Wardrobe",
|
|
83
|
+
description: "Your digital closet & wear log",
|
|
84
|
+
icon: /* @__PURE__ */ D(y, { className: "h-6 w-6" }),
|
|
85
|
+
path: "/wardrobe",
|
|
86
|
+
color: "bg-status-error-bg-subtle text-status-error-text"
|
|
433
87
|
},
|
|
434
88
|
{
|
|
435
|
-
label: "
|
|
436
|
-
|
|
437
|
-
icon: /* @__PURE__ */
|
|
89
|
+
label: "Lookbooks",
|
|
90
|
+
description: "Themed boards of saved pieces",
|
|
91
|
+
icon: /* @__PURE__ */ D(_, { className: "h-6 w-6" }),
|
|
92
|
+
path: "/lookbooks",
|
|
93
|
+
color: "bg-accent-purple-subtle text-text-primary"
|
|
438
94
|
},
|
|
439
95
|
{
|
|
440
|
-
label: "
|
|
441
|
-
|
|
442
|
-
icon: /* @__PURE__ */
|
|
96
|
+
label: "Style Profile",
|
|
97
|
+
description: "Your taste, palette & sizing",
|
|
98
|
+
icon: /* @__PURE__ */ D(E, { className: "h-6 w-6" }),
|
|
99
|
+
path: "/profile",
|
|
100
|
+
color: "bg-accent-blue-subtle text-accent-blue"
|
|
443
101
|
}
|
|
444
102
|
];
|
|
445
|
-
function
|
|
446
|
-
let { navigateTo: _, currentUser:
|
|
447
|
-
let n =
|
|
448
|
-
return
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
}
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
className: "flex h-[60vh] items-center justify-center",
|
|
478
|
-
children: /* @__PURE__ */ q(k, { className: "h-8 w-8 animate-spin text-primary" })
|
|
479
|
-
})
|
|
480
|
-
}) : W ? /* @__PURE__ */ q(n, {
|
|
481
|
-
title: E("coolandlovely.common.error", "Error"),
|
|
482
|
-
children: /* @__PURE__ */ J("div", {
|
|
483
|
-
className: "flex h-[60vh] flex-col items-center justify-center gap-4",
|
|
484
|
-
children: [
|
|
485
|
-
/* @__PURE__ */ q(m, { className: "h-12 w-12 text-status-error-text" }),
|
|
486
|
-
/* @__PURE__ */ q("h2", {
|
|
487
|
-
className: "text-xl font-semibold",
|
|
488
|
-
children: E("coolandlovely.common.errorLoading", "Error loading data")
|
|
489
|
-
}),
|
|
490
|
-
/* @__PURE__ */ q("p", {
|
|
491
|
-
className: "text-text-secondary",
|
|
492
|
-
children: E("coolandlovely.common.tryAgain", "Please try again later.")
|
|
493
|
-
})
|
|
494
|
-
]
|
|
103
|
+
function N() {
|
|
104
|
+
let { navigateTo: _, currentUser: x } = e(), E = c(), N = d(), P = u(), F = l(), I = f(), L = x?.firstName ?? x?.name ?? "there", R = E.isLoading || N.isLoading || P.isLoading || F.isLoading || I.isLoading, z = E.isError && N.isError && P.isError && F.isError, B = h(() => {
|
|
105
|
+
let e = E.data?.items ?? [], t = N.data?.items ?? [], n = P.data?.items ?? [], r = F.data ?? [], i = I.data ?? [];
|
|
106
|
+
return {
|
|
107
|
+
totalBrands: e.length,
|
|
108
|
+
publishedBrands: e.filter((e) => e.status === "PUBLISHED").length,
|
|
109
|
+
totalStyleItems: t.length,
|
|
110
|
+
activeStyleItems: t.filter((e) => e.status === "ACTIVE").length,
|
|
111
|
+
totalLooks: n.length,
|
|
112
|
+
featuredLooks: n.filter((e) => e.isFeatured).length,
|
|
113
|
+
activeCollaborations: r.filter((e) => e.status === "ACCEPTED" || e.status === "IN_PROGRESS").length,
|
|
114
|
+
wardrobeItems: i.length
|
|
115
|
+
};
|
|
116
|
+
}, [
|
|
117
|
+
E.data,
|
|
118
|
+
N.data,
|
|
119
|
+
P.data,
|
|
120
|
+
F.data,
|
|
121
|
+
I.data
|
|
122
|
+
]), V = h(() => [...P.data?.items ?? []].slice(0, 6), [P.data]), H = h(() => [...E.data?.items ?? []].sort((e, t) => new Date(t.updatedAt).getTime() - new Date(e.updatedAt).getTime()).slice(0, 4), [E.data]);
|
|
123
|
+
if (R) return /* @__PURE__ */ D(n, {
|
|
124
|
+
title: "CoolAndLovely",
|
|
125
|
+
children: /* @__PURE__ */ D(o, { label: "Loading your style command center…" })
|
|
126
|
+
});
|
|
127
|
+
if (z) return /* @__PURE__ */ D(n, {
|
|
128
|
+
title: "CoolAndLovely",
|
|
129
|
+
children: /* @__PURE__ */ D(a, {
|
|
130
|
+
title: "Could not load CoolAndLovely",
|
|
131
|
+
message: "The fashion service did not respond. Please try again.",
|
|
132
|
+
onRetry: () => {
|
|
133
|
+
E.refetch(), N.refetch(), P.refetch(), F.refetch(), I.refetch();
|
|
134
|
+
}
|
|
495
135
|
})
|
|
496
|
-
})
|
|
136
|
+
});
|
|
137
|
+
let U = [
|
|
138
|
+
{
|
|
139
|
+
icon: /* @__PURE__ */ D(T, { className: "h-5 w-5" }),
|
|
140
|
+
value: B.totalBrands.toString(),
|
|
141
|
+
label: "Brands",
|
|
142
|
+
sub: `${B.publishedBrands} published`
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
icon: /* @__PURE__ */ D(S, { className: "h-5 w-5" }),
|
|
146
|
+
value: B.totalStyleItems.toString(),
|
|
147
|
+
label: "Style Items",
|
|
148
|
+
sub: `${B.activeStyleItems} active`
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
icon: /* @__PURE__ */ D(C, { className: "h-5 w-5" }),
|
|
152
|
+
value: B.totalLooks.toString(),
|
|
153
|
+
label: "Looks",
|
|
154
|
+
sub: `${B.featuredLooks} featured`
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
icon: /* @__PURE__ */ D(v, { className: "h-5 w-5" }),
|
|
158
|
+
value: B.activeCollaborations.toString(),
|
|
159
|
+
label: "Active Collabs",
|
|
160
|
+
sub: `${B.wardrobeItems} in wardrobe`
|
|
161
|
+
}
|
|
162
|
+
];
|
|
163
|
+
return /* @__PURE__ */ O(n, {
|
|
164
|
+
title: `Hello, ${L}`,
|
|
165
|
+
description: "Your fashion & lifestyle command center",
|
|
497
166
|
hero: !0,
|
|
498
|
-
title: /* @__PURE__ */ J(K, { children: [
|
|
499
|
-
E("coolandlovely.home.hello", "Hello"),
|
|
500
|
-
",",
|
|
501
|
-
" ",
|
|
502
|
-
/* @__PURE__ */ q(Z, { children: O }),
|
|
503
|
-
"!"
|
|
504
|
-
] }),
|
|
505
|
-
description: P[j],
|
|
506
167
|
children: [
|
|
507
|
-
/* @__PURE__ */
|
|
168
|
+
/* @__PURE__ */ D(A, {
|
|
508
169
|
className: "mb-6",
|
|
509
|
-
|
|
510
|
-
children: E("coolandlovely.home.purpose", "Your starting point on CoolAndLovely. Search nearby carts and services, jump into the actions that matter for your role, and pick up recent orders and recommendations — everything you need to get going is one tap away from here.")
|
|
170
|
+
children: "CoolAndLovely connects the three sides of style on one workspace-native model: brands launch storefronts and seasonal collections, you build a wardrobe and lookbooks, and creators publish shop-the-look outfits and run brand collaborations. Jump into any module below — all data is live from the CoolAndLovely service."
|
|
511
171
|
}),
|
|
512
|
-
|
|
513
|
-
className: "mb-6 p-6",
|
|
514
|
-
children: /* @__PURE__ */ J("div", {
|
|
515
|
-
className: "flex items-start gap-4",
|
|
516
|
-
children: [/* @__PURE__ */ q("div", {
|
|
517
|
-
className: "flex h-12 w-12 shrink-0 items-center justify-center rounded-full bg-action-primary-bg/10",
|
|
518
|
-
children: /* @__PURE__ */ q(R, { className: "h-6 w-6 text-primary" })
|
|
519
|
-
}), /* @__PURE__ */ J("div", {
|
|
520
|
-
className: "flex-1",
|
|
521
|
-
children: [
|
|
522
|
-
/* @__PURE__ */ q("h2", {
|
|
523
|
-
className: "text-lg font-semibold text-text-primary",
|
|
524
|
-
children: E("coolandlovely.home.welcomeTitle", "Welcome to CoolAndLovely!")
|
|
525
|
-
}),
|
|
526
|
-
/* @__PURE__ */ q("p", {
|
|
527
|
-
className: "mt-1 text-sm text-text-secondary",
|
|
528
|
-
children: E("coolandlovely.home.welcomeDescription", "Your local services marketplace. Start by exploring service providers near you or browse categories to find what you need.")
|
|
529
|
-
}),
|
|
530
|
-
/* @__PURE__ */ J("button", {
|
|
531
|
-
type: "button",
|
|
532
|
-
onClick: () => _("/customer/carts"),
|
|
533
|
-
className: "mt-3 inline-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",
|
|
534
|
-
children: [/* @__PURE__ */ q(N, { className: "h-4 w-4" }), E("coolandlovely.home.exploreServices", "Explore Services")]
|
|
535
|
-
})
|
|
536
|
-
]
|
|
537
|
-
})]
|
|
538
|
-
})
|
|
539
|
-
}),
|
|
540
|
-
/* @__PURE__ */ q(X, {
|
|
541
|
-
treatment: "glass",
|
|
542
|
-
className: "mb-6 p-6",
|
|
543
|
-
children: /* @__PURE__ */ J("div", {
|
|
544
|
-
className: "flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between",
|
|
545
|
-
children: [/* @__PURE__ */ J("div", { children: [
|
|
546
|
-
/* @__PURE__ */ q("div", {
|
|
547
|
-
className: "flex items-center gap-2 mb-1",
|
|
548
|
-
children: /* @__PURE__ */ J("span", {
|
|
549
|
-
className: "inline-flex items-center rounded-full bg-action-primary-bg/10 px-2.5 py-0.5 text-xs font-medium text-primary",
|
|
550
|
-
children: [/* @__PURE__ */ q(g, { className: "mr-1 h-3 w-3" }), M[j]]
|
|
551
|
-
})
|
|
552
|
-
}),
|
|
553
|
-
/* @__PURE__ */ J("h2", {
|
|
554
|
-
className: "text-xl font-bold text-text-primary",
|
|
555
|
-
children: [
|
|
556
|
-
E("coolandlovely.home.good", "Good"),
|
|
557
|
-
" ",
|
|
558
|
-
(/* @__PURE__ */ new Date()).getHours() < 12 ? E("coolandlovely.home.time.morning", "morning") : (/* @__PURE__ */ new Date()).getHours() < 17 ? E("coolandlovely.home.time.afternoon", "afternoon") : E("coolandlovely.home.time.evening", "evening"),
|
|
559
|
-
", ",
|
|
560
|
-
O
|
|
561
|
-
]
|
|
562
|
-
}),
|
|
563
|
-
/* @__PURE__ */ q("p", {
|
|
564
|
-
className: "mt-1 text-sm text-text-secondary",
|
|
565
|
-
children: P[j]
|
|
566
|
-
})
|
|
567
|
-
] }), /* @__PURE__ */ J("div", {
|
|
568
|
-
className: "relative w-full sm:w-72",
|
|
569
|
-
children: [/* @__PURE__ */ q(N, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-text-secondary" }), /* @__PURE__ */ q("input", {
|
|
570
|
-
type: "text",
|
|
571
|
-
placeholder: E("coolandlovely.home.searchPlaceholder", "Search services, carts..."),
|
|
572
|
-
value: b,
|
|
573
|
-
onChange: (e) => S(e.target.value),
|
|
574
|
-
className: "w-full rounded-lg border border-border-subtle bg-bg-surface py-2.5 pl-10 pr-3 text-sm text-text-primary placeholder:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
|
|
575
|
-
})]
|
|
576
|
-
})]
|
|
577
|
-
})
|
|
578
|
-
}),
|
|
579
|
-
/* @__PURE__ */ J("section", {
|
|
172
|
+
/* @__PURE__ */ O(k, {
|
|
580
173
|
className: "mb-8",
|
|
581
|
-
children: [/* @__PURE__ */
|
|
582
|
-
className: "text-lg font-semibold text-text-primary
|
|
583
|
-
children:
|
|
584
|
-
}), /* @__PURE__ */
|
|
174
|
+
children: [/* @__PURE__ */ D("h2", {
|
|
175
|
+
className: "mb-4 text-lg font-semibold text-text-primary",
|
|
176
|
+
children: "At a glance"
|
|
177
|
+
}), /* @__PURE__ */ D("div", {
|
|
585
178
|
className: "grid grid-cols-2 gap-4 lg:grid-cols-4",
|
|
586
|
-
children:
|
|
587
|
-
featured: t === 0,
|
|
179
|
+
children: U.map((e) => /* @__PURE__ */ D(r, {
|
|
588
180
|
icon: e.icon,
|
|
589
181
|
value: e.value,
|
|
590
182
|
label: e.label,
|
|
591
|
-
|
|
592
|
-
|
|
183
|
+
trendValue: e.sub,
|
|
184
|
+
trend: "neutral"
|
|
593
185
|
}, e.label))
|
|
594
186
|
})]
|
|
595
187
|
}),
|
|
596
|
-
/* @__PURE__ */
|
|
188
|
+
/* @__PURE__ */ O("section", {
|
|
597
189
|
className: "mb-8",
|
|
598
|
-
children: [/* @__PURE__ */
|
|
599
|
-
className: "text-lg font-semibold text-text-primary
|
|
600
|
-
children:
|
|
601
|
-
}), /* @__PURE__ */
|
|
190
|
+
children: [/* @__PURE__ */ D("h2", {
|
|
191
|
+
className: "mb-4 text-lg font-semibold text-text-primary",
|
|
192
|
+
children: "Quick actions"
|
|
193
|
+
}), /* @__PURE__ */ D("div", {
|
|
602
194
|
className: "grid grid-cols-2 gap-4 lg:grid-cols-4",
|
|
603
|
-
children:
|
|
195
|
+
children: j.map((e) => /* @__PURE__ */ O("button", {
|
|
604
196
|
type: "button",
|
|
605
197
|
onClick: () => _(e.path),
|
|
606
|
-
className: t("flex items-start gap-3 rounded-lg border border-border-seam bg-bg-surface p-4 text-left transition-all
|
|
198
|
+
className: t("flex items-start gap-3 rounded-lg border border-border-seam bg-bg-surface p-4 text-left shadow-sm transition-all", "hover:border-accent-foreground/20 hover:shadow-md"),
|
|
607
199
|
children: [
|
|
608
|
-
/* @__PURE__ */
|
|
200
|
+
/* @__PURE__ */ D("div", {
|
|
609
201
|
className: t("flex h-10 w-10 shrink-0 items-center justify-center rounded-lg", e.color),
|
|
610
202
|
children: e.icon
|
|
611
203
|
}),
|
|
612
|
-
/* @__PURE__ */
|
|
204
|
+
/* @__PURE__ */ O("div", {
|
|
613
205
|
className: "min-w-0 flex-1",
|
|
614
|
-
children: [/* @__PURE__ */
|
|
206
|
+
children: [/* @__PURE__ */ D("p", {
|
|
615
207
|
className: "text-sm font-semibold text-text-primary",
|
|
616
208
|
children: e.label
|
|
617
|
-
}), /* @__PURE__ */
|
|
209
|
+
}), /* @__PURE__ */ D("p", {
|
|
618
210
|
className: "mt-0.5 text-xs text-text-secondary",
|
|
619
211
|
children: e.description
|
|
620
212
|
})]
|
|
621
213
|
}),
|
|
622
|
-
/* @__PURE__ */
|
|
214
|
+
/* @__PURE__ */ D(b, { className: "mt-1 h-4 w-4 shrink-0 text-text-secondary" })
|
|
623
215
|
]
|
|
624
216
|
}, e.label))
|
|
625
217
|
})]
|
|
626
218
|
}),
|
|
627
|
-
/* @__PURE__ */
|
|
219
|
+
/* @__PURE__ */ O("section", {
|
|
628
220
|
className: "mb-8",
|
|
629
|
-
children: [/* @__PURE__ */
|
|
630
|
-
className: "
|
|
631
|
-
children:
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
221
|
+
children: [/* @__PURE__ */ D("h2", {
|
|
222
|
+
className: "mb-4 text-lg font-semibold text-text-primary",
|
|
223
|
+
children: "Explore"
|
|
224
|
+
}), /* @__PURE__ */ D("div", {
|
|
225
|
+
className: "grid grid-cols-2 gap-4 sm:grid-cols-3 lg:grid-cols-4",
|
|
226
|
+
children: M.map((e) => /* @__PURE__ */ O("button", {
|
|
635
227
|
type: "button",
|
|
636
|
-
onClick: () => _(
|
|
637
|
-
className: "flex
|
|
638
|
-
children: [
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
type: "button",
|
|
650
|
-
onClick: () => S(""),
|
|
651
|
-
className: "rounded-lg border border-border-subtle px-4 py-2 text-sm font-medium text-text-primary hover:bg-accent transition-colors",
|
|
652
|
-
children: E("coolandlovely.home.clearSearch", "Clear Search")
|
|
653
|
-
})
|
|
654
|
-
}) : /* @__PURE__ */ q("div", {
|
|
655
|
-
className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3",
|
|
656
|
-
children: L.map((e) => /* @__PURE__ */ J("div", {
|
|
657
|
-
role: "button",
|
|
658
|
-
tabIndex: 0,
|
|
659
|
-
onClick: () => _(`/customer/cart/${e.id}`),
|
|
660
|
-
onKeyDown: (t) => {
|
|
661
|
-
(t.key === "Enter" || t.key === " ") && (t.preventDefault(), _(`/customer/cart/${e.id}`));
|
|
662
|
-
},
|
|
663
|
-
className: "rounded-lg border border-border-subtle bg-bg-surface shadow-sm overflow-hidden transition-all hover:shadow-md hover:border-accent-foreground/20 cursor-pointer focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-focus-ring)]",
|
|
664
|
-
children: [/* @__PURE__ */ J("div", {
|
|
665
|
-
className: "relative h-40 bg-bg-sunken",
|
|
666
|
-
children: [
|
|
667
|
-
/* @__PURE__ */ q("img", {
|
|
668
|
-
src: e.image,
|
|
669
|
-
alt: e.name,
|
|
670
|
-
className: "h-full w-full object-cover",
|
|
671
|
-
loading: "lazy"
|
|
672
|
-
}),
|
|
673
|
-
/* @__PURE__ */ q("div", {
|
|
674
|
-
className: "absolute top-2 right-2",
|
|
675
|
-
children: /* @__PURE__ */ q(i, { status: e.isOpen ? "open" : "closed" })
|
|
676
|
-
}),
|
|
677
|
-
e.isVerified && /* @__PURE__ */ q("div", {
|
|
678
|
-
className: "absolute top-2 left-2",
|
|
679
|
-
children: /* @__PURE__ */ J("span", {
|
|
680
|
-
className: "inline-flex items-center gap-1 rounded-full bg-accent-blue-subtle/90 px-2 py-0.5 text-xs font-medium text-white backdrop-blur-sm",
|
|
681
|
-
children: [
|
|
682
|
-
/* @__PURE__ */ q(g, { className: "h-3 w-3" }),
|
|
683
|
-
" ",
|
|
684
|
-
E("coolandlovely.home.verified", "Verified")
|
|
685
|
-
]
|
|
686
|
-
})
|
|
687
|
-
}),
|
|
688
|
-
/* @__PURE__ */ q("div", {
|
|
689
|
-
className: "absolute bottom-2 right-2",
|
|
690
|
-
children: /* @__PURE__ */ J("span", {
|
|
691
|
-
className: "inline-flex items-center gap-1 rounded-full bg-black/60 px-2 py-0.5 text-xs text-white backdrop-blur-sm",
|
|
692
|
-
children: [
|
|
693
|
-
/* @__PURE__ */ q(x, { className: "h-3 w-3" }),
|
|
694
|
-
" ",
|
|
695
|
-
e.estimatedTime,
|
|
696
|
-
" min"
|
|
697
|
-
]
|
|
698
|
-
})
|
|
699
|
-
})
|
|
700
|
-
]
|
|
701
|
-
}), /* @__PURE__ */ J("div", {
|
|
702
|
-
className: "p-4",
|
|
703
|
-
children: [
|
|
704
|
-
/* @__PURE__ */ J("div", {
|
|
705
|
-
className: "flex items-start justify-between",
|
|
706
|
-
children: [/* @__PURE__ */ J("div", {
|
|
707
|
-
className: "min-w-0 flex-1",
|
|
708
|
-
children: [/* @__PURE__ */ q("h3", {
|
|
709
|
-
className: "text-base font-semibold text-text-primary truncate",
|
|
710
|
-
children: e.name
|
|
711
|
-
}), /* @__PURE__ */ q("p", {
|
|
712
|
-
className: "mt-0.5 text-sm text-text-secondary",
|
|
713
|
-
children: e.category
|
|
714
|
-
})]
|
|
715
|
-
}), /* @__PURE__ */ J("div", {
|
|
716
|
-
className: "flex items-center gap-1 rounded bg-status-success-bg-subtle px-1.5 py-0.5 ml-2 shrink-0",
|
|
717
|
-
children: [/* @__PURE__ */ q(z, { className: "h-3 w-3 fill-white text-white" }), /* @__PURE__ */ q("span", {
|
|
718
|
-
className: "text-xs font-bold text-white",
|
|
719
|
-
children: e.rating
|
|
720
|
-
})]
|
|
721
|
-
})]
|
|
722
|
-
}),
|
|
723
|
-
/* @__PURE__ */ J("div", {
|
|
724
|
-
className: "mt-3 flex items-center gap-4 text-xs text-text-secondary",
|
|
725
|
-
children: [
|
|
726
|
-
/* @__PURE__ */ J("span", {
|
|
727
|
-
className: "flex items-center gap-1",
|
|
728
|
-
children: [
|
|
729
|
-
/* @__PURE__ */ q(A, { className: "h-3 w-3" }),
|
|
730
|
-
" ",
|
|
731
|
-
ee(e.distance)
|
|
732
|
-
]
|
|
733
|
-
}),
|
|
734
|
-
/* @__PURE__ */ J("span", {
|
|
735
|
-
className: "flex items-center gap-1",
|
|
736
|
-
children: [
|
|
737
|
-
/* @__PURE__ */ q(z, { className: "h-3 w-3" }),
|
|
738
|
-
" ",
|
|
739
|
-
e.totalRatings,
|
|
740
|
-
" ",
|
|
741
|
-
E("coolandlovely.home.reviews", "reviews")
|
|
742
|
-
]
|
|
743
|
-
}),
|
|
744
|
-
e.averageOrderValue && /* @__PURE__ */ J("span", {
|
|
745
|
-
className: "flex items-center gap-1",
|
|
746
|
-
children: [
|
|
747
|
-
/* @__PURE__ */ q(D, { className: "h-3 w-3" }),
|
|
748
|
-
" ",
|
|
749
|
-
E("coolandlovely.home.average", "Avg."),
|
|
750
|
-
" ",
|
|
751
|
-
s(e.averageOrderValue, { minimumFractionDigits: 0 })
|
|
752
|
-
]
|
|
753
|
-
})
|
|
754
|
-
]
|
|
755
|
-
}),
|
|
756
|
-
e.serviceTypes && e.serviceTypes.length > 0 && /* @__PURE__ */ q("div", {
|
|
757
|
-
className: "mt-3 flex flex-wrap gap-1.5",
|
|
758
|
-
children: e.serviceTypes.slice(0, 3).map((e) => /* @__PURE__ */ q("span", {
|
|
759
|
-
className: "inline-flex items-center rounded-full bg-bg-sunken px-2 py-0.5 text-xs text-text-secondary",
|
|
760
|
-
children: e.replace(/_/g, " ")
|
|
761
|
-
}, e))
|
|
762
|
-
})
|
|
763
|
-
]
|
|
764
|
-
})]
|
|
765
|
-
}, e.id))
|
|
228
|
+
onClick: () => _(e.path),
|
|
229
|
+
className: "flex flex-col gap-3 rounded-lg border border-border-seam bg-bg-surface p-5 text-left transition-all hover:border-accent-foreground/20 hover:shadow-md",
|
|
230
|
+
children: [/* @__PURE__ */ D("div", {
|
|
231
|
+
className: t("flex h-12 w-12 items-center justify-center rounded-full", e.color),
|
|
232
|
+
children: e.icon
|
|
233
|
+
}), /* @__PURE__ */ O("div", { children: [/* @__PURE__ */ D("p", {
|
|
234
|
+
className: "text-sm font-semibold text-text-primary",
|
|
235
|
+
children: e.label
|
|
236
|
+
}), /* @__PURE__ */ D("p", {
|
|
237
|
+
className: "mt-0.5 text-xs text-text-secondary",
|
|
238
|
+
children: e.description
|
|
239
|
+
})] })]
|
|
240
|
+
}, e.label))
|
|
766
241
|
})]
|
|
767
242
|
}),
|
|
768
|
-
|
|
243
|
+
/* @__PURE__ */ O("section", {
|
|
769
244
|
className: "mb-8",
|
|
770
|
-
children: [/* @__PURE__ */
|
|
771
|
-
className: "flex items-center justify-between
|
|
772
|
-
children: [/* @__PURE__ */
|
|
245
|
+
children: [/* @__PURE__ */ O("div", {
|
|
246
|
+
className: "mb-4 flex items-center justify-between",
|
|
247
|
+
children: [/* @__PURE__ */ D("h2", {
|
|
773
248
|
className: "text-lg font-semibold text-text-primary",
|
|
774
|
-
children:
|
|
775
|
-
}), /* @__PURE__ */
|
|
249
|
+
children: "Latest looks"
|
|
250
|
+
}), /* @__PURE__ */ O("button", {
|
|
776
251
|
type: "button",
|
|
777
|
-
onClick: () => _("/
|
|
252
|
+
onClick: () => _("/looks"),
|
|
778
253
|
className: "flex items-center gap-1 text-sm font-medium text-primary hover:underline",
|
|
779
|
-
children: [
|
|
780
|
-
E("coolandlovely.common.viewAll", "View All"),
|
|
781
|
-
" ",
|
|
782
|
-
/* @__PURE__ */ q(h, { className: "h-3.5 w-3.5" })
|
|
783
|
-
]
|
|
254
|
+
children: ["View all ", /* @__PURE__ */ D(g, { className: "h-3.5 w-3.5" })]
|
|
784
255
|
})]
|
|
785
|
-
}), /* @__PURE__ */
|
|
786
|
-
className: "rounded-lg border border-border-
|
|
787
|
-
children:
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
className: "text-sm font-medium text-text-primary truncate",
|
|
807
|
-
children: e.cartName
|
|
808
|
-
}), /* @__PURE__ */ q(i, { status: e.status })]
|
|
809
|
-
}), /* @__PURE__ */ q("p", {
|
|
810
|
-
className: "text-xs text-text-secondary mt-0.5",
|
|
811
|
-
children: e.items.map((e) => e.name).join(", ")
|
|
812
|
-
})]
|
|
813
|
-
}),
|
|
814
|
-
/* @__PURE__ */ J("div", {
|
|
815
|
-
className: "text-right shrink-0",
|
|
816
|
-
children: [/* @__PURE__ */ q("p", {
|
|
817
|
-
className: "text-sm font-semibold text-text-primary",
|
|
818
|
-
children: s(e.total, { minimumFractionDigits: 0 })
|
|
819
|
-
}), /* @__PURE__ */ q("p", {
|
|
256
|
+
}), V.length === 0 ? /* @__PURE__ */ D("p", {
|
|
257
|
+
className: "rounded-lg border border-border-seam bg-bg-surface p-6 text-sm text-text-secondary",
|
|
258
|
+
children: "No looks published yet. Be the first to publish a shop-the-look outfit."
|
|
259
|
+
}) : /* @__PURE__ */ D("div", {
|
|
260
|
+
className: "grid grid-cols-2 gap-4 sm:grid-cols-3 lg:grid-cols-6",
|
|
261
|
+
children: V.map((e) => /* @__PURE__ */ O("button", {
|
|
262
|
+
type: "button",
|
|
263
|
+
onClick: () => _(`/looks/${e.id}`),
|
|
264
|
+
className: "group overflow-hidden rounded-lg border border-border-seam bg-bg-surface text-left transition-all hover:border-accent-foreground/20 hover:shadow-md",
|
|
265
|
+
children: [/* @__PURE__ */ D(s, {
|
|
266
|
+
icon: /* @__PURE__ */ D(C, { className: "h-7 w-7" }),
|
|
267
|
+
seed: e.id,
|
|
268
|
+
className: "h-28 w-full"
|
|
269
|
+
}), /* @__PURE__ */ O("div", {
|
|
270
|
+
className: "p-3",
|
|
271
|
+
children: [/* @__PURE__ */ D("p", {
|
|
272
|
+
className: "truncate text-sm font-medium text-text-primary",
|
|
273
|
+
children: e.title
|
|
274
|
+
}), /* @__PURE__ */ O("div", {
|
|
275
|
+
className: "mt-1.5 flex items-center justify-between",
|
|
276
|
+
children: [/* @__PURE__ */ D("span", {
|
|
820
277
|
className: "text-xs text-text-secondary",
|
|
821
|
-
children:
|
|
278
|
+
children: m(e.occasion)
|
|
279
|
+
}), /* @__PURE__ */ O("span", {
|
|
280
|
+
className: "flex items-center gap-1 text-xs text-text-secondary",
|
|
281
|
+
children: [
|
|
282
|
+
/* @__PURE__ */ D(y, { className: "h-3 w-3" }),
|
|
283
|
+
" ",
|
|
284
|
+
e.likeCount
|
|
285
|
+
]
|
|
822
286
|
})]
|
|
823
|
-
})
|
|
824
|
-
]
|
|
825
|
-
}, e.id))
|
|
826
|
-
})]
|
|
827
|
-
}),
|
|
828
|
-
/* @__PURE__ */ J("section", {
|
|
829
|
-
className: "mb-8",
|
|
830
|
-
children: [/* @__PURE__ */ q("h2", {
|
|
831
|
-
className: "text-lg font-semibold text-text-primary mb-4",
|
|
832
|
-
children: E("coolandlovely.home.howItWorks", "How It Works")
|
|
833
|
-
}), /* @__PURE__ */ q("div", {
|
|
834
|
-
className: "grid grid-cols-2 gap-4 lg:grid-cols-4",
|
|
835
|
-
children: re.map((e) => /* @__PURE__ */ J("div", {
|
|
836
|
-
className: "relative rounded-lg border border-border-seam bg-bg-surface p-5 text-center bg-gloss-card shadow-pop",
|
|
837
|
-
children: [
|
|
838
|
-
/* @__PURE__ */ q("div", {
|
|
839
|
-
className: "absolute -top-3 left-1/2 -translate-x-1/2",
|
|
840
|
-
children: /* @__PURE__ */ q("span", {
|
|
841
|
-
className: "inline-flex h-6 w-6 items-center justify-center rounded-full bg-action-primary-bg text-xs font-bold text-action-primary-text",
|
|
842
|
-
children: e.step
|
|
843
|
-
})
|
|
844
|
-
}),
|
|
845
|
-
/* @__PURE__ */ q("div", {
|
|
846
|
-
className: "mt-2 flex justify-center text-text-secondary mb-3",
|
|
847
|
-
children: e.icon
|
|
848
|
-
}),
|
|
849
|
-
/* @__PURE__ */ q("h3", {
|
|
850
|
-
className: "text-sm font-semibold text-text-primary",
|
|
851
|
-
children: e.title
|
|
852
|
-
}),
|
|
853
|
-
/* @__PURE__ */ q("p", {
|
|
854
|
-
className: "mt-1 text-xs text-text-secondary",
|
|
855
|
-
children: e.description
|
|
856
|
-
})
|
|
857
|
-
]
|
|
858
|
-
}, e.step))
|
|
859
|
-
})]
|
|
860
|
-
}),
|
|
861
|
-
/* @__PURE__ */ J("section", {
|
|
862
|
-
className: "mb-8",
|
|
863
|
-
children: [/* @__PURE__ */ q("h2", {
|
|
864
|
-
className: "text-lg font-semibold text-text-primary mb-4",
|
|
865
|
-
children: E("coolandlovely.home.browseByCategory", "Browse by Category")
|
|
866
|
-
}), /* @__PURE__ */ q("div", {
|
|
867
|
-
className: "grid grid-cols-3 gap-3 sm:grid-cols-4 lg:grid-cols-5",
|
|
868
|
-
children: ne.map((e) => /* @__PURE__ */ J("button", {
|
|
869
|
-
type: "button",
|
|
870
|
-
onClick: () => _(`/customer/carts?category=${encodeURIComponent(e.label)}`),
|
|
871
|
-
className: "flex flex-col items-center gap-2 rounded-lg border border-border-seam bg-bg-surface p-4 text-center hover:shadow-sm hover:border-accent-foreground/20 transition-all bg-gloss-card shadow-pop",
|
|
872
|
-
children: [/* @__PURE__ */ q("div", {
|
|
873
|
-
className: t("flex h-12 w-12 items-center justify-center rounded-full", e.color),
|
|
874
|
-
children: e.icon
|
|
875
|
-
}), /* @__PURE__ */ q("span", {
|
|
876
|
-
className: "text-xs font-medium text-text-primary leading-tight",
|
|
877
|
-
children: e.label
|
|
287
|
+
})]
|
|
878
288
|
})]
|
|
879
|
-
}, e.
|
|
289
|
+
}, e.id))
|
|
880
290
|
})]
|
|
881
291
|
}),
|
|
882
|
-
/* @__PURE__ */
|
|
883
|
-
className: "mb-
|
|
884
|
-
children: [/* @__PURE__ */
|
|
885
|
-
className: "text-lg font-semibold text-text-primary
|
|
886
|
-
children:
|
|
887
|
-
}), /* @__PURE__ */
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
className: "flex h-10 w-10 items-center justify-center rounded-full bg-action-primary-bg/10 text-primary shrink-0",
|
|
893
|
-
children: e.icon
|
|
894
|
-
}), /* @__PURE__ */ J("div", { children: [/* @__PURE__ */ q("p", {
|
|
895
|
-
className: "text-lg font-bold text-text-primary",
|
|
896
|
-
children: e.value
|
|
897
|
-
}), /* @__PURE__ */ q("p", {
|
|
898
|
-
className: "text-xs text-text-secondary",
|
|
899
|
-
children: e.label
|
|
900
|
-
})] })]
|
|
901
|
-
}, e.label))
|
|
292
|
+
H.length > 0 && /* @__PURE__ */ O("section", { children: [/* @__PURE__ */ O("div", {
|
|
293
|
+
className: "mb-4 flex items-center justify-between",
|
|
294
|
+
children: [/* @__PURE__ */ D("h2", {
|
|
295
|
+
className: "text-lg font-semibold text-text-primary",
|
|
296
|
+
children: "Recently updated brands"
|
|
297
|
+
}), /* @__PURE__ */ O("button", {
|
|
298
|
+
type: "button",
|
|
299
|
+
onClick: () => _("/brands"),
|
|
300
|
+
className: "flex items-center gap-1 text-sm font-medium text-primary hover:underline",
|
|
301
|
+
children: ["View all ", /* @__PURE__ */ D(g, { className: "h-3.5 w-3.5" })]
|
|
902
302
|
})]
|
|
903
|
-
}),
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
children: ie.map((e) => /* @__PURE__ */ J("div", {
|
|
910
|
-
className: "flex items-center gap-3 px-4 py-3",
|
|
303
|
+
}), /* @__PURE__ */ D("div", {
|
|
304
|
+
className: "divide-y divide-border-seam rounded-lg border border-border-seam bg-bg-surface",
|
|
305
|
+
children: H.map((e) => /* @__PURE__ */ O("button", {
|
|
306
|
+
type: "button",
|
|
307
|
+
onClick: () => _(`/brands/${e.id}`),
|
|
308
|
+
className: "flex w-full items-center gap-4 px-4 py-3 text-left transition-colors hover:bg-bg-sunken/50",
|
|
911
309
|
children: [
|
|
912
|
-
/* @__PURE__ */
|
|
913
|
-
|
|
914
|
-
|
|
310
|
+
/* @__PURE__ */ D(s, {
|
|
311
|
+
icon: /* @__PURE__ */ D(T, { className: "h-5 w-5" }),
|
|
312
|
+
seed: e.id,
|
|
313
|
+
className: "h-11 w-11 shrink-0"
|
|
915
314
|
}),
|
|
916
|
-
/* @__PURE__ */
|
|
917
|
-
className: "
|
|
918
|
-
children: /* @__PURE__ */
|
|
919
|
-
className: "
|
|
920
|
-
children:
|
|
921
|
-
|
|
315
|
+
/* @__PURE__ */ O("div", {
|
|
316
|
+
className: "min-w-0 flex-1",
|
|
317
|
+
children: [/* @__PURE__ */ O("div", {
|
|
318
|
+
className: "flex items-center gap-2",
|
|
319
|
+
children: [/* @__PURE__ */ D("p", {
|
|
320
|
+
className: "truncate text-sm font-medium text-text-primary",
|
|
321
|
+
children: e.name
|
|
322
|
+
}), e.isFeatured && /* @__PURE__ */ D(w, { className: "h-3.5 w-3.5 fill-status-warning-text text-status-warning-text" })]
|
|
323
|
+
}), /* @__PURE__ */ O("p", {
|
|
324
|
+
className: "truncate text-xs text-text-secondary",
|
|
325
|
+
children: ["@", e.handle]
|
|
326
|
+
})]
|
|
922
327
|
}),
|
|
923
|
-
/* @__PURE__ */
|
|
924
|
-
|
|
925
|
-
|
|
328
|
+
/* @__PURE__ */ D(i, { status: e.status }),
|
|
329
|
+
/* @__PURE__ */ D("span", {
|
|
330
|
+
className: "hidden shrink-0 text-xs text-text-secondary sm:inline",
|
|
331
|
+
children: p(e.updatedAt)
|
|
926
332
|
})
|
|
927
333
|
]
|
|
928
334
|
}, e.id))
|
|
@@ -931,6 +337,6 @@ function oe() {
|
|
|
931
337
|
});
|
|
932
338
|
}
|
|
933
339
|
//#endregion
|
|
934
|
-
export {
|
|
340
|
+
export { N as HomePage };
|
|
935
341
|
|
|
936
342
|
//# sourceMappingURL=HomePage.js.map
|