@burdenoff/microfe-coolandlovely 2026.614.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.
Files changed (284) hide show
  1. package/README.md +12 -0
  2. package/dist/coolandlovely/CoolAndLovelyRoot.d.ts +5 -0
  3. package/dist/coolandlovely/CoolAndLovelyRoot.d.ts.map +1 -0
  4. package/dist/coolandlovely/CoolAndLovelyRoot.js +177 -0
  5. package/dist/coolandlovely/CoolAndLovelyRoot.js.map +1 -0
  6. package/dist/coolandlovely/CoolAndLovelyRoutes.d.ts +4 -0
  7. package/dist/coolandlovely/CoolAndLovelyRoutes.d.ts.map +1 -0
  8. package/dist/coolandlovely/CoolAndLovelyRoutes.js +215 -0
  9. package/dist/coolandlovely/CoolAndLovelyRoutes.js.map +1 -0
  10. package/dist/coolandlovely/components/CartCard.d.ts +18 -0
  11. package/dist/coolandlovely/components/CartCard.d.ts.map +1 -0
  12. package/dist/coolandlovely/components/EmptyState.d.ts +12 -0
  13. package/dist/coolandlovely/components/EmptyState.d.ts.map +1 -0
  14. package/dist/coolandlovely/components/EmptyState.js +28 -0
  15. package/dist/coolandlovely/components/EmptyState.js.map +1 -0
  16. package/dist/coolandlovely/components/InvestmentCard.d.ts +18 -0
  17. package/dist/coolandlovely/components/InvestmentCard.d.ts.map +1 -0
  18. package/dist/coolandlovely/components/InvestmentCard.js +96 -0
  19. package/dist/coolandlovely/components/InvestmentCard.js.map +1 -0
  20. package/dist/coolandlovely/components/MetricsCard.d.ts +14 -0
  21. package/dist/coolandlovely/components/MetricsCard.d.ts.map +1 -0
  22. package/dist/coolandlovely/components/MetricsCard.js +46 -0
  23. package/dist/coolandlovely/components/MetricsCard.js.map +1 -0
  24. package/dist/coolandlovely/components/OrderCard.d.ts +18 -0
  25. package/dist/coolandlovely/components/OrderCard.d.ts.map +1 -0
  26. package/dist/coolandlovely/components/PageLayout.d.ts +12 -0
  27. package/dist/coolandlovely/components/PageLayout.d.ts.map +1 -0
  28. package/dist/coolandlovely/components/PageLayout.js +26 -0
  29. package/dist/coolandlovely/components/PageLayout.js.map +1 -0
  30. package/dist/coolandlovely/components/RatingDisplay.d.ts +12 -0
  31. package/dist/coolandlovely/components/RatingDisplay.d.ts.map +1 -0
  32. package/dist/coolandlovely/components/RatingDisplay.js +35 -0
  33. package/dist/coolandlovely/components/RatingDisplay.js.map +1 -0
  34. package/dist/coolandlovely/components/StatusBadge.d.ts +9 -0
  35. package/dist/coolandlovely/components/StatusBadge.d.ts.map +1 -0
  36. package/dist/coolandlovely/components/StatusBadge.js +45 -0
  37. package/dist/coolandlovely/components/StatusBadge.js.map +1 -0
  38. package/dist/coolandlovely/components/index.d.ts +13 -0
  39. package/dist/coolandlovely/components/index.d.ts.map +1 -0
  40. package/dist/coolandlovely/context/CoolAndLovelyContext.d.ts +16 -0
  41. package/dist/coolandlovely/context/CoolAndLovelyContext.d.ts.map +1 -0
  42. package/dist/coolandlovely/context/CoolAndLovelyContext.js +93 -0
  43. package/dist/coolandlovely/context/CoolAndLovelyContext.js.map +1 -0
  44. package/dist/coolandlovely/context/index.d.ts +6 -0
  45. package/dist/coolandlovely/context/index.d.ts.map +1 -0
  46. package/dist/coolandlovely/context/index.js +1 -0
  47. package/dist/coolandlovely/hooks/index.d.ts +2 -0
  48. package/dist/coolandlovely/hooks/index.d.ts.map +1 -0
  49. package/dist/coolandlovely/hooks/useCoolAndLovelyApi.d.ts +44 -0
  50. package/dist/coolandlovely/hooks/useCoolAndLovelyApi.d.ts.map +1 -0
  51. package/dist/coolandlovely/hooks/useCoolAndLovelyApi.js +223 -0
  52. package/dist/coolandlovely/hooks/useCoolAndLovelyApi.js.map +1 -0
  53. package/dist/coolandlovely/index.d.ts +11 -0
  54. package/dist/coolandlovely/index.d.ts.map +1 -0
  55. package/dist/coolandlovely/index.js +7 -0
  56. package/dist/coolandlovely/mocks/data.d.ts +61 -0
  57. package/dist/coolandlovely/mocks/data.d.ts.map +1 -0
  58. package/dist/coolandlovely/mocks/data.js +1517 -0
  59. package/dist/coolandlovely/mocks/data.js.map +1 -0
  60. package/dist/coolandlovely/mocks/index.d.ts +7 -0
  61. package/dist/coolandlovely/mocks/index.d.ts.map +1 -0
  62. package/dist/coolandlovely/mocks/users.d.ts +18 -0
  63. package/dist/coolandlovely/mocks/users.d.ts.map +1 -0
  64. package/dist/coolandlovely/mocks/users.js +34 -0
  65. package/dist/coolandlovely/mocks/users.js.map +1 -0
  66. package/dist/coolandlovely/pages/HomePage.d.ts +10 -0
  67. package/dist/coolandlovely/pages/HomePage.d.ts.map +1 -0
  68. package/dist/coolandlovely/pages/HomePage.js +921 -0
  69. package/dist/coolandlovely/pages/HomePage.js.map +1 -0
  70. package/dist/coolandlovely/pages/admin/AdminAnalyticsPage.d.ts +11 -0
  71. package/dist/coolandlovely/pages/admin/AdminAnalyticsPage.d.ts.map +1 -0
  72. package/dist/coolandlovely/pages/admin/AdminAnalyticsPage.js +645 -0
  73. package/dist/coolandlovely/pages/admin/AdminAnalyticsPage.js.map +1 -0
  74. package/dist/coolandlovely/pages/admin/AdminDashboard.d.ts +10 -0
  75. package/dist/coolandlovely/pages/admin/AdminDashboard.d.ts.map +1 -0
  76. package/dist/coolandlovely/pages/admin/AdminDashboard.js +639 -0
  77. package/dist/coolandlovely/pages/admin/AdminDashboard.js.map +1 -0
  78. package/dist/coolandlovely/pages/admin/AdminFinancialPage.d.ts +11 -0
  79. package/dist/coolandlovely/pages/admin/AdminFinancialPage.d.ts.map +1 -0
  80. package/dist/coolandlovely/pages/admin/AdminFinancialPage.js +421 -0
  81. package/dist/coolandlovely/pages/admin/AdminFinancialPage.js.map +1 -0
  82. package/dist/coolandlovely/pages/admin/AdminOrdersPage.d.ts +10 -0
  83. package/dist/coolandlovely/pages/admin/AdminOrdersPage.d.ts.map +1 -0
  84. package/dist/coolandlovely/pages/admin/AdminOrdersPage.js +660 -0
  85. package/dist/coolandlovely/pages/admin/AdminOrdersPage.js.map +1 -0
  86. package/dist/coolandlovely/pages/admin/AdminProfilePage.d.ts +10 -0
  87. package/dist/coolandlovely/pages/admin/AdminProfilePage.d.ts.map +1 -0
  88. package/dist/coolandlovely/pages/admin/AdminProfilePage.js +259 -0
  89. package/dist/coolandlovely/pages/admin/AdminProfilePage.js.map +1 -0
  90. package/dist/coolandlovely/pages/admin/AdminSettingsPage.d.ts +10 -0
  91. package/dist/coolandlovely/pages/admin/AdminSettingsPage.d.ts.map +1 -0
  92. package/dist/coolandlovely/pages/admin/AdminSettingsPage.js +649 -0
  93. package/dist/coolandlovely/pages/admin/AdminSettingsPage.js.map +1 -0
  94. package/dist/coolandlovely/pages/admin/CartManagementPage.d.ts +10 -0
  95. package/dist/coolandlovely/pages/admin/CartManagementPage.d.ts.map +1 -0
  96. package/dist/coolandlovely/pages/admin/CartManagementPage.js +869 -0
  97. package/dist/coolandlovely/pages/admin/CartManagementPage.js.map +1 -0
  98. package/dist/coolandlovely/pages/admin/UserManagementPage.d.ts +10 -0
  99. package/dist/coolandlovely/pages/admin/UserManagementPage.d.ts.map +1 -0
  100. package/dist/coolandlovely/pages/admin/UserManagementPage.js +893 -0
  101. package/dist/coolandlovely/pages/admin/UserManagementPage.js.map +1 -0
  102. package/dist/coolandlovely/pages/cart-owner/AnalyticsDashboard.d.ts +12 -0
  103. package/dist/coolandlovely/pages/cart-owner/AnalyticsDashboard.d.ts.map +1 -0
  104. package/dist/coolandlovely/pages/cart-owner/AnalyticsDashboard.js +834 -0
  105. package/dist/coolandlovely/pages/cart-owner/AnalyticsDashboard.js.map +1 -0
  106. package/dist/coolandlovely/pages/cart-owner/BusinessSettingsPage.d.ts +11 -0
  107. package/dist/coolandlovely/pages/cart-owner/BusinessSettingsPage.d.ts.map +1 -0
  108. package/dist/coolandlovely/pages/cart-owner/BusinessSettingsPage.js +700 -0
  109. package/dist/coolandlovely/pages/cart-owner/BusinessSettingsPage.js.map +1 -0
  110. package/dist/coolandlovely/pages/cart-owner/CartOwnerDashboard.d.ts +11 -0
  111. package/dist/coolandlovely/pages/cart-owner/CartOwnerDashboard.d.ts.map +1 -0
  112. package/dist/coolandlovely/pages/cart-owner/CartOwnerDashboard.js +760 -0
  113. package/dist/coolandlovely/pages/cart-owner/CartOwnerDashboard.js.map +1 -0
  114. package/dist/coolandlovely/pages/cart-owner/CartOwnerProfilePage.d.ts +12 -0
  115. package/dist/coolandlovely/pages/cart-owner/CartOwnerProfilePage.d.ts.map +1 -0
  116. package/dist/coolandlovely/pages/cart-owner/CartOwnerProfilePage.js +886 -0
  117. package/dist/coolandlovely/pages/cart-owner/CartOwnerProfilePage.js.map +1 -0
  118. package/dist/coolandlovely/pages/cart-owner/CartServiceConfigPage.d.ts +11 -0
  119. package/dist/coolandlovely/pages/cart-owner/CartServiceConfigPage.d.ts.map +1 -0
  120. package/dist/coolandlovely/pages/cart-owner/CartServiceConfigPage.js +631 -0
  121. package/dist/coolandlovely/pages/cart-owner/CartServiceConfigPage.js.map +1 -0
  122. package/dist/coolandlovely/pages/cart-owner/InventoryManagementPage.d.ts +11 -0
  123. package/dist/coolandlovely/pages/cart-owner/InventoryManagementPage.d.ts.map +1 -0
  124. package/dist/coolandlovely/pages/cart-owner/InventoryManagementPage.js +913 -0
  125. package/dist/coolandlovely/pages/cart-owner/InventoryManagementPage.js.map +1 -0
  126. package/dist/coolandlovely/pages/cart-owner/OrderManagementPage.d.ts +10 -0
  127. package/dist/coolandlovely/pages/cart-owner/OrderManagementPage.d.ts.map +1 -0
  128. package/dist/coolandlovely/pages/cart-owner/OrderManagementPage.js +881 -0
  129. package/dist/coolandlovely/pages/cart-owner/OrderManagementPage.js.map +1 -0
  130. package/dist/coolandlovely/pages/cart-owner/StaffManagementPage.d.ts +11 -0
  131. package/dist/coolandlovely/pages/cart-owner/StaffManagementPage.d.ts.map +1 -0
  132. package/dist/coolandlovely/pages/cart-owner/StaffManagementPage.js +833 -0
  133. package/dist/coolandlovely/pages/cart-owner/StaffManagementPage.js.map +1 -0
  134. package/dist/coolandlovely/pages/common/HelpSupportPage.d.ts +11 -0
  135. package/dist/coolandlovely/pages/common/HelpSupportPage.d.ts.map +1 -0
  136. package/dist/coolandlovely/pages/common/HelpSupportPage.js +1325 -0
  137. package/dist/coolandlovely/pages/common/HelpSupportPage.js.map +1 -0
  138. package/dist/coolandlovely/pages/common/NotificationCenterPage.d.ts +11 -0
  139. package/dist/coolandlovely/pages/common/NotificationCenterPage.d.ts.map +1 -0
  140. package/dist/coolandlovely/pages/common/NotificationCenterPage.js +665 -0
  141. package/dist/coolandlovely/pages/common/NotificationCenterPage.js.map +1 -0
  142. package/dist/coolandlovely/pages/common/SettingsPage.d.ts +9 -0
  143. package/dist/coolandlovely/pages/common/SettingsPage.d.ts.map +1 -0
  144. package/dist/coolandlovely/pages/common/SettingsPage.js +964 -0
  145. package/dist/coolandlovely/pages/common/SettingsPage.js.map +1 -0
  146. package/dist/coolandlovely/pages/customer/BookingDetailsPage.d.ts +12 -0
  147. package/dist/coolandlovely/pages/customer/BookingDetailsPage.d.ts.map +1 -0
  148. package/dist/coolandlovely/pages/customer/BookingDetailsPage.js +593 -0
  149. package/dist/coolandlovely/pages/customer/BookingDetailsPage.js.map +1 -0
  150. package/dist/coolandlovely/pages/customer/CartDetailPage.d.ts +13 -0
  151. package/dist/coolandlovely/pages/customer/CartDetailPage.d.ts.map +1 -0
  152. package/dist/coolandlovely/pages/customer/CartDetailPage.js +620 -0
  153. package/dist/coolandlovely/pages/customer/CartDetailPage.js.map +1 -0
  154. package/dist/coolandlovely/pages/customer/CartDiscoveryPage.d.ts +11 -0
  155. package/dist/coolandlovely/pages/customer/CartDiscoveryPage.d.ts.map +1 -0
  156. package/dist/coolandlovely/pages/customer/CartDiscoveryPage.js +547 -0
  157. package/dist/coolandlovely/pages/customer/CartDiscoveryPage.js.map +1 -0
  158. package/dist/coolandlovely/pages/customer/CheckoutPage.d.ts +9 -0
  159. package/dist/coolandlovely/pages/customer/CheckoutPage.d.ts.map +1 -0
  160. package/dist/coolandlovely/pages/customer/CheckoutPage.js +532 -0
  161. package/dist/coolandlovely/pages/customer/CheckoutPage.js.map +1 -0
  162. package/dist/coolandlovely/pages/customer/CustomerDashboard.d.ts +10 -0
  163. package/dist/coolandlovely/pages/customer/CustomerDashboard.d.ts.map +1 -0
  164. package/dist/coolandlovely/pages/customer/CustomerDashboard.js +496 -0
  165. package/dist/coolandlovely/pages/customer/CustomerDashboard.js.map +1 -0
  166. package/dist/coolandlovely/pages/customer/CustomerProfilePage.d.ts +10 -0
  167. package/dist/coolandlovely/pages/customer/CustomerProfilePage.d.ts.map +1 -0
  168. package/dist/coolandlovely/pages/customer/CustomerProfilePage.js +621 -0
  169. package/dist/coolandlovely/pages/customer/CustomerProfilePage.js.map +1 -0
  170. package/dist/coolandlovely/pages/customer/DirectServiceBookingPage.d.ts +12 -0
  171. package/dist/coolandlovely/pages/customer/DirectServiceBookingPage.d.ts.map +1 -0
  172. package/dist/coolandlovely/pages/customer/DirectServiceBookingPage.js +623 -0
  173. package/dist/coolandlovely/pages/customer/DirectServiceBookingPage.js.map +1 -0
  174. package/dist/coolandlovely/pages/customer/FavoritesPage.d.ts +11 -0
  175. package/dist/coolandlovely/pages/customer/FavoritesPage.d.ts.map +1 -0
  176. package/dist/coolandlovely/pages/customer/FavoritesPage.js +477 -0
  177. package/dist/coolandlovely/pages/customer/FavoritesPage.js.map +1 -0
  178. package/dist/coolandlovely/pages/customer/OrderHistoryPage.d.ts +9 -0
  179. package/dist/coolandlovely/pages/customer/OrderHistoryPage.d.ts.map +1 -0
  180. package/dist/coolandlovely/pages/customer/OrderHistoryPage.js +438 -0
  181. package/dist/coolandlovely/pages/customer/OrderHistoryPage.js.map +1 -0
  182. package/dist/coolandlovely/pages/customer/OrderTrackingPage.d.ts +9 -0
  183. package/dist/coolandlovely/pages/customer/OrderTrackingPage.d.ts.map +1 -0
  184. package/dist/coolandlovely/pages/customer/OrderTrackingPage.js +388 -0
  185. package/dist/coolandlovely/pages/customer/OrderTrackingPage.js.map +1 -0
  186. package/dist/coolandlovely/pages/customer/PaymentMethodsPage.d.ts +11 -0
  187. package/dist/coolandlovely/pages/customer/PaymentMethodsPage.d.ts.map +1 -0
  188. package/dist/coolandlovely/pages/customer/PaymentMethodsPage.js +488 -0
  189. package/dist/coolandlovely/pages/customer/PaymentMethodsPage.js.map +1 -0
  190. package/dist/coolandlovely/pages/customer/ReviewsPage.d.ts +11 -0
  191. package/dist/coolandlovely/pages/customer/ReviewsPage.d.ts.map +1 -0
  192. package/dist/coolandlovely/pages/customer/ReviewsPage.js +606 -0
  193. package/dist/coolandlovely/pages/customer/ReviewsPage.js.map +1 -0
  194. package/dist/coolandlovely/pages/customer/SavedAddressesPage.d.ts +10 -0
  195. package/dist/coolandlovely/pages/customer/SavedAddressesPage.d.ts.map +1 -0
  196. package/dist/coolandlovely/pages/customer/SavedAddressesPage.js +443 -0
  197. package/dist/coolandlovely/pages/customer/SavedAddressesPage.js.map +1 -0
  198. package/dist/coolandlovely/pages/investor/InvestmentDetailsPage.d.ts +10 -0
  199. package/dist/coolandlovely/pages/investor/InvestmentDetailsPage.d.ts.map +1 -0
  200. package/dist/coolandlovely/pages/investor/InvestmentDetailsPage.js +849 -0
  201. package/dist/coolandlovely/pages/investor/InvestmentDetailsPage.js.map +1 -0
  202. package/dist/coolandlovely/pages/investor/InvestmentOpportunitiesPage.d.ts +10 -0
  203. package/dist/coolandlovely/pages/investor/InvestmentOpportunitiesPage.d.ts.map +1 -0
  204. package/dist/coolandlovely/pages/investor/InvestmentOpportunitiesPage.js +939 -0
  205. package/dist/coolandlovely/pages/investor/InvestmentOpportunitiesPage.js.map +1 -0
  206. package/dist/coolandlovely/pages/investor/InvestorAnalyticsPage.d.ts +11 -0
  207. package/dist/coolandlovely/pages/investor/InvestorAnalyticsPage.d.ts.map +1 -0
  208. package/dist/coolandlovely/pages/investor/InvestorAnalyticsPage.js +681 -0
  209. package/dist/coolandlovely/pages/investor/InvestorAnalyticsPage.js.map +1 -0
  210. package/dist/coolandlovely/pages/investor/InvestorDashboard.d.ts +9 -0
  211. package/dist/coolandlovely/pages/investor/InvestorDashboard.d.ts.map +1 -0
  212. package/dist/coolandlovely/pages/investor/InvestorDashboard.js +419 -0
  213. package/dist/coolandlovely/pages/investor/InvestorDashboard.js.map +1 -0
  214. package/dist/coolandlovely/pages/investor/InvestorInvestmentsPage.d.ts +10 -0
  215. package/dist/coolandlovely/pages/investor/InvestorInvestmentsPage.d.ts.map +1 -0
  216. package/dist/coolandlovely/pages/investor/InvestorInvestmentsPage.js +399 -0
  217. package/dist/coolandlovely/pages/investor/InvestorInvestmentsPage.js.map +1 -0
  218. package/dist/coolandlovely/pages/investor/InvestorPortfolioPage.d.ts +10 -0
  219. package/dist/coolandlovely/pages/investor/InvestorPortfolioPage.d.ts.map +1 -0
  220. package/dist/coolandlovely/pages/investor/InvestorPortfolioPage.js +569 -0
  221. package/dist/coolandlovely/pages/investor/InvestorPortfolioPage.js.map +1 -0
  222. package/dist/coolandlovely/pages/investor/InvestorProfilePage.d.ts +12 -0
  223. package/dist/coolandlovely/pages/investor/InvestorProfilePage.d.ts.map +1 -0
  224. package/dist/coolandlovely/pages/investor/InvestorProfilePage.js +1065 -0
  225. package/dist/coolandlovely/pages/investor/InvestorProfilePage.js.map +1 -0
  226. package/dist/coolandlovely/pages/worker/TaskDetailsPage.d.ts +22 -0
  227. package/dist/coolandlovely/pages/worker/TaskDetailsPage.d.ts.map +1 -0
  228. package/dist/coolandlovely/pages/worker/TaskDetailsPage.js +496 -0
  229. package/dist/coolandlovely/pages/worker/TaskDetailsPage.js.map +1 -0
  230. package/dist/coolandlovely/pages/worker/WorkerDashboard.d.ts +18 -0
  231. package/dist/coolandlovely/pages/worker/WorkerDashboard.d.ts.map +1 -0
  232. package/dist/coolandlovely/pages/worker/WorkerDashboard.js +634 -0
  233. package/dist/coolandlovely/pages/worker/WorkerDashboard.js.map +1 -0
  234. package/dist/coolandlovely/pages/worker/WorkerOrdersPage.d.ts +18 -0
  235. package/dist/coolandlovely/pages/worker/WorkerOrdersPage.d.ts.map +1 -0
  236. package/dist/coolandlovely/pages/worker/WorkerOrdersPage.js +675 -0
  237. package/dist/coolandlovely/pages/worker/WorkerOrdersPage.js.map +1 -0
  238. package/dist/coolandlovely/pages/worker/WorkerProfilePage.d.ts +18 -0
  239. package/dist/coolandlovely/pages/worker/WorkerProfilePage.d.ts.map +1 -0
  240. package/dist/coolandlovely/pages/worker/WorkerProfilePage.js +687 -0
  241. package/dist/coolandlovely/pages/worker/WorkerProfilePage.js.map +1 -0
  242. package/dist/coolandlovely/pages/worker/WorkerSchedulePage.d.ts +17 -0
  243. package/dist/coolandlovely/pages/worker/WorkerSchedulePage.d.ts.map +1 -0
  244. package/dist/coolandlovely/pages/worker/WorkerSchedulePage.js +578 -0
  245. package/dist/coolandlovely/pages/worker/WorkerSchedulePage.js.map +1 -0
  246. package/dist/coolandlovely/store/coolandlovelyStore.d.ts +60 -0
  247. package/dist/coolandlovely/store/coolandlovelyStore.d.ts.map +1 -0
  248. package/dist/coolandlovely/store/coolandlovelyStore.js +38 -0
  249. package/dist/coolandlovely/store/coolandlovelyStore.js.map +1 -0
  250. package/dist/coolandlovely/store/index.d.ts +6 -0
  251. package/dist/coolandlovely/store/index.d.ts.map +1 -0
  252. package/dist/coolandlovely/store/index.js +1 -0
  253. package/dist/coolandlovely/types/index.d.ts +458 -0
  254. package/dist/coolandlovely/types/index.d.ts.map +1 -0
  255. package/dist/coolandlovely/utils/cn.d.ts +4 -0
  256. package/dist/coolandlovely/utils/cn.d.ts.map +1 -0
  257. package/dist/coolandlovely/utils/cn.js +10 -0
  258. package/dist/coolandlovely/utils/cn.js.map +1 -0
  259. package/dist/coolandlovely/utils/formatters.d.ts +78 -0
  260. package/dist/coolandlovely/utils/formatters.d.ts.map +1 -0
  261. package/dist/coolandlovely/utils/formatters.js +51 -0
  262. package/dist/coolandlovely/utils/formatters.js.map +1 -0
  263. package/dist/coolandlovely/utils/index.d.ts +8 -0
  264. package/dist/coolandlovely/utils/index.d.ts.map +1 -0
  265. package/dist/coolandlovely/utils/navigation.d.ts +20 -0
  266. package/dist/coolandlovely/utils/navigation.d.ts.map +1 -0
  267. package/dist/coolandlovely/utils/navigation.js +9 -0
  268. package/dist/coolandlovely/utils/navigation.js.map +1 -0
  269. package/dist/generated/global-operations.d.ts +2 -0
  270. package/dist/generated/global-operations.d.ts.map +1 -0
  271. package/dist/generated/global-types.d.ts +23527 -0
  272. package/dist/generated/global-types.d.ts.map +1 -0
  273. package/dist/generated/wspace-operations.d.ts +2 -0
  274. package/dist/generated/wspace-operations.d.ts.map +1 -0
  275. package/dist/generated/wspace-types.d.ts +57851 -0
  276. package/dist/generated/wspace-types.d.ts.map +1 -0
  277. package/dist/index.d.ts +6 -0
  278. package/dist/index.d.ts.map +1 -0
  279. package/dist/index.js +7 -0
  280. package/dist/node_modules/.bun/clsx@2.1.1/node_modules/clsx/dist/clsx.js +18 -0
  281. package/dist/node_modules/.bun/clsx@2.1.1/node_modules/clsx/dist/clsx.js.map +1 -0
  282. package/dist/node_modules/.bun/tailwind-merge@3.5.0/node_modules/tailwind-merge/dist/bundle-mjs.js +1674 -0
  283. package/dist/node_modules/.bun/tailwind-merge@3.5.0/node_modules/tailwind-merge/dist/bundle-mjs.js.map +1 -0
  284. package/package.json +106 -0
@@ -0,0 +1,921 @@
1
+ import { useCoolAndLovely as e } from "../context/CoolAndLovelyContext.js";
2
+ import { cn as t } from "../utils/cn.js";
3
+ import { PageLayout as n } from "../components/PageLayout.js";
4
+ import { MetricsCard as r } from "../components/MetricsCard.js";
5
+ import { StatusBadge as i } from "../components/StatusBadge.js";
6
+ import { EmptyState as a } from "../components/EmptyState.js";
7
+ import { useCoolAndLovelyApi as o } from "../hooks/useCoolAndLovelyApi.js";
8
+ import { formatCurrency as s, formatDistance as c, formatRelativeTime as l } from "../utils/formatters.js";
9
+ import { useCallback as u, useMemo as d, useState as f } from "react";
10
+ import { useI18n as p } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
11
+ import { Activity as m, AlertCircle as h, ArrowRight as g, BadgeCheck as _, BarChart3 as v, CheckCircle2 as y, ChefHat as b, ClipboardList as x, Clock as S, FileText as C, GraduationCap as w, HandCoins as T, Heart as E, Home as D, IndianRupee as O, LayoutDashboard as k, Loader2 as A, MapPin as j, Package as M, Scissors as N, Search as P, Settings as F, Shirt as I, ShoppingBag as L, ShoppingCart as R, Sparkles as z, Star as B, Store as V, TrendingUp as H, Truck as U, Users as W, Wallet as G, Wrench as K } from "lucide-react";
12
+ import { jsx as q, jsxs as J } from "react/jsx-runtime";
13
+ //#region src/coolandlovely/pages/HomePage.tsx
14
+ var Y = {
15
+ customer: [
16
+ {
17
+ label: "Discover Services",
18
+ description: "Browse carts near you",
19
+ icon: /* @__PURE__ */ q(P, { className: "h-5 w-5" }),
20
+ path: "/customer/carts",
21
+ color: "bg-blue-500/10 text-blue-600 dark:text-blue-400"
22
+ },
23
+ {
24
+ label: "My Orders",
25
+ description: "Track your orders",
26
+ icon: /* @__PURE__ */ q(L, { className: "h-5 w-5" }),
27
+ path: "/customer/orders",
28
+ color: "bg-green-500/10 text-green-600 dark:text-green-400"
29
+ },
30
+ {
31
+ label: "Favorites",
32
+ description: "Your saved carts",
33
+ icon: /* @__PURE__ */ q(E, { className: "h-5 w-5" }),
34
+ path: "/customer/favorites",
35
+ color: "bg-pink-500/10 text-pink-600 dark:text-pink-400"
36
+ },
37
+ {
38
+ label: "Settings",
39
+ description: "Manage preferences",
40
+ icon: /* @__PURE__ */ q(F, { className: "h-5 w-5" }),
41
+ path: "/settings",
42
+ color: "bg-muted text-muted-foreground"
43
+ }
44
+ ],
45
+ cart_owner: [
46
+ {
47
+ label: "My Cart",
48
+ description: "Manage your cart",
49
+ icon: /* @__PURE__ */ q(V, { className: "h-5 w-5" }),
50
+ path: "/owner/dashboard",
51
+ color: "bg-purple-500/10 text-purple-600 dark:text-purple-400"
52
+ },
53
+ {
54
+ label: "Orders",
55
+ description: "Incoming orders",
56
+ icon: /* @__PURE__ */ q(L, { className: "h-5 w-5" }),
57
+ path: "/owner/orders",
58
+ color: "bg-blue-500/10 text-blue-600 dark:text-blue-400"
59
+ },
60
+ {
61
+ label: "Analytics",
62
+ description: "Revenue & insights",
63
+ icon: /* @__PURE__ */ q(v, { className: "h-5 w-5" }),
64
+ path: "/owner/analytics",
65
+ color: "bg-emerald-500/10 text-emerald-600 dark:text-emerald-400"
66
+ },
67
+ {
68
+ label: "Staff",
69
+ description: "Manage workers",
70
+ icon: /* @__PURE__ */ q(W, { className: "h-5 w-5" }),
71
+ path: "/owner/staff",
72
+ color: "bg-orange-500/10 text-orange-600 dark:text-orange-400"
73
+ }
74
+ ],
75
+ worker: [
76
+ {
77
+ label: "My Tasks",
78
+ description: "View assigned tasks",
79
+ icon: /* @__PURE__ */ q(x, { className: "h-5 w-5" }),
80
+ path: "/worker/dashboard",
81
+ color: "bg-orange-500/10 text-orange-600 dark:text-orange-400"
82
+ },
83
+ {
84
+ label: "Schedule",
85
+ description: "View shifts",
86
+ icon: /* @__PURE__ */ q(S, { className: "h-5 w-5" }),
87
+ path: "/worker/schedule",
88
+ color: "bg-blue-500/10 text-blue-600 dark:text-blue-400"
89
+ },
90
+ {
91
+ label: "Earnings",
92
+ description: "Track pay",
93
+ icon: /* @__PURE__ */ q(G, { className: "h-5 w-5" }),
94
+ path: "/worker/earnings",
95
+ color: "bg-green-500/10 text-green-600 dark:text-green-400"
96
+ },
97
+ {
98
+ label: "Performance",
99
+ description: "Ratings & stats",
100
+ icon: /* @__PURE__ */ q(B, { className: "h-5 w-5" }),
101
+ path: "/worker/performance",
102
+ color: "bg-yellow-500/10 text-yellow-600 dark:text-yellow-400"
103
+ }
104
+ ],
105
+ investor: [
106
+ {
107
+ label: "Portfolio",
108
+ description: "Your investments",
109
+ icon: /* @__PURE__ */ q(H, { className: "h-5 w-5" }),
110
+ path: "/investor/dashboard",
111
+ color: "bg-emerald-500/10 text-emerald-600 dark:text-emerald-400"
112
+ },
113
+ {
114
+ label: "Opportunities",
115
+ description: "New investments",
116
+ icon: /* @__PURE__ */ q(T, { className: "h-5 w-5" }),
117
+ path: "/investor/opportunities",
118
+ color: "bg-blue-500/10 text-blue-600 dark:text-blue-400"
119
+ },
120
+ {
121
+ label: "Returns",
122
+ description: "Earnings history",
123
+ icon: /* @__PURE__ */ q(O, { className: "h-5 w-5" }),
124
+ path: "/investor/returns",
125
+ color: "bg-green-500/10 text-green-600 dark:text-green-400"
126
+ },
127
+ {
128
+ label: "Reports",
129
+ description: "Performance reports",
130
+ icon: /* @__PURE__ */ q(C, { className: "h-5 w-5" }),
131
+ path: "/investor/reports",
132
+ color: "bg-purple-500/10 text-purple-600 dark:text-purple-400"
133
+ }
134
+ ],
135
+ admin: [
136
+ {
137
+ label: "Dashboard",
138
+ description: "Platform overview",
139
+ icon: /* @__PURE__ */ q(k, { className: "h-5 w-5" }),
140
+ path: "/admin/dashboard",
141
+ color: "bg-red-500/10 text-red-600 dark:text-red-400"
142
+ },
143
+ {
144
+ label: "Users",
145
+ description: "Manage accounts",
146
+ icon: /* @__PURE__ */ q(W, { className: "h-5 w-5" }),
147
+ path: "/admin/users",
148
+ color: "bg-blue-500/10 text-blue-600 dark:text-blue-400"
149
+ },
150
+ {
151
+ label: "Carts",
152
+ description: "Approve & manage",
153
+ icon: /* @__PURE__ */ q(V, { className: "h-5 w-5" }),
154
+ path: "/admin/carts",
155
+ color: "bg-purple-500/10 text-purple-600 dark:text-purple-400"
156
+ },
157
+ {
158
+ label: "Analytics",
159
+ description: "Revenue reports",
160
+ icon: /* @__PURE__ */ q(v, { className: "h-5 w-5" }),
161
+ path: "/admin/analytics",
162
+ color: "bg-emerald-500/10 text-emerald-600 dark:text-emerald-400"
163
+ }
164
+ ]
165
+ };
166
+ function X(e, t, n) {
167
+ switch (e) {
168
+ case "customer": return [
169
+ {
170
+ icon: /* @__PURE__ */ q(L, { className: "h-5 w-5" }),
171
+ value: t.length.toString(),
172
+ label: "Total Orders",
173
+ trend: "up",
174
+ trendValue: "+2 this week"
175
+ },
176
+ {
177
+ icon: /* @__PURE__ */ q(V, { className: "h-5 w-5" }),
178
+ value: (n?.activeProviders ?? 0).toString(),
179
+ label: "Nearby Providers",
180
+ trend: "up",
181
+ trendValue: "+3"
182
+ },
183
+ {
184
+ icon: /* @__PURE__ */ q(B, { className: "h-5 w-5" }),
185
+ value: (n?.avgRating ?? 0).toFixed(1),
186
+ label: "Avg. Rating",
187
+ trend: "up",
188
+ trendValue: "+0.1"
189
+ },
190
+ {
191
+ icon: /* @__PURE__ */ q(O, { className: "h-5 w-5" }),
192
+ value: s(t.reduce((e, t) => e + t.total, 0), { minimumFractionDigits: 0 }),
193
+ label: "Total Spent",
194
+ trend: "neutral",
195
+ trendValue: ""
196
+ }
197
+ ];
198
+ case "cart_owner": return [
199
+ {
200
+ icon: /* @__PURE__ */ q(L, { className: "h-5 w-5" }),
201
+ value: "48",
202
+ label: "Orders Today",
203
+ trend: "up",
204
+ trendValue: "+12%"
205
+ },
206
+ {
207
+ icon: /* @__PURE__ */ q(O, { className: "h-5 w-5" }),
208
+ value: s(12850, { minimumFractionDigits: 0 }),
209
+ label: "Today's Revenue",
210
+ trend: "up",
211
+ trendValue: "+8%"
212
+ },
213
+ {
214
+ icon: /* @__PURE__ */ q(B, { className: "h-5 w-5" }),
215
+ value: "4.6",
216
+ label: "Cart Rating",
217
+ trend: "up",
218
+ trendValue: "+0.2"
219
+ },
220
+ {
221
+ icon: /* @__PURE__ */ q(W, { className: "h-5 w-5" }),
222
+ value: "5",
223
+ label: "Active Staff",
224
+ trend: "neutral",
225
+ trendValue: ""
226
+ }
227
+ ];
228
+ case "worker": return [
229
+ {
230
+ icon: /* @__PURE__ */ q(x, { className: "h-5 w-5" }),
231
+ value: "5",
232
+ label: "Tasks Today",
233
+ trend: "up",
234
+ trendValue: "+2"
235
+ },
236
+ {
237
+ icon: /* @__PURE__ */ q(O, { className: "h-5 w-5" }),
238
+ value: s(425, { minimumFractionDigits: 0 }),
239
+ label: "Today's Earnings",
240
+ trend: "up",
241
+ trendValue: "+15%"
242
+ },
243
+ {
244
+ icon: /* @__PURE__ */ q(B, { className: "h-5 w-5" }),
245
+ value: "4.7",
246
+ label: "Rating",
247
+ trend: "up",
248
+ trendValue: "+0.1"
249
+ },
250
+ {
251
+ icon: /* @__PURE__ */ q(y, { className: "h-5 w-5" }),
252
+ value: "96.8%",
253
+ label: "Completion Rate",
254
+ trend: "up",
255
+ trendValue: "+0.5%"
256
+ }
257
+ ];
258
+ case "investor": return [
259
+ {
260
+ icon: /* @__PURE__ */ q(H, { className: "h-5 w-5" }),
261
+ value: "3",
262
+ label: "Active Investments",
263
+ trend: "up",
264
+ trendValue: "+1"
265
+ },
266
+ {
267
+ icon: /* @__PURE__ */ q(O, { className: "h-5 w-5" }),
268
+ value: s(45e4, { minimumFractionDigits: 0 }),
269
+ label: "Total Invested",
270
+ trend: "up",
271
+ trendValue: ""
272
+ },
273
+ {
274
+ icon: /* @__PURE__ */ q(T, { className: "h-5 w-5" }),
275
+ value: "16.5%",
276
+ label: "Avg. Returns",
277
+ trend: "up",
278
+ trendValue: "+2.1%"
279
+ },
280
+ {
281
+ icon: /* @__PURE__ */ q(v, { className: "h-5 w-5" }),
282
+ value: s(74250, { minimumFractionDigits: 0 }),
283
+ label: "Total Returns",
284
+ trend: "up",
285
+ trendValue: "+8.5%"
286
+ }
287
+ ];
288
+ default: return [
289
+ {
290
+ icon: /* @__PURE__ */ q(W, { className: "h-5 w-5" }),
291
+ value: (n?.activeCustomers ?? 0).toLocaleString("en-IN"),
292
+ label: "Active Customers",
293
+ trend: "up",
294
+ trendValue: "+50"
295
+ },
296
+ {
297
+ icon: /* @__PURE__ */ q(V, { className: "h-5 w-5" }),
298
+ value: (n?.activeProviders ?? 0).toString(),
299
+ label: "Service Providers",
300
+ trend: "up",
301
+ trendValue: "+3"
302
+ },
303
+ {
304
+ icon: /* @__PURE__ */ q(L, { className: "h-5 w-5" }),
305
+ value: (n?.totalOrders ?? 0).toLocaleString("en-IN"),
306
+ label: "Total Orders",
307
+ trend: "up",
308
+ trendValue: "+12%"
309
+ },
310
+ {
311
+ icon: /* @__PURE__ */ q(O, { className: "h-5 w-5" }),
312
+ value: s(n?.totalRevenue ?? 0, { minimumFractionDigits: 0 }),
313
+ label: "Total Revenue",
314
+ trend: "up",
315
+ trendValue: "+8.5%"
316
+ }
317
+ ];
318
+ }
319
+ }
320
+ var Z = [
321
+ {
322
+ label: "Food & Beverage",
323
+ icon: /* @__PURE__ */ q(b, { className: "h-6 w-6" }),
324
+ color: "bg-orange-500/10 text-orange-600 dark:text-orange-400"
325
+ },
326
+ {
327
+ label: "Personal Care & Beauty",
328
+ icon: /* @__PURE__ */ q(N, { className: "h-6 w-6" }),
329
+ color: "bg-pink-500/10 text-pink-600 dark:text-pink-400"
330
+ },
331
+ {
332
+ label: "Repair & Maintenance",
333
+ icon: /* @__PURE__ */ q(K, { className: "h-6 w-6" }),
334
+ color: "bg-blue-500/10 text-blue-600 dark:text-blue-400"
335
+ },
336
+ {
337
+ label: "Home Services",
338
+ icon: /* @__PURE__ */ q(D, { className: "h-6 w-6" }),
339
+ color: "bg-emerald-500/10 text-emerald-600 dark:text-emerald-400"
340
+ },
341
+ {
342
+ label: "Clothing & Fashion",
343
+ icon: /* @__PURE__ */ q(I, { className: "h-6 w-6" }),
344
+ color: "bg-purple-500/10 text-purple-600 dark:text-purple-400"
345
+ },
346
+ {
347
+ label: "Health & Wellness",
348
+ icon: /* @__PURE__ */ q(E, { className: "h-6 w-6" }),
349
+ color: "bg-red-500/10 text-red-600 dark:text-red-400"
350
+ },
351
+ {
352
+ label: "Education & Skills",
353
+ icon: /* @__PURE__ */ q(w, { className: "h-6 w-6" }),
354
+ color: "bg-yellow-500/10 text-yellow-600 dark:text-yellow-400"
355
+ },
356
+ {
357
+ label: "Retail & Merchandise",
358
+ icon: /* @__PURE__ */ q(M, { className: "h-6 w-6" }),
359
+ color: "bg-indigo-500/10 text-indigo-600 dark:text-indigo-400"
360
+ },
361
+ {
362
+ label: "Grocery & Essentials",
363
+ icon: /* @__PURE__ */ q(R, { className: "h-6 w-6" }),
364
+ color: "bg-green-500/10 text-green-600 dark:text-green-400"
365
+ }
366
+ ], Q = [
367
+ {
368
+ step: 1,
369
+ title: "Browse Services",
370
+ description: "Discover local service providers and carts near you.",
371
+ icon: /* @__PURE__ */ q(P, { className: "h-6 w-6" })
372
+ },
373
+ {
374
+ step: 2,
375
+ title: "Place an Order",
376
+ description: "Select items or services and place your order seamlessly.",
377
+ icon: /* @__PURE__ */ q(L, { className: "h-6 w-6" })
378
+ },
379
+ {
380
+ step: 3,
381
+ title: "Track in Real-time",
382
+ description: "Get live updates on your order from confirmation to delivery.",
383
+ icon: /* @__PURE__ */ q(U, { className: "h-6 w-6" })
384
+ },
385
+ {
386
+ step: 4,
387
+ title: "Rate & Review",
388
+ description: "Share your experience and help others find great services.",
389
+ icon: /* @__PURE__ */ q(B, { className: "h-6 w-6" })
390
+ }
391
+ ], $ = [
392
+ {
393
+ id: "ha-1",
394
+ description: "New order placed at Dosa Express",
395
+ time: "2 mins ago",
396
+ type: "order"
397
+ },
398
+ {
399
+ id: "ha-2",
400
+ description: "Quick Cuts Salon received a new review",
401
+ time: "15 mins ago",
402
+ type: "review"
403
+ },
404
+ {
405
+ id: "ha-3",
406
+ description: "Investment opportunity funded: Spotless Cleaning",
407
+ time: "1 hour ago",
408
+ type: "investment"
409
+ },
410
+ {
411
+ id: "ha-4",
412
+ description: "New cart registered: Gadget Zone Brigade",
413
+ time: "3 hours ago",
414
+ type: "cart"
415
+ },
416
+ {
417
+ id: "ha-5",
418
+ description: "Order delivered: Fix-It Mobile Repair",
419
+ time: "5 hours ago",
420
+ type: "order"
421
+ }
422
+ ], ee = [
423
+ {
424
+ label: "Service Providers",
425
+ value: "21+",
426
+ icon: /* @__PURE__ */ q(V, { className: "h-5 w-5" })
427
+ },
428
+ {
429
+ label: "Categories",
430
+ value: "9",
431
+ icon: /* @__PURE__ */ q(M, { className: "h-5 w-5" })
432
+ },
433
+ {
434
+ label: "Happy Customers",
435
+ value: "534+",
436
+ icon: /* @__PURE__ */ q(W, { className: "h-5 w-5" })
437
+ },
438
+ {
439
+ label: "Orders Completed",
440
+ value: "1,247+",
441
+ icon: /* @__PURE__ */ q(y, { className: "h-5 w-5" })
442
+ }
443
+ ];
444
+ function te() {
445
+ let { navigateTo: v, currentUser: y } = e(), { t: b } = p(), [x, C] = f(""), { providers: w, orders: T, dashboardStats: E } = o(), D = u((e, t) => {
446
+ let n = b(e);
447
+ return n === e ? t : n;
448
+ }, [b]), k = y?.firstName ?? y?.name ?? "there", M = y?.role ?? "customer", N = {
449
+ customer: D("coolandlovely.home.role.customer", "Customer"),
450
+ cart_owner: D("coolandlovely.home.role.cartOwner", "Cart Owner"),
451
+ worker: D("coolandlovely.home.role.worker", "Worker"),
452
+ investor: D("coolandlovely.home.role.investor", "Investor"),
453
+ admin: D("coolandlovely.home.role.admin", "Administrator")
454
+ }, F = {
455
+ customer: D("coolandlovely.home.greeting.customer", "Discover amazing services near you"),
456
+ cart_owner: D("coolandlovely.home.greeting.cartOwner", "Manage your business and grow"),
457
+ worker: D("coolandlovely.home.greeting.worker", "Check your tasks and earnings"),
458
+ investor: D("coolandlovely.home.greeting.investor", "Track your investments and returns"),
459
+ admin: D("coolandlovely.home.greeting.admin", "Monitor and manage the platform")
460
+ }, I = Y[M] ?? Y.customer, L = X(M, T.data ?? [], E.data), R = d(() => {
461
+ let e = (w.data ?? []).filter((e) => e.isOpen);
462
+ if (x) {
463
+ let t = x.toLowerCase();
464
+ e = e.filter((e) => e.name.toLowerCase().includes(t) || e.category.toLowerCase().includes(t));
465
+ }
466
+ return e.sort((e, t) => t.rating - e.rating).slice(0, 6);
467
+ }, [w.data, x]), V = d(() => [...T.data ?? []].sort((e, t) => new Date(t.orderDate).getTime() - new Date(e.orderDate).getTime()).slice(0, 3), [T.data]), H = {
468
+ order: "text-blue-600 dark:text-blue-400",
469
+ review: "text-yellow-600 dark:text-yellow-400",
470
+ investment: "text-green-600 dark:text-green-400",
471
+ cart: "text-purple-600 dark:text-purple-400"
472
+ }, U = (T.data ?? []).length === 0 && !T.isLoading, W = w.isLoading || T.isLoading || E.isLoading, G = w.isError || T.isError || E.isError;
473
+ return W ? /* @__PURE__ */ q(n, {
474
+ title: D("coolandlovely.common.loading", "Loading..."),
475
+ children: /* @__PURE__ */ q("div", {
476
+ className: "flex h-[60vh] items-center justify-center",
477
+ children: /* @__PURE__ */ q(A, { className: "h-8 w-8 animate-spin text-primary" })
478
+ })
479
+ }) : G ? /* @__PURE__ */ q(n, {
480
+ title: D("coolandlovely.common.error", "Error"),
481
+ children: /* @__PURE__ */ J("div", {
482
+ className: "flex h-[60vh] flex-col items-center justify-center gap-4",
483
+ children: [
484
+ /* @__PURE__ */ q(h, { className: "h-12 w-12 text-destructive" }),
485
+ /* @__PURE__ */ q("h2", {
486
+ className: "text-xl font-semibold",
487
+ children: D("coolandlovely.common.errorLoading", "Error loading data")
488
+ }),
489
+ /* @__PURE__ */ q("p", {
490
+ className: "text-muted-foreground",
491
+ children: D("coolandlovely.common.tryAgain", "Please try again later.")
492
+ })
493
+ ]
494
+ })
495
+ }) : /* @__PURE__ */ J(n, {
496
+ title: `${D("coolandlovely.home.hello", "Hello")}, ${k}!`,
497
+ description: F[M],
498
+ children: [
499
+ U && /* @__PURE__ */ q("section", {
500
+ className: "mb-6 rounded-xl border border-border bg-gradient-to-r from-primary/5 via-primary/10 to-primary/5 p-6",
501
+ children: /* @__PURE__ */ J("div", {
502
+ className: "flex items-start gap-4",
503
+ children: [/* @__PURE__ */ q("div", {
504
+ className: "flex h-12 w-12 shrink-0 items-center justify-center rounded-full bg-primary/10",
505
+ children: /* @__PURE__ */ q(z, { className: "h-6 w-6 text-primary" })
506
+ }), /* @__PURE__ */ J("div", {
507
+ className: "flex-1",
508
+ children: [
509
+ /* @__PURE__ */ q("h2", {
510
+ className: "text-lg font-semibold text-foreground",
511
+ children: D("coolandlovely.home.welcomeTitle", "Welcome to CoolAndLovely!")
512
+ }),
513
+ /* @__PURE__ */ q("p", {
514
+ className: "mt-1 text-sm text-muted-foreground",
515
+ children: D("coolandlovely.home.welcomeDescription", "Your local services marketplace. Start by exploring service providers near you or browse categories to find what you need.")
516
+ }),
517
+ /* @__PURE__ */ J("button", {
518
+ type: "button",
519
+ onClick: () => v("/customer/carts"),
520
+ className: "mt-3 inline-flex items-center gap-1.5 rounded-lg bg-primary px-4 py-2 text-sm font-medium text-primary-foreground hover:bg-primary/90 transition-colors",
521
+ children: [/* @__PURE__ */ q(P, { className: "h-4 w-4" }), D("coolandlovely.home.exploreServices", "Explore Services")]
522
+ })
523
+ ]
524
+ })]
525
+ })
526
+ }),
527
+ /* @__PURE__ */ q("section", {
528
+ className: "mb-6 rounded-xl border border-border bg-card p-6",
529
+ children: /* @__PURE__ */ J("div", {
530
+ className: "flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between",
531
+ children: [/* @__PURE__ */ J("div", { children: [
532
+ /* @__PURE__ */ q("div", {
533
+ className: "flex items-center gap-2 mb-1",
534
+ children: /* @__PURE__ */ J("span", {
535
+ className: "inline-flex items-center rounded-full bg-primary/10 px-2.5 py-0.5 text-xs font-medium text-primary",
536
+ children: [/* @__PURE__ */ q(_, { className: "mr-1 h-3 w-3" }), N[M]]
537
+ })
538
+ }),
539
+ /* @__PURE__ */ J("h2", {
540
+ className: "text-xl font-bold text-foreground",
541
+ children: [
542
+ D("coolandlovely.home.good", "Good"),
543
+ " ",
544
+ (/* @__PURE__ */ new Date()).getHours() < 12 ? D("coolandlovely.home.time.morning", "morning") : (/* @__PURE__ */ new Date()).getHours() < 17 ? D("coolandlovely.home.time.afternoon", "afternoon") : D("coolandlovely.home.time.evening", "evening"),
545
+ ", ",
546
+ k
547
+ ]
548
+ }),
549
+ /* @__PURE__ */ q("p", {
550
+ className: "mt-1 text-sm text-muted-foreground",
551
+ children: F[M]
552
+ })
553
+ ] }), /* @__PURE__ */ J("div", {
554
+ className: "relative w-full sm:w-72",
555
+ children: [/* @__PURE__ */ q(P, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground" }), /* @__PURE__ */ q("input", {
556
+ type: "text",
557
+ placeholder: D("coolandlovely.home.searchPlaceholder", "Search services, carts..."),
558
+ value: x,
559
+ onChange: (e) => C(e.target.value),
560
+ className: "w-full rounded-lg border border-border bg-card py-2.5 pl-10 pr-3 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring"
561
+ })]
562
+ })]
563
+ })
564
+ }),
565
+ /* @__PURE__ */ J("section", {
566
+ className: "mb-8",
567
+ children: [/* @__PURE__ */ q("h2", {
568
+ className: "text-lg font-semibold text-foreground mb-4",
569
+ children: D("coolandlovely.home.quickStats", "Quick Stats")
570
+ }), /* @__PURE__ */ q("div", {
571
+ className: "grid grid-cols-2 gap-4 lg:grid-cols-4",
572
+ children: L.map((e) => /* @__PURE__ */ q(r, {
573
+ icon: e.icon,
574
+ value: e.value,
575
+ label: e.label,
576
+ trend: e.trend,
577
+ trendValue: e.trendValue
578
+ }, e.label))
579
+ })]
580
+ }),
581
+ /* @__PURE__ */ J("section", {
582
+ className: "mb-8",
583
+ children: [/* @__PURE__ */ q("h2", {
584
+ className: "text-lg font-semibold text-foreground mb-4",
585
+ children: D("coolandlovely.home.quickActions", "Quick Actions")
586
+ }), /* @__PURE__ */ q("div", {
587
+ className: "grid grid-cols-2 gap-4 lg:grid-cols-4",
588
+ children: I.map((e) => /* @__PURE__ */ J("button", {
589
+ type: "button",
590
+ onClick: () => v(e.path),
591
+ className: t("flex items-start gap-3 rounded-lg border border-border bg-card p-4 text-left shadow-sm transition-all", "hover:border-accent-foreground/20 hover:shadow-md"),
592
+ children: [
593
+ /* @__PURE__ */ q("div", {
594
+ className: t("flex h-10 w-10 shrink-0 items-center justify-center rounded-lg", e.color),
595
+ children: e.icon
596
+ }),
597
+ /* @__PURE__ */ J("div", {
598
+ className: "min-w-0 flex-1",
599
+ children: [/* @__PURE__ */ q("p", {
600
+ className: "text-sm font-semibold text-foreground",
601
+ children: e.label
602
+ }), /* @__PURE__ */ q("p", {
603
+ className: "mt-0.5 text-xs text-muted-foreground",
604
+ children: e.description
605
+ })]
606
+ }),
607
+ /* @__PURE__ */ q(g, { className: "h-4 w-4 text-muted-foreground shrink-0 mt-1" })
608
+ ]
609
+ }, e.label))
610
+ })]
611
+ }),
612
+ /* @__PURE__ */ J("section", {
613
+ className: "mb-8",
614
+ children: [/* @__PURE__ */ J("div", {
615
+ className: "flex items-center justify-between mb-4",
616
+ children: [/* @__PURE__ */ q("h2", {
617
+ className: "text-lg font-semibold text-foreground",
618
+ children: x ? D("coolandlovely.home.searchResults", "Search Results") : D("coolandlovely.home.featuredCarts", "Featured Carts")
619
+ }), /* @__PURE__ */ J("button", {
620
+ type: "button",
621
+ onClick: () => v("/customer/carts"),
622
+ className: "flex items-center gap-1 text-sm font-medium text-primary hover:underline",
623
+ children: [
624
+ D("coolandlovely.common.viewAll", "View All"),
625
+ " ",
626
+ /* @__PURE__ */ q(g, { className: "h-3.5 w-3.5" })
627
+ ]
628
+ })]
629
+ }), R.length === 0 ? /* @__PURE__ */ q(a, {
630
+ icon: /* @__PURE__ */ q(P, { className: "h-10 w-10" }),
631
+ title: D("coolandlovely.home.noCartsFound", "No carts found"),
632
+ description: D("coolandlovely.home.noCartsDescription", "Try adjusting your search or browse all categories"),
633
+ action: /* @__PURE__ */ q("button", {
634
+ type: "button",
635
+ onClick: () => C(""),
636
+ className: "rounded-lg border border-border px-4 py-2 text-sm font-medium text-foreground hover:bg-accent transition-colors",
637
+ children: D("coolandlovely.home.clearSearch", "Clear Search")
638
+ })
639
+ }) : /* @__PURE__ */ q("div", {
640
+ className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3",
641
+ children: R.map((e) => /* @__PURE__ */ J("div", {
642
+ role: "button",
643
+ tabIndex: 0,
644
+ onClick: () => v(`/customer/cart/${e.id}`),
645
+ onKeyDown: (t) => {
646
+ (t.key === "Enter" || t.key === " ") && (t.preventDefault(), v(`/customer/cart/${e.id}`));
647
+ },
648
+ className: "rounded-lg border border-border bg-card 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-ring",
649
+ children: [/* @__PURE__ */ J("div", {
650
+ className: "relative h-40 bg-muted",
651
+ children: [
652
+ /* @__PURE__ */ q("img", {
653
+ src: e.image,
654
+ alt: e.name,
655
+ className: "h-full w-full object-cover",
656
+ loading: "lazy"
657
+ }),
658
+ /* @__PURE__ */ q("div", {
659
+ className: "absolute top-2 right-2",
660
+ children: /* @__PURE__ */ q(i, { status: e.isOpen ? "open" : "closed" })
661
+ }),
662
+ e.isVerified && /* @__PURE__ */ q("div", {
663
+ className: "absolute top-2 left-2",
664
+ children: /* @__PURE__ */ J("span", {
665
+ className: "inline-flex items-center gap-1 rounded-full bg-blue-500/90 px-2 py-0.5 text-xs font-medium text-white backdrop-blur-sm",
666
+ children: [
667
+ /* @__PURE__ */ q(_, { className: "h-3 w-3" }),
668
+ " ",
669
+ D("coolandlovely.home.verified", "Verified")
670
+ ]
671
+ })
672
+ }),
673
+ /* @__PURE__ */ q("div", {
674
+ className: "absolute bottom-2 right-2",
675
+ children: /* @__PURE__ */ J("span", {
676
+ className: "inline-flex items-center gap-1 rounded-full bg-black/60 px-2 py-0.5 text-xs text-white backdrop-blur-sm",
677
+ children: [
678
+ /* @__PURE__ */ q(S, { className: "h-3 w-3" }),
679
+ " ",
680
+ e.estimatedTime,
681
+ " min"
682
+ ]
683
+ })
684
+ })
685
+ ]
686
+ }), /* @__PURE__ */ J("div", {
687
+ className: "p-4",
688
+ children: [
689
+ /* @__PURE__ */ J("div", {
690
+ className: "flex items-start justify-between",
691
+ children: [/* @__PURE__ */ J("div", {
692
+ className: "min-w-0 flex-1",
693
+ children: [/* @__PURE__ */ q("h3", {
694
+ className: "text-base font-semibold text-foreground truncate",
695
+ children: e.name
696
+ }), /* @__PURE__ */ q("p", {
697
+ className: "mt-0.5 text-sm text-muted-foreground",
698
+ children: e.category
699
+ })]
700
+ }), /* @__PURE__ */ J("div", {
701
+ className: "flex items-center gap-1 rounded bg-green-600 px-1.5 py-0.5 ml-2 shrink-0",
702
+ children: [/* @__PURE__ */ q(B, { className: "h-3 w-3 fill-white text-white" }), /* @__PURE__ */ q("span", {
703
+ className: "text-xs font-bold text-white",
704
+ children: e.rating
705
+ })]
706
+ })]
707
+ }),
708
+ /* @__PURE__ */ J("div", {
709
+ className: "mt-3 flex items-center gap-4 text-xs text-muted-foreground",
710
+ children: [
711
+ /* @__PURE__ */ J("span", {
712
+ className: "flex items-center gap-1",
713
+ children: [
714
+ /* @__PURE__ */ q(j, { className: "h-3 w-3" }),
715
+ " ",
716
+ c(e.distance)
717
+ ]
718
+ }),
719
+ /* @__PURE__ */ J("span", {
720
+ className: "flex items-center gap-1",
721
+ children: [
722
+ /* @__PURE__ */ q(B, { className: "h-3 w-3" }),
723
+ " ",
724
+ e.totalRatings,
725
+ " ",
726
+ D("coolandlovely.home.reviews", "reviews")
727
+ ]
728
+ }),
729
+ e.averageOrderValue && /* @__PURE__ */ J("span", {
730
+ className: "flex items-center gap-1",
731
+ children: [
732
+ /* @__PURE__ */ q(O, { className: "h-3 w-3" }),
733
+ " ",
734
+ D("coolandlovely.home.average", "Avg."),
735
+ " ",
736
+ s(e.averageOrderValue, { minimumFractionDigits: 0 })
737
+ ]
738
+ })
739
+ ]
740
+ }),
741
+ e.serviceTypes && e.serviceTypes.length > 0 && /* @__PURE__ */ q("div", {
742
+ className: "mt-3 flex flex-wrap gap-1.5",
743
+ children: e.serviceTypes.slice(0, 3).map((e) => /* @__PURE__ */ q("span", {
744
+ className: "inline-flex items-center rounded-full bg-muted px-2 py-0.5 text-xs text-muted-foreground",
745
+ children: e.replace(/_/g, " ")
746
+ }, e))
747
+ })
748
+ ]
749
+ })]
750
+ }, e.id))
751
+ })]
752
+ }),
753
+ V.length > 0 && /* @__PURE__ */ J("section", {
754
+ className: "mb-8",
755
+ children: [/* @__PURE__ */ J("div", {
756
+ className: "flex items-center justify-between mb-4",
757
+ children: [/* @__PURE__ */ q("h2", {
758
+ className: "text-lg font-semibold text-foreground",
759
+ children: D("coolandlovely.home.recentOrders", "Recent Orders")
760
+ }), /* @__PURE__ */ J("button", {
761
+ type: "button",
762
+ onClick: () => v("/customer/orders"),
763
+ className: "flex items-center gap-1 text-sm font-medium text-primary hover:underline",
764
+ children: [
765
+ D("coolandlovely.common.viewAll", "View All"),
766
+ " ",
767
+ /* @__PURE__ */ q(g, { className: "h-3.5 w-3.5" })
768
+ ]
769
+ })]
770
+ }), /* @__PURE__ */ q("div", {
771
+ className: "rounded-lg border border-border bg-card divide-y divide-border",
772
+ children: V.map((e) => /* @__PURE__ */ J("div", {
773
+ role: "button",
774
+ tabIndex: 0,
775
+ onClick: () => v(`/customer/order/${e.id}`),
776
+ onKeyDown: (t) => {
777
+ (t.key === "Enter" || t.key === " ") && (t.preventDefault(), v(`/customer/order/${e.id}`));
778
+ },
779
+ className: "flex items-center gap-4 px-4 py-3 hover:bg-accent/50 transition-colors cursor-pointer",
780
+ children: [
781
+ /* @__PURE__ */ q("img", {
782
+ src: e.cartImage,
783
+ alt: e.cartName,
784
+ className: "h-12 w-12 rounded-lg object-cover shrink-0"
785
+ }),
786
+ /* @__PURE__ */ J("div", {
787
+ className: "flex-1 min-w-0",
788
+ children: [/* @__PURE__ */ J("div", {
789
+ className: "flex items-center gap-2",
790
+ children: [/* @__PURE__ */ q("p", {
791
+ className: "text-sm font-medium text-foreground truncate",
792
+ children: e.cartName
793
+ }), /* @__PURE__ */ q(i, { status: e.status })]
794
+ }), /* @__PURE__ */ q("p", {
795
+ className: "text-xs text-muted-foreground mt-0.5",
796
+ children: e.items.map((e) => e.name).join(", ")
797
+ })]
798
+ }),
799
+ /* @__PURE__ */ J("div", {
800
+ className: "text-right shrink-0",
801
+ children: [/* @__PURE__ */ q("p", {
802
+ className: "text-sm font-semibold text-foreground",
803
+ children: s(e.total, { minimumFractionDigits: 0 })
804
+ }), /* @__PURE__ */ q("p", {
805
+ className: "text-xs text-muted-foreground",
806
+ children: l(e.orderDate)
807
+ })]
808
+ })
809
+ ]
810
+ }, e.id))
811
+ })]
812
+ }),
813
+ /* @__PURE__ */ J("section", {
814
+ className: "mb-8",
815
+ children: [/* @__PURE__ */ q("h2", {
816
+ className: "text-lg font-semibold text-foreground mb-4",
817
+ children: D("coolandlovely.home.howItWorks", "How It Works")
818
+ }), /* @__PURE__ */ q("div", {
819
+ className: "grid grid-cols-2 gap-4 lg:grid-cols-4",
820
+ children: Q.map((e) => /* @__PURE__ */ J("div", {
821
+ className: "relative rounded-lg border border-border bg-card p-5 text-center",
822
+ children: [
823
+ /* @__PURE__ */ q("div", {
824
+ className: "absolute -top-3 left-1/2 -translate-x-1/2",
825
+ children: /* @__PURE__ */ q("span", {
826
+ className: "inline-flex h-6 w-6 items-center justify-center rounded-full bg-primary text-xs font-bold text-primary-foreground",
827
+ children: e.step
828
+ })
829
+ }),
830
+ /* @__PURE__ */ q("div", {
831
+ className: "mt-2 flex justify-center text-muted-foreground mb-3",
832
+ children: e.icon
833
+ }),
834
+ /* @__PURE__ */ q("h3", {
835
+ className: "text-sm font-semibold text-foreground",
836
+ children: e.title
837
+ }),
838
+ /* @__PURE__ */ q("p", {
839
+ className: "mt-1 text-xs text-muted-foreground",
840
+ children: e.description
841
+ })
842
+ ]
843
+ }, e.step))
844
+ })]
845
+ }),
846
+ /* @__PURE__ */ J("section", {
847
+ className: "mb-8",
848
+ children: [/* @__PURE__ */ q("h2", {
849
+ className: "text-lg font-semibold text-foreground mb-4",
850
+ children: D("coolandlovely.home.browseByCategory", "Browse by Category")
851
+ }), /* @__PURE__ */ q("div", {
852
+ className: "grid grid-cols-3 gap-3 sm:grid-cols-4 lg:grid-cols-5",
853
+ children: Z.map((e) => /* @__PURE__ */ J("button", {
854
+ type: "button",
855
+ onClick: () => v(`/customer/carts?category=${encodeURIComponent(e.label)}`),
856
+ className: "flex flex-col items-center gap-2 rounded-lg border border-border bg-card p-4 text-center hover:shadow-sm hover:border-accent-foreground/20 transition-all",
857
+ children: [/* @__PURE__ */ q("div", {
858
+ className: t("flex h-12 w-12 items-center justify-center rounded-full", e.color),
859
+ children: e.icon
860
+ }), /* @__PURE__ */ q("span", {
861
+ className: "text-xs font-medium text-foreground leading-tight",
862
+ children: e.label
863
+ })]
864
+ }, e.label))
865
+ })]
866
+ }),
867
+ /* @__PURE__ */ J("section", {
868
+ className: "mb-8",
869
+ children: [/* @__PURE__ */ q("h2", {
870
+ className: "text-lg font-semibold text-foreground mb-4",
871
+ children: D("coolandlovely.home.platformStats", "Platform Stats")
872
+ }), /* @__PURE__ */ q("div", {
873
+ className: "grid grid-cols-2 gap-4 lg:grid-cols-4",
874
+ children: ee.map((e) => /* @__PURE__ */ J("div", {
875
+ className: "flex items-center gap-3 rounded-lg border border-border bg-card p-4",
876
+ children: [/* @__PURE__ */ q("div", {
877
+ className: "flex h-10 w-10 items-center justify-center rounded-full bg-primary/10 text-primary shrink-0",
878
+ children: e.icon
879
+ }), /* @__PURE__ */ J("div", { children: [/* @__PURE__ */ q("p", {
880
+ className: "text-lg font-bold text-foreground",
881
+ children: e.value
882
+ }), /* @__PURE__ */ q("p", {
883
+ className: "text-xs text-muted-foreground",
884
+ children: e.label
885
+ })] })]
886
+ }, e.label))
887
+ })]
888
+ }),
889
+ /* @__PURE__ */ J("section", { children: [/* @__PURE__ */ q("h2", {
890
+ className: "text-lg font-semibold text-foreground mb-4",
891
+ children: D("coolandlovely.home.recentActivity", "Recent Activity")
892
+ }), /* @__PURE__ */ q("div", {
893
+ className: "rounded-lg border border-border bg-card divide-y divide-border",
894
+ children: $.map((e) => /* @__PURE__ */ J("div", {
895
+ className: "flex items-center gap-3 px-4 py-3",
896
+ children: [
897
+ /* @__PURE__ */ q("div", {
898
+ className: "flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-muted",
899
+ children: /* @__PURE__ */ q(m, { className: t("h-4 w-4", H[e.type] ?? "text-muted-foreground") })
900
+ }),
901
+ /* @__PURE__ */ q("div", {
902
+ className: "flex-1 min-w-0",
903
+ children: /* @__PURE__ */ q("p", {
904
+ className: "text-sm text-foreground truncate",
905
+ children: e.description
906
+ })
907
+ }),
908
+ /* @__PURE__ */ q("span", {
909
+ className: "text-xs text-muted-foreground whitespace-nowrap",
910
+ children: e.time
911
+ })
912
+ ]
913
+ }, e.id))
914
+ })] })
915
+ ]
916
+ });
917
+ }
918
+ //#endregion
919
+ export { te as HomePage };
920
+
921
+ //# sourceMappingURL=HomePage.js.map