@burdenoff/microfe-crewfoundry 2026.608.1 → 2026.624.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 (131) hide show
  1. package/dist/crewfoundry/pages/AdminAdminPagePage.js +15 -15
  2. package/dist/crewfoundry/pages/AdminAdminPagePage.js.map +1 -1
  3. package/dist/crewfoundry/pages/AnalyticsAnalyticsPagePage.js +15 -15
  4. package/dist/crewfoundry/pages/AnalyticsAnalyticsPagePage.js.map +1 -1
  5. package/dist/crewfoundry/pages/AnalyticsEmployeeAnalyticsPagePage.js +17 -17
  6. package/dist/crewfoundry/pages/AnalyticsEmployeeAnalyticsPagePage.js.map +1 -1
  7. package/dist/crewfoundry/pages/AnalyticsFinancialAnalyticsPagePage.js +19 -19
  8. package/dist/crewfoundry/pages/AnalyticsFinancialAnalyticsPagePage.js.map +1 -1
  9. package/dist/crewfoundry/pages/AnalyticsHiringAnalyticsPagePage.js +16 -16
  10. package/dist/crewfoundry/pages/AnalyticsHiringAnalyticsPagePage.js.map +1 -1
  11. package/dist/crewfoundry/pages/CommunicationsAnnouncementsPagePage.js +5 -5
  12. package/dist/crewfoundry/pages/CommunicationsAnnouncementsPagePage.js.map +1 -1
  13. package/dist/crewfoundry/pages/CommunicationsCallsPagePage.js +7 -7
  14. package/dist/crewfoundry/pages/CommunicationsCallsPagePage.js.map +1 -1
  15. package/dist/crewfoundry/pages/CommunicationsDirectoryPagePage.js +7 -7
  16. package/dist/crewfoundry/pages/CommunicationsDirectoryPagePage.js.map +1 -1
  17. package/dist/crewfoundry/pages/CommunicationsFilesPagePage.js +7 -7
  18. package/dist/crewfoundry/pages/CommunicationsFilesPagePage.js.map +1 -1
  19. package/dist/crewfoundry/pages/CommunicationsMessagesPagePage.js +7 -7
  20. package/dist/crewfoundry/pages/CommunicationsMessagesPagePage.js.map +1 -1
  21. package/dist/crewfoundry/pages/CommunicationsTeamsPagePage.js +3 -3
  22. package/dist/crewfoundry/pages/CommunicationsTeamsPagePage.js.map +1 -1
  23. package/dist/crewfoundry/pages/CommunicationsVideoCallsPagePage.js +8 -8
  24. package/dist/crewfoundry/pages/CommunicationsVideoCallsPagePage.js.map +1 -1
  25. package/dist/crewfoundry/pages/CompanyClientManagementPagePage.js +8 -8
  26. package/dist/crewfoundry/pages/CompanyClientManagementPagePage.js.map +1 -1
  27. package/dist/crewfoundry/pages/CompanyCompanyDashboardPagePage.js +14 -14
  28. package/dist/crewfoundry/pages/CompanyCompanyDashboardPagePage.js.map +1 -1
  29. package/dist/crewfoundry/pages/CompanyCompanyProfilePagePage.js +10 -10
  30. package/dist/crewfoundry/pages/CompanyCompanyProfilePagePage.js.map +1 -1
  31. package/dist/crewfoundry/pages/CompanyVendorManagementPagePage.js +4 -4
  32. package/dist/crewfoundry/pages/CompanyVendorManagementPagePage.js.map +1 -1
  33. package/dist/crewfoundry/pages/DashboardAnalyticsPagePage.js +17 -17
  34. package/dist/crewfoundry/pages/DashboardAnalyticsPagePage.js.map +1 -1
  35. package/dist/crewfoundry/pages/DashboardDashboardPagePage.js +19 -19
  36. package/dist/crewfoundry/pages/DashboardDashboardPagePage.js.map +1 -1
  37. package/dist/crewfoundry/pages/DashboardEnhancedDashboardPagePage.js +17 -17
  38. package/dist/crewfoundry/pages/DashboardEnhancedDashboardPagePage.js.map +1 -1
  39. package/dist/crewfoundry/pages/DashboardExecutiveDashboardPage.js +12 -12
  40. package/dist/crewfoundry/pages/DashboardExecutiveDashboardPage.js.map +1 -1
  41. package/dist/crewfoundry/pages/HelpApiDocumentationPagePage.js +12 -12
  42. package/dist/crewfoundry/pages/HelpApiDocumentationPagePage.js.map +1 -1
  43. package/dist/crewfoundry/pages/HiringApplicationsPagePage.js +11 -11
  44. package/dist/crewfoundry/pages/HiringApplicationsPagePage.js.map +1 -1
  45. package/dist/crewfoundry/pages/HiringCandidatesPagePage.js +7 -7
  46. package/dist/crewfoundry/pages/HiringCandidatesPagePage.js.map +1 -1
  47. package/dist/crewfoundry/pages/HiringCreateJobPagePage.js +1 -1
  48. package/dist/crewfoundry/pages/HiringCreateJobPagePage.js.map +1 -1
  49. package/dist/crewfoundry/pages/HiringInterviewsPagePage.js +7 -7
  50. package/dist/crewfoundry/pages/HiringInterviewsPagePage.js.map +1 -1
  51. package/dist/crewfoundry/pages/HiringJobDetailsPagePage.js +13 -13
  52. package/dist/crewfoundry/pages/HiringJobDetailsPagePage.js.map +1 -1
  53. package/dist/crewfoundry/pages/HiringJobsPagePage.js +7 -7
  54. package/dist/crewfoundry/pages/HiringJobsPagePage.js.map +1 -1
  55. package/dist/crewfoundry/pages/HrDepartmentsPagePage.js +10 -10
  56. package/dist/crewfoundry/pages/HrDepartmentsPagePage.js.map +1 -1
  57. package/dist/crewfoundry/pages/HrEmployeesPagePage.js +9 -9
  58. package/dist/crewfoundry/pages/HrEmployeesPagePage.js.map +1 -1
  59. package/dist/crewfoundry/pages/HrLeaveManagementPagePage.js +13 -13
  60. package/dist/crewfoundry/pages/HrLeaveManagementPagePage.js.map +1 -1
  61. package/dist/crewfoundry/pages/HrPayrollPagePage.js +10 -10
  62. package/dist/crewfoundry/pages/HrPayrollPagePage.js.map +1 -1
  63. package/dist/crewfoundry/pages/HrTimeTrackingPagePage.js +9 -9
  64. package/dist/crewfoundry/pages/HrTimeTrackingPagePage.js.map +1 -1
  65. package/dist/crewfoundry/pages/LearningAssessmentsPagePage.js +3 -3
  66. package/dist/crewfoundry/pages/LearningAssessmentsPagePage.js.map +1 -1
  67. package/dist/crewfoundry/pages/LearningCertificatesPagePage.js +2 -2
  68. package/dist/crewfoundry/pages/LearningCertificatesPagePage.js.map +1 -1
  69. package/dist/crewfoundry/pages/LearningCourseDetailsPagePage.js +11 -11
  70. package/dist/crewfoundry/pages/LearningCourseDetailsPagePage.js.map +1 -1
  71. package/dist/crewfoundry/pages/LearningCourseLearningPagePage.js +7 -7
  72. package/dist/crewfoundry/pages/LearningCourseLearningPagePage.js.map +1 -1
  73. package/dist/crewfoundry/pages/LearningCoursesPagePage.js +4 -4
  74. package/dist/crewfoundry/pages/LearningCoursesPagePage.js.map +1 -1
  75. package/dist/crewfoundry/pages/LearningLearningAnalyticsPagePage.js +9 -9
  76. package/dist/crewfoundry/pages/LearningLearningAnalyticsPagePage.js.map +1 -1
  77. package/dist/crewfoundry/pages/LearningLearningPagePage.js +10 -10
  78. package/dist/crewfoundry/pages/LearningLearningPagePage.js.map +1 -1
  79. package/dist/crewfoundry/pages/LearningLearningPathDetailPagePage.js +11 -11
  80. package/dist/crewfoundry/pages/LearningLearningPathDetailPagePage.js.map +1 -1
  81. package/dist/crewfoundry/pages/LearningLearningPathsPagePage.js +5 -5
  82. package/dist/crewfoundry/pages/LearningLearningPathsPagePage.js.map +1 -1
  83. package/dist/crewfoundry/pages/LearningMyLearningPagePage.js +7 -7
  84. package/dist/crewfoundry/pages/LearningMyLearningPagePage.js.map +1 -1
  85. package/dist/crewfoundry/pages/MarketplaceBookingManagementPagePage.js +3 -3
  86. package/dist/crewfoundry/pages/MarketplaceBookingManagementPagePage.js.map +1 -1
  87. package/dist/crewfoundry/pages/MarketplaceEarningsPagePage.js +7 -7
  88. package/dist/crewfoundry/pages/MarketplaceEarningsPagePage.js.map +1 -1
  89. package/dist/crewfoundry/pages/MarketplaceFreelancerProfilePageEnhancedPage.js +11 -11
  90. package/dist/crewfoundry/pages/MarketplaceFreelancerProfilePageEnhancedPage.js.map +1 -1
  91. package/dist/crewfoundry/pages/MarketplaceFreelancerProfilePagePage.js +11 -11
  92. package/dist/crewfoundry/pages/MarketplaceFreelancerProfilePagePage.js.map +1 -1
  93. package/dist/crewfoundry/pages/MarketplaceMarketplacePagePage.js +6 -6
  94. package/dist/crewfoundry/pages/MarketplaceMarketplacePagePage.js.map +1 -1
  95. package/dist/crewfoundry/pages/MarketplaceMarketplaceServicesPagePage.js +6 -6
  96. package/dist/crewfoundry/pages/MarketplaceMarketplaceServicesPagePage.js.map +1 -1
  97. package/dist/crewfoundry/pages/MarketplaceMessagingPagePage.js +7 -7
  98. package/dist/crewfoundry/pages/MarketplaceMessagingPagePage.js.map +1 -1
  99. package/dist/crewfoundry/pages/MarketplaceMyServicesPagePage.js +2 -2
  100. package/dist/crewfoundry/pages/MarketplaceMyServicesPagePage.js.map +1 -1
  101. package/dist/crewfoundry/pages/MarketplaceProjectDetailsPagePage.js +15 -15
  102. package/dist/crewfoundry/pages/MarketplaceProjectDetailsPagePage.js.map +1 -1
  103. package/dist/crewfoundry/pages/MarketplaceServiceDetailsPagePage.js +10 -10
  104. package/dist/crewfoundry/pages/MarketplaceServiceDetailsPagePage.js.map +1 -1
  105. package/dist/crewfoundry/pages/PaymentsEscrowPagePage.js +5 -5
  106. package/dist/crewfoundry/pages/PaymentsEscrowPagePage.js.map +1 -1
  107. package/dist/crewfoundry/pages/PaymentsInvoicesPagePage.js +6 -6
  108. package/dist/crewfoundry/pages/PaymentsInvoicesPagePage.js.map +1 -1
  109. package/dist/crewfoundry/pages/PaymentsPaymentDashboardPagePage.js +6 -6
  110. package/dist/crewfoundry/pages/PaymentsPaymentDashboardPagePage.js.map +1 -1
  111. package/dist/crewfoundry/pages/PaymentsPaymentMethodsPagePage.js +4 -4
  112. package/dist/crewfoundry/pages/PaymentsPaymentMethodsPagePage.js.map +1 -1
  113. package/dist/crewfoundry/pages/PaymentsSecurityPagePage.js +4 -4
  114. package/dist/crewfoundry/pages/PaymentsSecurityPagePage.js.map +1 -1
  115. package/dist/crewfoundry/pages/ProjectsCreateProjectPagePage.js +1 -1
  116. package/dist/crewfoundry/pages/ProjectsCreateProjectPagePage.js.map +1 -1
  117. package/dist/crewfoundry/pages/ProjectsProjectDetailsPagePage.js +15 -15
  118. package/dist/crewfoundry/pages/ProjectsProjectDetailsPagePage.js.map +1 -1
  119. package/dist/crewfoundry/pages/ProjectsProjectsPagePage.js +4 -4
  120. package/dist/crewfoundry/pages/ProjectsProjectsPagePage.js.map +1 -1
  121. package/dist/crewfoundry/pages/TeamsTeamAnalyticsPagePage.js +8 -8
  122. package/dist/crewfoundry/pages/TeamsTeamAnalyticsPagePage.js.map +1 -1
  123. package/dist/crewfoundry/pages/TeamsTeamDetailPagePage.js +14 -14
  124. package/dist/crewfoundry/pages/TeamsTeamDetailPagePage.js.map +1 -1
  125. package/dist/crewfoundry/pages/TeamsTeamDirectoryPagePage.js +6 -6
  126. package/dist/crewfoundry/pages/TeamsTeamDirectoryPagePage.js.map +1 -1
  127. package/dist/crewfoundry/pages/TeamsTeamSettingsPagePage.js +20 -20
  128. package/dist/crewfoundry/pages/TeamsTeamSettingsPagePage.js.map +1 -1
  129. package/dist/crewfoundry/pages/TeamsTeamsPagePage.js +3 -3
  130. package/dist/crewfoundry/pages/TeamsTeamsPagePage.js.map +1 -1
  131. package/package.json +1 -1
@@ -13,12 +13,12 @@ function u() {
13
13
  className: "text-2xl font-semibold",
14
14
  children: "Browse Services"
15
15
  }), /* @__PURE__ */ a("p", {
16
- className: "text-sm text-muted-foreground",
16
+ className: "text-sm text-text-secondary",
17
17
  children: [u.length, " services available"]
18
18
  })] }),
19
19
  /* @__PURE__ */ a("div", {
20
20
  className: "relative max-w-sm",
21
- children: [/* @__PURE__ */ i(n, { className: "absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground" }), /* @__PURE__ */ i(l, {
21
+ children: [/* @__PURE__ */ i(n, { className: "absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-text-secondary" }), /* @__PURE__ */ i(l, {
22
22
  placeholder: "Search services...",
23
23
  className: "pl-9",
24
24
  value: d,
@@ -28,7 +28,7 @@ function u() {
28
28
  /* @__PURE__ */ i(s, { children: /* @__PURE__ */ a(c, {
29
29
  className: "p-0",
30
30
  children: [/* @__PURE__ */ a("div", {
31
- className: "grid grid-cols-6 gap-2 text-xs font-medium text-muted-foreground p-4 border-b",
31
+ className: "grid grid-cols-6 gap-2 text-xs font-medium text-text-secondary p-4 border-b",
32
32
  children: [
33
33
  /* @__PURE__ */ i("span", { children: "Service" }),
34
34
  /* @__PURE__ */ i("span", { children: "Provider" }),
@@ -47,17 +47,17 @@ function u() {
47
47
  })
48
48
  ]
49
49
  }), p.map((e) => /* @__PURE__ */ a("div", {
50
- className: "grid grid-cols-6 gap-2 py-3 px-4 border-b last:border-0 text-sm hover:bg-muted/50",
50
+ className: "grid grid-cols-6 gap-2 py-3 px-4 border-b last:border-0 text-sm hover:bg-bg-sunken/50",
51
51
  children: [
52
52
  /* @__PURE__ */ a("div", { children: [/* @__PURE__ */ i("p", {
53
53
  className: "font-medium",
54
54
  children: e.title
55
55
  }), /* @__PURE__ */ a("p", {
56
- className: "text-xs text-muted-foreground truncate",
56
+ className: "text-xs text-text-secondary truncate",
57
57
  children: [e.description.slice(0, 60), "..."]
58
58
  })] }),
59
59
  /* @__PURE__ */ i("span", {
60
- className: "text-muted-foreground",
60
+ className: "text-text-secondary",
61
61
  children: e.provider
62
62
  }),
63
63
  /* @__PURE__ */ i(o, {
@@ -1 +1 @@
1
- {"version":3,"file":"MarketplaceMarketplaceServicesPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/MarketplaceMarketplaceServicesPagePage.tsx"],"sourcesContent":["import { useState } from 'react';\nimport {\n Badge,\n Card,\n CardContent,\n CardDescription,\n CardHeader,\n CardTitle,\n Input,\n} from '@burdenoff/fe-libs/ui';\nimport { Search, Star } from 'lucide-react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\nexport function MarketplaceMarketplaceServicesPagePage() {\n const { marketplaceServices } = useCrewFoundryStore();\n const [search, setSearch] = useState('');\n const filtered = marketplaceServices.filter((s) =>\n `${s.title} ${s.provider} ${s.category}`.toLowerCase().includes(search.toLowerCase())\n );\n\n return (\n <div className=\"space-y-6 p-6\">\n <div>\n <h1 className=\"text-2xl font-semibold\">Browse Services</h1>\n <p className=\"text-sm text-muted-foreground\">\n {marketplaceServices.length} services available\n </p>\n </div>\n <div className=\"relative max-w-sm\">\n <Search className=\"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground\" />\n <Input\n placeholder=\"Search services...\"\n className=\"pl-9\"\n value={search}\n onChange={(e) => setSearch(e.target.value)}\n />\n </div>\n <Card>\n <CardContent className=\"p-0\">\n <div className=\"grid grid-cols-6 gap-2 text-xs font-medium text-muted-foreground p-4 border-b\">\n <span>Service</span>\n <span>Provider</span>\n <span>Category</span>\n <span className=\"text-right\">Price</span>\n <span className=\"text-center\">Rating</span>\n <span className=\"text-center\">Status</span>\n </div>\n {filtered.map((svc) => (\n <div\n key={svc.id}\n className=\"grid grid-cols-6 gap-2 py-3 px-4 border-b last:border-0 text-sm hover:bg-muted/50\"\n >\n <div>\n <p className=\"font-medium\">{svc.title}</p>\n <p className=\"text-xs text-muted-foreground truncate\">\n {svc.description.slice(0, 60)}...\n </p>\n </div>\n <span className=\"text-muted-foreground\">{svc.provider}</span>\n <Badge variant=\"outline\" className=\"w-fit h-fit text-[10px]\">\n {svc.category}\n </Badge>\n <span className=\"text-right font-medium\">\n ${svc.price.toLocaleString()}/{svc.priceType}\n </span>\n <div className=\"flex items-center justify-center gap-1\">\n <Star className=\"h-3 w-3 text-yellow-500\" />\n {svc.rating} ({svc.reviews})\n </div>\n <div className=\"text-center\">\n <Badge\n variant={svc.status === 'active' ? 'default' : 'secondary'}\n className=\"text-[10px]\"\n >\n {svc.status}\n </Badge>\n </div>\n </div>\n ))}\n </CardContent>\n </Card>\n </div>\n );\n}\n"],"mappings":";;;;;;AAaA,SAAgB,IAAyC;CACvD,IAAM,EAAE,2BAAwB,GAAqB,EAC/C,CAAC,GAAQ,KAAa,EAAS,GAAG,EAClC,IAAW,EAAoB,QAAQ,MAC3C,GAAG,EAAE,MAAM,GAAG,EAAE,SAAS,GAAG,EAAE,WAAW,aAAa,CAAC,SAAS,EAAO,aAAa,CAAC,CACtF;AAED,QACE,kBAAC,OAAD;EAAK,WAAU;YAAf;GACE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,MAAD;IAAI,WAAU;cAAyB;IAAoB,CAAA,EAC3D,kBAAC,KAAD;IAAG,WAAU;cAAb,CACG,EAAoB,QAAO,sBAC1B;MACA,EAAA,CAAA;GACN,kBAAC,OAAD;IAAK,WAAU;cAAf,CACE,kBAAC,GAAD,EAAQ,WAAU,0EAA2E,CAAA,EAC7F,kBAAC,GAAD;KACE,aAAY;KACZ,WAAU;KACV,OAAO;KACP,WAAW,MAAM,EAAU,EAAE,OAAO,MAAM;KAC1C,CAAA,CACE;;GACN,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;IAAa,WAAU;cAAvB,CACE,kBAAC,OAAD;KAAK,WAAU;eAAf;MACE,kBAAC,QAAD,EAAA,UAAM,WAAc,CAAA;MACpB,kBAAC,QAAD,EAAA,UAAM,YAAe,CAAA;MACrB,kBAAC,QAAD,EAAA,UAAM,YAAe,CAAA;MACrB,kBAAC,QAAD;OAAM,WAAU;iBAAa;OAAY,CAAA;MACzC,kBAAC,QAAD;OAAM,WAAU;iBAAc;OAAa,CAAA;MAC3C,kBAAC,QAAD;OAAM,WAAU;iBAAc;OAAa,CAAA;MACvC;QACL,EAAS,KAAK,MACb,kBAAC,OAAD;KAEE,WAAU;eAFZ;MAIE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,KAAD;OAAG,WAAU;iBAAe,EAAI;OAAU,CAAA,EAC1C,kBAAC,KAAD;OAAG,WAAU;iBAAb,CACG,EAAI,YAAY,MAAM,GAAG,GAAG,EAAC,MAC5B;SACA,EAAA,CAAA;MACN,kBAAC,QAAD;OAAM,WAAU;iBAAyB,EAAI;OAAgB,CAAA;MAC7D,kBAAC,GAAD;OAAO,SAAQ;OAAU,WAAU;iBAChC,EAAI;OACC,CAAA;MACR,kBAAC,QAAD;OAAM,WAAU;iBAAhB;QAAyC;QACrC,EAAI,MAAM,gBAAgB;QAAC;QAAE,EAAI;QAC9B;;MACP,kBAAC,OAAD;OAAK,WAAU;iBAAf;QACE,kBAAC,GAAD,EAAM,WAAU,2BAA4B,CAAA;QAC3C,EAAI;QAAO;QAAG,EAAI;QAAQ;QACvB;;MACN,kBAAC,OAAD;OAAK,WAAU;iBACb,kBAAC,GAAD;QACE,SAAS,EAAI,WAAW,WAAW,YAAY;QAC/C,WAAU;kBAET,EAAI;QACC,CAAA;OACJ,CAAA;MACF;OA5BC,EAAI,GA4BL,CACN,CACU;OACT,CAAA;GACH"}
1
+ {"version":3,"file":"MarketplaceMarketplaceServicesPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/MarketplaceMarketplaceServicesPagePage.tsx"],"sourcesContent":["import { useState } from 'react';\nimport {\n Badge,\n Card,\n CardContent,\n CardDescription,\n CardHeader,\n CardTitle,\n Input,\n} from '@burdenoff/fe-libs/ui';\nimport { Search, Star } from 'lucide-react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\nexport function MarketplaceMarketplaceServicesPagePage() {\n const { marketplaceServices } = useCrewFoundryStore();\n const [search, setSearch] = useState('');\n const filtered = marketplaceServices.filter((s) =>\n `${s.title} ${s.provider} ${s.category}`.toLowerCase().includes(search.toLowerCase())\n );\n\n return (\n <div className=\"space-y-6 p-6\">\n <div>\n <h1 className=\"text-2xl font-semibold\">Browse Services</h1>\n <p className=\"text-sm text-text-secondary\">\n {marketplaceServices.length} services available\n </p>\n </div>\n <div className=\"relative max-w-sm\">\n <Search className=\"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-text-secondary\" />\n <Input\n placeholder=\"Search services...\"\n className=\"pl-9\"\n value={search}\n onChange={(e) => setSearch(e.target.value)}\n />\n </div>\n <Card>\n <CardContent className=\"p-0\">\n <div className=\"grid grid-cols-6 gap-2 text-xs font-medium text-text-secondary p-4 border-b\">\n <span>Service</span>\n <span>Provider</span>\n <span>Category</span>\n <span className=\"text-right\">Price</span>\n <span className=\"text-center\">Rating</span>\n <span className=\"text-center\">Status</span>\n </div>\n {filtered.map((svc) => (\n <div\n key={svc.id}\n className=\"grid grid-cols-6 gap-2 py-3 px-4 border-b last:border-0 text-sm hover:bg-bg-sunken/50\"\n >\n <div>\n <p className=\"font-medium\">{svc.title}</p>\n <p className=\"text-xs text-text-secondary truncate\">\n {svc.description.slice(0, 60)}...\n </p>\n </div>\n <span className=\"text-text-secondary\">{svc.provider}</span>\n <Badge variant=\"outline\" className=\"w-fit h-fit text-[10px]\">\n {svc.category}\n </Badge>\n <span className=\"text-right font-medium\">\n ${svc.price.toLocaleString()}/{svc.priceType}\n </span>\n <div className=\"flex items-center justify-center gap-1\">\n <Star className=\"h-3 w-3 text-yellow-500\" />\n {svc.rating} ({svc.reviews})\n </div>\n <div className=\"text-center\">\n <Badge\n variant={svc.status === 'active' ? 'default' : 'secondary'}\n className=\"text-[10px]\"\n >\n {svc.status}\n </Badge>\n </div>\n </div>\n ))}\n </CardContent>\n </Card>\n </div>\n );\n}\n"],"mappings":";;;;;;AAaA,SAAgB,IAAyC;CACvD,IAAM,EAAE,2BAAwB,GAAqB,EAC/C,CAAC,GAAQ,KAAa,EAAS,GAAG,EAClC,IAAW,EAAoB,QAAQ,MAC3C,GAAG,EAAE,MAAM,GAAG,EAAE,SAAS,GAAG,EAAE,WAAW,aAAa,CAAC,SAAS,EAAO,aAAa,CAAC,CACtF;AAED,QACE,kBAAC,OAAD;EAAK,WAAU;YAAf;GACE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,MAAD;IAAI,WAAU;cAAyB;IAAoB,CAAA,EAC3D,kBAAC,KAAD;IAAG,WAAU;cAAb,CACG,EAAoB,QAAO,sBAC1B;MACA,EAAA,CAAA;GACN,kBAAC,OAAD;IAAK,WAAU;cAAf,CACE,kBAAC,GAAD,EAAQ,WAAU,wEAAyE,CAAA,EAC3F,kBAAC,GAAD;KACE,aAAY;KACZ,WAAU;KACV,OAAO;KACP,WAAW,MAAM,EAAU,EAAE,OAAO,MAAM;KAC1C,CAAA,CACE;;GACN,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;IAAa,WAAU;cAAvB,CACE,kBAAC,OAAD;KAAK,WAAU;eAAf;MACE,kBAAC,QAAD,EAAA,UAAM,WAAc,CAAA;MACpB,kBAAC,QAAD,EAAA,UAAM,YAAe,CAAA;MACrB,kBAAC,QAAD,EAAA,UAAM,YAAe,CAAA;MACrB,kBAAC,QAAD;OAAM,WAAU;iBAAa;OAAY,CAAA;MACzC,kBAAC,QAAD;OAAM,WAAU;iBAAc;OAAa,CAAA;MAC3C,kBAAC,QAAD;OAAM,WAAU;iBAAc;OAAa,CAAA;MACvC;QACL,EAAS,KAAK,MACb,kBAAC,OAAD;KAEE,WAAU;eAFZ;MAIE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,KAAD;OAAG,WAAU;iBAAe,EAAI;OAAU,CAAA,EAC1C,kBAAC,KAAD;OAAG,WAAU;iBAAb,CACG,EAAI,YAAY,MAAM,GAAG,GAAG,EAAC,MAC5B;SACA,EAAA,CAAA;MACN,kBAAC,QAAD;OAAM,WAAU;iBAAuB,EAAI;OAAgB,CAAA;MAC3D,kBAAC,GAAD;OAAO,SAAQ;OAAU,WAAU;iBAChC,EAAI;OACC,CAAA;MACR,kBAAC,QAAD;OAAM,WAAU;iBAAhB;QAAyC;QACrC,EAAI,MAAM,gBAAgB;QAAC;QAAE,EAAI;QAC9B;;MACP,kBAAC,OAAD;OAAK,WAAU;iBAAf;QACE,kBAAC,GAAD,EAAM,WAAU,2BAA4B,CAAA;QAC3C,EAAI;QAAO;QAAG,EAAI;QAAQ;QACvB;;MACN,kBAAC,OAAD;OAAK,WAAU;iBACb,kBAAC,GAAD;QACE,SAAS,EAAI,WAAW,WAAW,YAAY;QAC/C,WAAU;kBAET,EAAI;QACC,CAAA;OACJ,CAAA;MACF;OA5BC,EAAI,GA4BL,CACN,CACU;OACT,CAAA;GACH"}
@@ -34,12 +34,12 @@ function u() {
34
34
  className: "text-2xl font-semibold",
35
35
  children: "Service Messages"
36
36
  }), /* @__PURE__ */ i("p", {
37
- className: "text-sm text-muted-foreground",
37
+ className: "text-sm text-text-secondary",
38
38
  children: "Communication with service providers"
39
39
  })] }),
40
40
  /* @__PURE__ */ a("div", {
41
41
  className: "relative max-w-sm",
42
- children: [/* @__PURE__ */ i(r, { className: "absolute top-1/2 left-3 h-4 w-4 -translate-y-1/2 text-muted-foreground" }), /* @__PURE__ */ i(c, {
42
+ children: [/* @__PURE__ */ i(r, { className: "absolute top-1/2 left-3 h-4 w-4 -translate-y-1/2 text-text-secondary" }), /* @__PURE__ */ i(c, {
43
43
  placeholder: "Search messages...",
44
44
  className: "pl-9",
45
45
  value: u,
@@ -49,10 +49,10 @@ function u() {
49
49
  /* @__PURE__ */ i(o, { children: /* @__PURE__ */ i(s, {
50
50
  className: "p-0",
51
51
  children: g.map((e) => /* @__PURE__ */ a("div", {
52
- className: `flex cursor-pointer items-center gap-3 border-b p-4 last:border-0 hover:bg-muted/50 ${e.unread ? "bg-blue-50/30" : ""}`,
52
+ className: `flex cursor-pointer items-center gap-3 border-b p-4 last:border-0 hover:bg-bg-sunken/50 ${e.unread ? "bg-blue-50/30" : ""}`,
53
53
  children: [
54
54
  /* @__PURE__ */ i("div", {
55
- className: "flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-full bg-primary/10 text-sm font-bold",
55
+ className: "flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-full bg-action-primary-bg/10 text-sm font-bold",
56
56
  children: e.from.split(" ").map((e) => e[0]).join("")
57
57
  }),
58
58
  /* @__PURE__ */ a("div", {
@@ -64,16 +64,16 @@ function u() {
64
64
  className: `text-sm ${e.unread ? "font-bold" : "font-medium"}`,
65
65
  children: e.from
66
66
  }), /* @__PURE__ */ i("span", {
67
- className: "text-xs text-muted-foreground",
67
+ className: "text-xs text-text-secondary",
68
68
  children: e.time
69
69
  })]
70
70
  }),
71
71
  /* @__PURE__ */ i("p", {
72
- className: "text-xs text-muted-foreground",
72
+ className: "text-xs text-text-secondary",
73
73
  children: e.company
74
74
  }),
75
75
  /* @__PURE__ */ i("p", {
76
- className: "mt-0.5 truncate text-xs text-muted-foreground",
76
+ className: "mt-0.5 truncate text-xs text-text-secondary",
77
77
  children: e.message
78
78
  })
79
79
  ]
@@ -1 +1 @@
1
- {"version":3,"file":"MarketplaceMessagingPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/MarketplaceMessagingPagePage.tsx"],"sourcesContent":["import { useMemo, useState } from 'react';\nimport { Card, CardContent, Input } from '@burdenoff/fe-libs/ui';\nimport { Search } from 'lucide-react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\ntype ServiceMessage = {\n id: string;\n from: string;\n company: string;\n message: string;\n time: string;\n unread: boolean;\n};\n\nconst timeAgo = (value: string): string => {\n const parsed = new Date(value);\n if (Number.isNaN(parsed.getTime())) {\n return 'recently';\n }\n const hours = Math.max(1, Math.floor((Date.now() - parsed.getTime()) / (1000 * 60 * 60)));\n return hours < 24 ? `${hours} hours ago` : `${Math.floor(hours / 24)} days ago`;\n};\n\nexport function MarketplaceMessagingPagePage() {\n const [search, setSearch] = useState('');\n const { marketplaceServices, notifications, clients, vendors } = useCrewFoundryStore();\n\n const serviceMessages = useMemo<ServiceMessage[]>(() => {\n return notifications.slice(0, 20).map((notification, index) => {\n const service = marketplaceServices[index % Math.max(marketplaceServices.length, 1)];\n const counterparty =\n clients[index % Math.max(clients.length, 1)]?.name ||\n vendors[index % Math.max(vendors.length, 1)]?.name ||\n 'Marketplace Partner';\n\n return {\n id: notification.id,\n from: service?.provider || counterparty,\n company: counterparty,\n message: notification.message,\n time: timeAgo(notification.createdAt),\n unread: !notification.read,\n };\n });\n }, [clients, marketplaceServices, notifications, vendors]);\n\n const filtered = serviceMessages.filter((message) =>\n `${message.from} ${message.company} ${message.message}`\n .toLowerCase()\n .includes(search.toLowerCase())\n );\n\n return (\n <div className=\"space-y-6 p-6\">\n <div>\n <h1 className=\"text-2xl font-semibold\">Service Messages</h1>\n <p className=\"text-sm text-muted-foreground\">Communication with service providers</p>\n </div>\n\n <div className=\"relative max-w-sm\">\n <Search className=\"absolute top-1/2 left-3 h-4 w-4 -translate-y-1/2 text-muted-foreground\" />\n <Input\n placeholder=\"Search messages...\"\n className=\"pl-9\"\n value={search}\n onChange={(event) => setSearch(event.target.value)}\n />\n </div>\n\n <Card>\n <CardContent className=\"p-0\">\n {filtered.map((message) => (\n <div\n key={message.id}\n className={`flex cursor-pointer items-center gap-3 border-b p-4 last:border-0 hover:bg-muted/50 ${message.unread ? 'bg-blue-50/30' : ''}`}\n >\n <div className=\"flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-full bg-primary/10 text-sm font-bold\">\n {message.from\n .split(' ')\n .map((part) => part[0])\n .join('')}\n </div>\n <div className=\"min-w-0 flex-1\">\n <div className=\"flex items-center justify-between\">\n <p className={`text-sm ${message.unread ? 'font-bold' : 'font-medium'}`}>\n {message.from}\n </p>\n <span className=\"text-xs text-muted-foreground\">{message.time}</span>\n </div>\n <p className=\"text-xs text-muted-foreground\">{message.company}</p>\n <p className=\"mt-0.5 truncate text-xs text-muted-foreground\">{message.message}</p>\n </div>\n {message.unread ? (\n <div className=\"h-2 w-2 flex-shrink-0 rounded-full bg-blue-500\" />\n ) : null}\n </div>\n ))}\n </CardContent>\n </Card>\n </div>\n );\n}\n"],"mappings":";;;;;;AAcA,IAAM,KAAW,MAA0B;CACzC,IAAM,IAAS,IAAI,KAAK,EAAM;AAC9B,KAAI,OAAO,MAAM,EAAO,SAAS,CAAC,CAChC,QAAO;CAET,IAAM,IAAQ,KAAK,IAAI,GAAG,KAAK,OAAO,KAAK,KAAK,GAAG,EAAO,SAAS,KAAK,MAAO,KAAK,IAAI,CAAC;AACzF,QAAO,IAAQ,KAAK,GAAG,EAAM,cAAc,GAAG,KAAK,MAAM,IAAQ,GAAG,CAAC;;AAGvE,SAAgB,IAA+B;CAC7C,IAAM,CAAC,GAAQ,KAAa,EAAS,GAAG,EAClC,EAAE,wBAAqB,kBAAe,YAAS,eAAY,GAAqB,EAqBhF,IAnBkB,QACf,EAAc,MAAM,GAAG,GAAG,CAAC,KAAK,GAAc,MAAU;EAC7D,IAAM,IAAU,EAAoB,IAAQ,KAAK,IAAI,EAAoB,QAAQ,EAAE,GAC7E,IACJ,EAAQ,IAAQ,KAAK,IAAI,EAAQ,QAAQ,EAAE,GAAG,QAC9C,EAAQ,IAAQ,KAAK,IAAI,EAAQ,QAAQ,EAAE,GAAG,QAC9C;AAEF,SAAO;GACL,IAAI,EAAa;GACjB,MAAM,GAAS,YAAY;GAC3B,SAAS;GACT,SAAS,EAAa;GACtB,MAAM,EAAQ,EAAa,UAAU;GACrC,QAAQ,CAAC,EAAa;GACvB;GACD,EACD;EAAC;EAAS;EAAqB;EAAe;EAAQ,CAAC,CAEzB,QAAQ,MACvC,GAAG,EAAQ,KAAK,GAAG,EAAQ,QAAQ,GAAG,EAAQ,UAC3C,aAAa,CACb,SAAS,EAAO,aAAa,CAAC,CAClC;AAED,QACE,kBAAC,OAAD;EAAK,WAAU;YAAf;GACE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,MAAD;IAAI,WAAU;cAAyB;IAAqB,CAAA,EAC5D,kBAAC,KAAD;IAAG,WAAU;cAAgC;IAAwC,CAAA,CACjF,EAAA,CAAA;GAEN,kBAAC,OAAD;IAAK,WAAU;cAAf,CACE,kBAAC,GAAD,EAAQ,WAAU,0EAA2E,CAAA,EAC7F,kBAAC,GAAD;KACE,aAAY;KACZ,WAAU;KACV,OAAO;KACP,WAAW,MAAU,EAAU,EAAM,OAAO,MAAM;KAClD,CAAA,CACE;;GAEN,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;IAAa,WAAU;cACpB,EAAS,KAAK,MACb,kBAAC,OAAD;KAEE,WAAW,uFAAuF,EAAQ,SAAS,kBAAkB;eAFvI;MAIE,kBAAC,OAAD;OAAK,WAAU;iBACZ,EAAQ,KACN,MAAM,IAAI,CACV,KAAK,MAAS,EAAK,GAAG,CACtB,KAAK,GAAG;OACP,CAAA;MACN,kBAAC,OAAD;OAAK,WAAU;iBAAf;QACE,kBAAC,OAAD;SAAK,WAAU;mBAAf,CACE,kBAAC,KAAD;UAAG,WAAW,WAAW,EAAQ,SAAS,cAAc;oBACrD,EAAQ;UACP,CAAA,EACJ,kBAAC,QAAD;UAAM,WAAU;oBAAiC,EAAQ;UAAY,CAAA,CACjE;;QACN,kBAAC,KAAD;SAAG,WAAU;mBAAiC,EAAQ;SAAY,CAAA;QAClE,kBAAC,KAAD;SAAG,WAAU;mBAAiD,EAAQ;SAAY,CAAA;QAC9E;;MACL,EAAQ,SACP,kBAAC,OAAD,EAAK,WAAU,kDAAmD,CAAA,GAChE;MACA;OAtBC,EAAQ,GAsBT,CACN;IACU,CAAA,EACT,CAAA;GACH"}
1
+ {"version":3,"file":"MarketplaceMessagingPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/MarketplaceMessagingPagePage.tsx"],"sourcesContent":["import { useMemo, useState } from 'react';\nimport { Card, CardContent, Input } from '@burdenoff/fe-libs/ui';\nimport { Search } from 'lucide-react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\ntype ServiceMessage = {\n id: string;\n from: string;\n company: string;\n message: string;\n time: string;\n unread: boolean;\n};\n\nconst timeAgo = (value: string): string => {\n const parsed = new Date(value);\n if (Number.isNaN(parsed.getTime())) {\n return 'recently';\n }\n const hours = Math.max(1, Math.floor((Date.now() - parsed.getTime()) / (1000 * 60 * 60)));\n return hours < 24 ? `${hours} hours ago` : `${Math.floor(hours / 24)} days ago`;\n};\n\nexport function MarketplaceMessagingPagePage() {\n const [search, setSearch] = useState('');\n const { marketplaceServices, notifications, clients, vendors } = useCrewFoundryStore();\n\n const serviceMessages = useMemo<ServiceMessage[]>(() => {\n return notifications.slice(0, 20).map((notification, index) => {\n const service = marketplaceServices[index % Math.max(marketplaceServices.length, 1)];\n const counterparty =\n clients[index % Math.max(clients.length, 1)]?.name ||\n vendors[index % Math.max(vendors.length, 1)]?.name ||\n 'Marketplace Partner';\n\n return {\n id: notification.id,\n from: service?.provider || counterparty,\n company: counterparty,\n message: notification.message,\n time: timeAgo(notification.createdAt),\n unread: !notification.read,\n };\n });\n }, [clients, marketplaceServices, notifications, vendors]);\n\n const filtered = serviceMessages.filter((message) =>\n `${message.from} ${message.company} ${message.message}`\n .toLowerCase()\n .includes(search.toLowerCase())\n );\n\n return (\n <div className=\"space-y-6 p-6\">\n <div>\n <h1 className=\"text-2xl font-semibold\">Service Messages</h1>\n <p className=\"text-sm text-text-secondary\">Communication with service providers</p>\n </div>\n\n <div className=\"relative max-w-sm\">\n <Search className=\"absolute top-1/2 left-3 h-4 w-4 -translate-y-1/2 text-text-secondary\" />\n <Input\n placeholder=\"Search messages...\"\n className=\"pl-9\"\n value={search}\n onChange={(event) => setSearch(event.target.value)}\n />\n </div>\n\n <Card>\n <CardContent className=\"p-0\">\n {filtered.map((message) => (\n <div\n key={message.id}\n className={`flex cursor-pointer items-center gap-3 border-b p-4 last:border-0 hover:bg-bg-sunken/50 ${message.unread ? 'bg-blue-50/30' : ''}`}\n >\n <div className=\"flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-full bg-action-primary-bg/10 text-sm font-bold\">\n {message.from\n .split(' ')\n .map((part) => part[0])\n .join('')}\n </div>\n <div className=\"min-w-0 flex-1\">\n <div className=\"flex items-center justify-between\">\n <p className={`text-sm ${message.unread ? 'font-bold' : 'font-medium'}`}>\n {message.from}\n </p>\n <span className=\"text-xs text-text-secondary\">{message.time}</span>\n </div>\n <p className=\"text-xs text-text-secondary\">{message.company}</p>\n <p className=\"mt-0.5 truncate text-xs text-text-secondary\">{message.message}</p>\n </div>\n {message.unread ? (\n <div className=\"h-2 w-2 flex-shrink-0 rounded-full bg-blue-500\" />\n ) : null}\n </div>\n ))}\n </CardContent>\n </Card>\n </div>\n );\n}\n"],"mappings":";;;;;;AAcA,IAAM,KAAW,MAA0B;CACzC,IAAM,IAAS,IAAI,KAAK,EAAM;AAC9B,KAAI,OAAO,MAAM,EAAO,SAAS,CAAC,CAChC,QAAO;CAET,IAAM,IAAQ,KAAK,IAAI,GAAG,KAAK,OAAO,KAAK,KAAK,GAAG,EAAO,SAAS,KAAK,MAAO,KAAK,IAAI,CAAC;AACzF,QAAO,IAAQ,KAAK,GAAG,EAAM,cAAc,GAAG,KAAK,MAAM,IAAQ,GAAG,CAAC;;AAGvE,SAAgB,IAA+B;CAC7C,IAAM,CAAC,GAAQ,KAAa,EAAS,GAAG,EAClC,EAAE,wBAAqB,kBAAe,YAAS,eAAY,GAAqB,EAqBhF,IAnBkB,QACf,EAAc,MAAM,GAAG,GAAG,CAAC,KAAK,GAAc,MAAU;EAC7D,IAAM,IAAU,EAAoB,IAAQ,KAAK,IAAI,EAAoB,QAAQ,EAAE,GAC7E,IACJ,EAAQ,IAAQ,KAAK,IAAI,EAAQ,QAAQ,EAAE,GAAG,QAC9C,EAAQ,IAAQ,KAAK,IAAI,EAAQ,QAAQ,EAAE,GAAG,QAC9C;AAEF,SAAO;GACL,IAAI,EAAa;GACjB,MAAM,GAAS,YAAY;GAC3B,SAAS;GACT,SAAS,EAAa;GACtB,MAAM,EAAQ,EAAa,UAAU;GACrC,QAAQ,CAAC,EAAa;GACvB;GACD,EACD;EAAC;EAAS;EAAqB;EAAe;EAAQ,CAAC,CAEzB,QAAQ,MACvC,GAAG,EAAQ,KAAK,GAAG,EAAQ,QAAQ,GAAG,EAAQ,UAC3C,aAAa,CACb,SAAS,EAAO,aAAa,CAAC,CAClC;AAED,QACE,kBAAC,OAAD;EAAK,WAAU;YAAf;GACE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,MAAD;IAAI,WAAU;cAAyB;IAAqB,CAAA,EAC5D,kBAAC,KAAD;IAAG,WAAU;cAA8B;IAAwC,CAAA,CAC/E,EAAA,CAAA;GAEN,kBAAC,OAAD;IAAK,WAAU;cAAf,CACE,kBAAC,GAAD,EAAQ,WAAU,wEAAyE,CAAA,EAC3F,kBAAC,GAAD;KACE,aAAY;KACZ,WAAU;KACV,OAAO;KACP,WAAW,MAAU,EAAU,EAAM,OAAO,MAAM;KAClD,CAAA,CACE;;GAEN,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;IAAa,WAAU;cACpB,EAAS,KAAK,MACb,kBAAC,OAAD;KAEE,WAAW,2FAA2F,EAAQ,SAAS,kBAAkB;eAF3I;MAIE,kBAAC,OAAD;OAAK,WAAU;iBACZ,EAAQ,KACN,MAAM,IAAI,CACV,KAAK,MAAS,EAAK,GAAG,CACtB,KAAK,GAAG;OACP,CAAA;MACN,kBAAC,OAAD;OAAK,WAAU;iBAAf;QACE,kBAAC,OAAD;SAAK,WAAU;mBAAf,CACE,kBAAC,KAAD;UAAG,WAAW,WAAW,EAAQ,SAAS,cAAc;oBACrD,EAAQ;UACP,CAAA,EACJ,kBAAC,QAAD;UAAM,WAAU;oBAA+B,EAAQ;UAAY,CAAA,CAC/D;;QACN,kBAAC,KAAD;SAAG,WAAU;mBAA+B,EAAQ;SAAY,CAAA;QAChE,kBAAC,KAAD;SAAG,WAAU;mBAA+C,EAAQ;SAAY,CAAA;QAC5E;;MACL,EAAQ,SACP,kBAAC,OAAD,EAAK,WAAU,kDAAmD,CAAA,GAChE;MACA;OAtBC,EAAQ,GAsBT,CACN;IACU,CAAA,EACT,CAAA;GACH"}
@@ -13,7 +13,7 @@ function d() {
13
13
  className: "text-2xl font-semibold",
14
14
  children: "My Services"
15
15
  }), /* @__PURE__ */ r("p", {
16
- className: "text-sm text-muted-foreground",
16
+ className: "text-sm text-text-secondary",
17
17
  children: "Manage your listed services"
18
18
  })] }), /* @__PURE__ */ i(o, {
19
19
  size: "sm",
@@ -33,7 +33,7 @@ function d() {
33
33
  })]
34
34
  }) }), /* @__PURE__ */ i(c, { children: [
35
35
  /* @__PURE__ */ r("p", {
36
- className: "text-sm text-muted-foreground mb-3",
36
+ className: "text-sm text-text-secondary mb-3",
37
37
  children: e.description
38
38
  }),
39
39
  /* @__PURE__ */ i("div", {
@@ -1 +1 @@
1
- {"version":3,"file":"MarketplaceMyServicesPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/MarketplaceMyServicesPagePage.tsx"],"sourcesContent":["import { Badge, Button, Card, CardContent, CardHeader, CardTitle } from '@burdenoff/fe-libs/ui';\nimport { Plus, Star } from 'lucide-react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\nexport function MarketplaceMyServicesPagePage() {\n const { marketplaceServices } = useCrewFoundryStore();\n // Show a subset as \"my services\"\n const myServices = marketplaceServices.slice(0, 3);\n\n return (\n <div className=\"space-y-6 p-6\">\n <div className=\"flex items-center justify-between\">\n <div>\n <h1 className=\"text-2xl font-semibold\">My Services</h1>\n <p className=\"text-sm text-muted-foreground\">Manage your listed services</p>\n </div>\n <Button size=\"sm\">\n <Plus className=\"h-4 w-4 mr-1\" />\n Create Service\n </Button>\n </div>\n <div className=\"grid gap-4 md:grid-cols-2 lg:grid-cols-3\">\n {myServices.map((svc) => (\n <Card key={svc.id}>\n <CardHeader>\n <div className=\"flex items-center justify-between\">\n <CardTitle className=\"text-base\">{svc.title}</CardTitle>\n <Badge\n variant={svc.status === 'active' ? 'default' : 'secondary'}\n className=\"text-[10px]\"\n >\n {svc.status}\n </Badge>\n </div>\n </CardHeader>\n <CardContent>\n <p className=\"text-sm text-muted-foreground mb-3\">{svc.description}</p>\n <div className=\"flex items-center justify-between text-sm\">\n <span className=\"font-bold\">\n ${svc.price}/{svc.priceType}\n </span>\n <span className=\"flex items-center gap-1\">\n <Star className=\"h-3 w-3 text-yellow-500\" />\n {svc.rating} ({svc.reviews})\n </span>\n </div>\n <div className=\"flex gap-2 mt-3\">\n <Button variant=\"outline\" size=\"sm\" className=\"flex-1\">\n Edit\n </Button>\n <Button size=\"sm\" className=\"flex-1\">\n View\n </Button>\n </div>\n </CardContent>\n </Card>\n ))}\n </div>\n </div>\n );\n}\n"],"mappings":";;;;;AAIA,SAAgB,IAAgC;CAC9C,IAAM,EAAE,2BAAwB,GAAqB,EAE/C,IAAa,EAAoB,MAAM,GAAG,EAAE;AAElD,QACE,kBAAC,OAAD;EAAK,WAAU;YAAf,CACE,kBAAC,OAAD;GAAK,WAAU;aAAf,CACE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,MAAD;IAAI,WAAU;cAAyB;IAAgB,CAAA,EACvD,kBAAC,KAAD;IAAG,WAAU;cAAgC;IAA+B,CAAA,CACxE,EAAA,CAAA,EACN,kBAAC,GAAD;IAAQ,MAAK;cAAb,CACE,kBAAC,GAAD,EAAM,WAAU,gBAAiB,CAAA,EAAA,iBAE1B;MACL;MACN,kBAAC,OAAD;GAAK,WAAU;aACZ,EAAW,KAAK,MACf,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD,EAAA,UACE,kBAAC,OAAD;IAAK,WAAU;cAAf,CACE,kBAAC,GAAD;KAAW,WAAU;eAAa,EAAI;KAAkB,CAAA,EACxD,kBAAC,GAAD;KACE,SAAS,EAAI,WAAW,WAAW,YAAY;KAC/C,WAAU;eAET,EAAI;KACC,CAAA,CACJ;OACK,CAAA,EACb,kBAAC,GAAD,EAAA,UAAA;IACE,kBAAC,KAAD;KAAG,WAAU;eAAsC,EAAI;KAAgB,CAAA;IACvE,kBAAC,OAAD;KAAK,WAAU;eAAf,CACE,kBAAC,QAAD;MAAM,WAAU;gBAAhB;OAA4B;OACxB,EAAI;OAAM;OAAE,EAAI;OACb;SACP,kBAAC,QAAD;MAAM,WAAU;gBAAhB;OACE,kBAAC,GAAD,EAAM,WAAU,2BAA4B,CAAA;OAC3C,EAAI;OAAO;OAAG,EAAI;OAAQ;OACtB;QACH;;IACN,kBAAC,OAAD;KAAK,WAAU;eAAf,CACE,kBAAC,GAAD;MAAQ,SAAQ;MAAU,MAAK;MAAK,WAAU;gBAAS;MAE9C,CAAA,EACT,kBAAC,GAAD;MAAQ,MAAK;MAAK,WAAU;gBAAS;MAE5B,CAAA,CACL;;IACM,EAAA,CAAA,CACT,EAAA,EAhCI,EAAI,GAgCR,CACP;GACE,CAAA,CACF"}
1
+ {"version":3,"file":"MarketplaceMyServicesPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/MarketplaceMyServicesPagePage.tsx"],"sourcesContent":["import { Badge, Button, Card, CardContent, CardHeader, CardTitle } from '@burdenoff/fe-libs/ui';\nimport { Plus, Star } from 'lucide-react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\nexport function MarketplaceMyServicesPagePage() {\n const { marketplaceServices } = useCrewFoundryStore();\n // Show a subset as \"my services\"\n const myServices = marketplaceServices.slice(0, 3);\n\n return (\n <div className=\"space-y-6 p-6\">\n <div className=\"flex items-center justify-between\">\n <div>\n <h1 className=\"text-2xl font-semibold\">My Services</h1>\n <p className=\"text-sm text-text-secondary\">Manage your listed services</p>\n </div>\n <Button size=\"sm\">\n <Plus className=\"h-4 w-4 mr-1\" />\n Create Service\n </Button>\n </div>\n <div className=\"grid gap-4 md:grid-cols-2 lg:grid-cols-3\">\n {myServices.map((svc) => (\n <Card key={svc.id}>\n <CardHeader>\n <div className=\"flex items-center justify-between\">\n <CardTitle className=\"text-base\">{svc.title}</CardTitle>\n <Badge\n variant={svc.status === 'active' ? 'default' : 'secondary'}\n className=\"text-[10px]\"\n >\n {svc.status}\n </Badge>\n </div>\n </CardHeader>\n <CardContent>\n <p className=\"text-sm text-text-secondary mb-3\">{svc.description}</p>\n <div className=\"flex items-center justify-between text-sm\">\n <span className=\"font-bold\">\n ${svc.price}/{svc.priceType}\n </span>\n <span className=\"flex items-center gap-1\">\n <Star className=\"h-3 w-3 text-yellow-500\" />\n {svc.rating} ({svc.reviews})\n </span>\n </div>\n <div className=\"flex gap-2 mt-3\">\n <Button variant=\"outline\" size=\"sm\" className=\"flex-1\">\n Edit\n </Button>\n <Button size=\"sm\" className=\"flex-1\">\n View\n </Button>\n </div>\n </CardContent>\n </Card>\n ))}\n </div>\n </div>\n );\n}\n"],"mappings":";;;;;AAIA,SAAgB,IAAgC;CAC9C,IAAM,EAAE,2BAAwB,GAAqB,EAE/C,IAAa,EAAoB,MAAM,GAAG,EAAE;AAElD,QACE,kBAAC,OAAD;EAAK,WAAU;YAAf,CACE,kBAAC,OAAD;GAAK,WAAU;aAAf,CACE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,MAAD;IAAI,WAAU;cAAyB;IAAgB,CAAA,EACvD,kBAAC,KAAD;IAAG,WAAU;cAA8B;IAA+B,CAAA,CACtE,EAAA,CAAA,EACN,kBAAC,GAAD;IAAQ,MAAK;cAAb,CACE,kBAAC,GAAD,EAAM,WAAU,gBAAiB,CAAA,EAAA,iBAE1B;MACL;MACN,kBAAC,OAAD;GAAK,WAAU;aACZ,EAAW,KAAK,MACf,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD,EAAA,UACE,kBAAC,OAAD;IAAK,WAAU;cAAf,CACE,kBAAC,GAAD;KAAW,WAAU;eAAa,EAAI;KAAkB,CAAA,EACxD,kBAAC,GAAD;KACE,SAAS,EAAI,WAAW,WAAW,YAAY;KAC/C,WAAU;eAET,EAAI;KACC,CAAA,CACJ;OACK,CAAA,EACb,kBAAC,GAAD,EAAA,UAAA;IACE,kBAAC,KAAD;KAAG,WAAU;eAAoC,EAAI;KAAgB,CAAA;IACrE,kBAAC,OAAD;KAAK,WAAU;eAAf,CACE,kBAAC,QAAD;MAAM,WAAU;gBAAhB;OAA4B;OACxB,EAAI;OAAM;OAAE,EAAI;OACb;SACP,kBAAC,QAAD;MAAM,WAAU;gBAAhB;OACE,kBAAC,GAAD,EAAM,WAAU,2BAA4B,CAAA;OAC3C,EAAI;OAAO;OAAG,EAAI;OAAQ;OACtB;QACH;;IACN,kBAAC,OAAD;KAAK,WAAU;eAAf,CACE,kBAAC,GAAD;MAAQ,SAAQ;MAAU,MAAK;MAAK,WAAU;gBAAS;MAE9C,CAAA,EACT,kBAAC,GAAD;MAAQ,MAAK;MAAK,WAAU;gBAAS;MAE5B,CAAA,CACL;;IACM,EAAA,CAAA,CACT,EAAA,EAhCI,EAAI,GAgCR,CACP;GACE,CAAA,CACF"}
@@ -14,7 +14,7 @@ function d() {
14
14
  className: "text-2xl font-semibold",
15
15
  children: f.name
16
16
  }), /* @__PURE__ */ i("p", {
17
- className: "text-sm text-muted-foreground",
17
+ className: "text-sm text-text-secondary",
18
18
  children: f.description
19
19
  })] }), /* @__PURE__ */ i(o, {
20
20
  variant: f.status === "active" ? "default" : "secondary",
@@ -27,7 +27,7 @@ function d() {
27
27
  /* @__PURE__ */ i(s, { children: /* @__PURE__ */ a(c, {
28
28
  className: "p-4 text-center",
29
29
  children: [
30
- /* @__PURE__ */ i(n, { className: "h-5 w-5 mx-auto text-muted-foreground mb-1" }),
30
+ /* @__PURE__ */ i(n, { className: "h-5 w-5 mx-auto text-text-secondary mb-1" }),
31
31
  /* @__PURE__ */ a("p", {
32
32
  className: "text-lg font-bold",
33
33
  children: [
@@ -37,7 +37,7 @@ function d() {
37
37
  ]
38
38
  }),
39
39
  /* @__PURE__ */ i("p", {
40
- className: "text-xs text-muted-foreground",
40
+ className: "text-xs text-text-secondary",
41
41
  children: "Budget"
42
42
  })
43
43
  ]
@@ -55,7 +55,7 @@ function d() {
55
55
  ]
56
56
  }),
57
57
  /* @__PURE__ */ i("p", {
58
- className: "text-xs text-muted-foreground",
58
+ className: "text-xs text-text-secondary",
59
59
  children: "Spent"
60
60
  })
61
61
  ]
@@ -63,13 +63,13 @@ function d() {
63
63
  /* @__PURE__ */ i(s, { children: /* @__PURE__ */ a(c, {
64
64
  className: "p-4 text-center",
65
65
  children: [
66
- /* @__PURE__ */ i(r, { className: "h-5 w-5 mx-auto text-muted-foreground mb-1" }),
66
+ /* @__PURE__ */ i(r, { className: "h-5 w-5 mx-auto text-text-secondary mb-1" }),
67
67
  /* @__PURE__ */ i("p", {
68
68
  className: "text-lg font-bold",
69
69
  children: f.teamName
70
70
  }),
71
71
  /* @__PURE__ */ i("p", {
72
- className: "text-xs text-muted-foreground",
72
+ className: "text-xs text-text-secondary",
73
73
  children: "Team"
74
74
  })
75
75
  ]
@@ -77,13 +77,13 @@ function d() {
77
77
  /* @__PURE__ */ i(s, { children: /* @__PURE__ */ a(c, {
78
78
  className: "p-4 text-center",
79
79
  children: [
80
- /* @__PURE__ */ i(t, { className: "h-5 w-5 mx-auto text-muted-foreground mb-1" }),
80
+ /* @__PURE__ */ i(t, { className: "h-5 w-5 mx-auto text-text-secondary mb-1" }),
81
81
  /* @__PURE__ */ i("p", {
82
82
  className: "text-lg font-bold",
83
83
  children: f.endDate
84
84
  }),
85
85
  /* @__PURE__ */ i("p", {
86
- className: "text-xs text-muted-foreground",
86
+ className: "text-xs text-text-secondary",
87
87
  children: "Deadline"
88
88
  })
89
89
  ]
@@ -104,9 +104,9 @@ function d() {
104
104
  children: [f.progress, "%"]
105
105
  })]
106
106
  }), /* @__PURE__ */ i("div", {
107
- className: "h-3 bg-muted rounded overflow-hidden",
107
+ className: "h-3 bg-bg-sunken rounded overflow-hidden",
108
108
  children: /* @__PURE__ */ i("div", {
109
- className: "h-3 bg-primary rounded",
109
+ className: "h-3 bg-action-primary-bg rounded",
110
110
  style: { width: `${f.progress}%` }
111
111
  })
112
112
  })]
@@ -114,28 +114,28 @@ function d() {
114
114
  className: "grid grid-cols-2 gap-4 mt-4",
115
115
  children: [
116
116
  /* @__PURE__ */ a("div", { children: [/* @__PURE__ */ i("p", {
117
- className: "text-xs text-muted-foreground",
117
+ className: "text-xs text-text-secondary",
118
118
  children: "Manager"
119
119
  }), /* @__PURE__ */ i("p", {
120
120
  className: "text-sm font-medium",
121
121
  children: f.managerName
122
122
  })] }),
123
123
  /* @__PURE__ */ a("div", { children: [/* @__PURE__ */ i("p", {
124
- className: "text-xs text-muted-foreground",
124
+ className: "text-xs text-text-secondary",
125
125
  children: "Priority"
126
126
  }), /* @__PURE__ */ i(o, {
127
127
  variant: f.priority === "critical" ? "destructive" : f.priority === "high" ? "default" : "secondary",
128
128
  children: f.priority
129
129
  })] }),
130
130
  /* @__PURE__ */ a("div", { children: [/* @__PURE__ */ i("p", {
131
- className: "text-xs text-muted-foreground",
131
+ className: "text-xs text-text-secondary",
132
132
  children: "Start Date"
133
133
  }), /* @__PURE__ */ i("p", {
134
134
  className: "text-sm",
135
135
  children: f.startDate
136
136
  })] }),
137
137
  /* @__PURE__ */ a("div", { children: [/* @__PURE__ */ i("p", {
138
- className: "text-xs text-muted-foreground",
138
+ className: "text-xs text-text-secondary",
139
139
  children: "End Date"
140
140
  }), /* @__PURE__ */ i("p", {
141
141
  className: "text-sm",
@@ -145,7 +145,7 @@ function d() {
145
145
  })] })] })
146
146
  ]
147
147
  }) : /* @__PURE__ */ i("div", {
148
- className: "p-6 text-muted-foreground",
148
+ className: "p-6 text-text-secondary",
149
149
  children: "No project found."
150
150
  });
151
151
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MarketplaceProjectDetailsPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/MarketplaceProjectDetailsPagePage.tsx"],"sourcesContent":["import { Badge, Card, CardContent, CardHeader, CardTitle } from '@burdenoff/fe-libs/ui';\nimport { Calendar, DollarSign, Users } from 'lucide-react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\nexport function MarketplaceProjectDetailsPagePage() {\n const { projects } = useCrewFoundryStore();\n const project = projects[0];\n if (!project) return <div className=\"p-6 text-muted-foreground\">No project found.</div>;\n\n return (\n <div className=\"space-y-6 p-6 max-w-4xl\">\n <div className=\"flex items-center justify-between\">\n <div>\n <h1 className=\"text-2xl font-semibold\">{project.name}</h1>\n <p className=\"text-sm text-muted-foreground\">{project.description}</p>\n </div>\n <Badge variant={project.status === 'active' ? 'default' : 'secondary'}>\n {project.status}\n </Badge>\n </div>\n <div className=\"grid gap-4 md:grid-cols-4\">\n <Card>\n <CardContent className=\"p-4 text-center\">\n <DollarSign className=\"h-5 w-5 mx-auto text-muted-foreground mb-1\" />\n <p className=\"text-lg font-bold\">${(project.budget / 1000).toFixed(0)}K</p>\n <p className=\"text-xs text-muted-foreground\">Budget</p>\n </CardContent>\n </Card>\n <Card>\n <CardContent className=\"p-4 text-center\">\n <DollarSign className=\"h-5 w-5 mx-auto text-green-500 mb-1\" />\n <p className=\"text-lg font-bold\">${(project.spent / 1000).toFixed(0)}K</p>\n <p className=\"text-xs text-muted-foreground\">Spent</p>\n </CardContent>\n </Card>\n <Card>\n <CardContent className=\"p-4 text-center\">\n <Users className=\"h-5 w-5 mx-auto text-muted-foreground mb-1\" />\n <p className=\"text-lg font-bold\">{project.teamName}</p>\n <p className=\"text-xs text-muted-foreground\">Team</p>\n </CardContent>\n </Card>\n <Card>\n <CardContent className=\"p-4 text-center\">\n <Calendar className=\"h-5 w-5 mx-auto text-muted-foreground mb-1\" />\n <p className=\"text-lg font-bold\">{project.endDate}</p>\n <p className=\"text-xs text-muted-foreground\">Deadline</p>\n </CardContent>\n </Card>\n </div>\n <Card>\n <CardHeader>\n <CardTitle>Progress</CardTitle>\n </CardHeader>\n <CardContent>\n <div className=\"space-y-2\">\n <div className=\"flex justify-between text-sm\">\n <span>\n {project.completedTasks} of {project.tasks} tasks\n </span>\n <span className=\"font-medium\">{project.progress}%</span>\n </div>\n <div className=\"h-3 bg-muted rounded overflow-hidden\">\n <div className=\"h-3 bg-primary rounded\" style={{ width: `${project.progress}%` }} />\n </div>\n </div>\n <div className=\"grid grid-cols-2 gap-4 mt-4\">\n <div>\n <p className=\"text-xs text-muted-foreground\">Manager</p>\n <p className=\"text-sm font-medium\">{project.managerName}</p>\n </div>\n <div>\n <p className=\"text-xs text-muted-foreground\">Priority</p>\n <Badge\n variant={\n project.priority === 'critical'\n ? 'destructive'\n : project.priority === 'high'\n ? 'default'\n : 'secondary'\n }\n >\n {project.priority}\n </Badge>\n </div>\n <div>\n <p className=\"text-xs text-muted-foreground\">Start Date</p>\n <p className=\"text-sm\">{project.startDate}</p>\n </div>\n <div>\n <p className=\"text-xs text-muted-foreground\">End Date</p>\n <p className=\"text-sm\">{project.endDate}</p>\n </div>\n </div>\n </CardContent>\n </Card>\n </div>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"MarketplaceProjectDetailsPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/MarketplaceProjectDetailsPagePage.tsx"],"sourcesContent":["import { Badge, Card, CardContent, CardHeader, CardTitle } from '@burdenoff/fe-libs/ui';\nimport { Calendar, DollarSign, Users } from 'lucide-react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\nexport function MarketplaceProjectDetailsPagePage() {\n const { projects } = useCrewFoundryStore();\n const project = projects[0];\n if (!project) return <div className=\"p-6 text-text-secondary\">No project found.</div>;\n\n return (\n <div className=\"space-y-6 p-6 max-w-4xl\">\n <div className=\"flex items-center justify-between\">\n <div>\n <h1 className=\"text-2xl font-semibold\">{project.name}</h1>\n <p className=\"text-sm text-text-secondary\">{project.description}</p>\n </div>\n <Badge variant={project.status === 'active' ? 'default' : 'secondary'}>\n {project.status}\n </Badge>\n </div>\n <div className=\"grid gap-4 md:grid-cols-4\">\n <Card>\n <CardContent className=\"p-4 text-center\">\n <DollarSign className=\"h-5 w-5 mx-auto text-text-secondary mb-1\" />\n <p className=\"text-lg font-bold\">${(project.budget / 1000).toFixed(0)}K</p>\n <p className=\"text-xs text-text-secondary\">Budget</p>\n </CardContent>\n </Card>\n <Card>\n <CardContent className=\"p-4 text-center\">\n <DollarSign className=\"h-5 w-5 mx-auto text-green-500 mb-1\" />\n <p className=\"text-lg font-bold\">${(project.spent / 1000).toFixed(0)}K</p>\n <p className=\"text-xs text-text-secondary\">Spent</p>\n </CardContent>\n </Card>\n <Card>\n <CardContent className=\"p-4 text-center\">\n <Users className=\"h-5 w-5 mx-auto text-text-secondary mb-1\" />\n <p className=\"text-lg font-bold\">{project.teamName}</p>\n <p className=\"text-xs text-text-secondary\">Team</p>\n </CardContent>\n </Card>\n <Card>\n <CardContent className=\"p-4 text-center\">\n <Calendar className=\"h-5 w-5 mx-auto text-text-secondary mb-1\" />\n <p className=\"text-lg font-bold\">{project.endDate}</p>\n <p className=\"text-xs text-text-secondary\">Deadline</p>\n </CardContent>\n </Card>\n </div>\n <Card>\n <CardHeader>\n <CardTitle>Progress</CardTitle>\n </CardHeader>\n <CardContent>\n <div className=\"space-y-2\">\n <div className=\"flex justify-between text-sm\">\n <span>\n {project.completedTasks} of {project.tasks} tasks\n </span>\n <span className=\"font-medium\">{project.progress}%</span>\n </div>\n <div className=\"h-3 bg-bg-sunken rounded overflow-hidden\">\n <div className=\"h-3 bg-action-primary-bg rounded\" style={{ width: `${project.progress}%` }} />\n </div>\n </div>\n <div className=\"grid grid-cols-2 gap-4 mt-4\">\n <div>\n <p className=\"text-xs text-text-secondary\">Manager</p>\n <p className=\"text-sm font-medium\">{project.managerName}</p>\n </div>\n <div>\n <p className=\"text-xs text-text-secondary\">Priority</p>\n <Badge\n variant={\n project.priority === 'critical'\n ? 'destructive'\n : project.priority === 'high'\n ? 'default'\n : 'secondary'\n }\n >\n {project.priority}\n </Badge>\n </div>\n <div>\n <p className=\"text-xs text-text-secondary\">Start Date</p>\n <p className=\"text-sm\">{project.startDate}</p>\n </div>\n <div>\n <p className=\"text-xs text-text-secondary\">End Date</p>\n <p className=\"text-sm\">{project.endDate}</p>\n </div>\n </div>\n </CardContent>\n </Card>\n </div>\n );\n}\n"],"mappings":"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"}
@@ -14,7 +14,7 @@ function m() {
14
14
  className: "text-2xl font-semibold",
15
15
  children: h.title
16
16
  }), /* @__PURE__ */ s("p", {
17
- className: "text-sm text-muted-foreground",
17
+ className: "text-sm text-text-secondary",
18
18
  children: ["by ", h.provider]
19
19
  })] }), /* @__PURE__ */ s("div", {
20
20
  className: "flex gap-2",
@@ -30,13 +30,13 @@ function m() {
30
30
  /* @__PURE__ */ o(u, { children: /* @__PURE__ */ s(d, {
31
31
  className: "p-4 text-center",
32
32
  children: [
33
- /* @__PURE__ */ o(n, { className: "h-5 w-5 mx-auto text-muted-foreground mb-1" }),
33
+ /* @__PURE__ */ o(n, { className: "h-5 w-5 mx-auto text-text-secondary mb-1" }),
34
34
  /* @__PURE__ */ s("p", {
35
35
  className: "text-lg font-bold",
36
36
  children: ["$", h.price.toLocaleString()]
37
37
  }),
38
38
  /* @__PURE__ */ s("p", {
39
- className: "text-xs text-muted-foreground",
39
+ className: "text-xs text-text-secondary",
40
40
  children: ["per ", h.priceType]
41
41
  })
42
42
  ]
@@ -50,7 +50,7 @@ function m() {
50
50
  children: [h.rating, "/5"]
51
51
  }),
52
52
  /* @__PURE__ */ s("p", {
53
- className: "text-xs text-muted-foreground",
53
+ className: "text-xs text-text-secondary",
54
54
  children: [h.reviews, " reviews"]
55
55
  })
56
56
  ]
@@ -58,13 +58,13 @@ function m() {
58
58
  /* @__PURE__ */ o(u, { children: /* @__PURE__ */ s(d, {
59
59
  className: "p-4 text-center",
60
60
  children: [
61
- /* @__PURE__ */ o(t, { className: "h-5 w-5 mx-auto text-muted-foreground mb-1" }),
61
+ /* @__PURE__ */ o(t, { className: "h-5 w-5 mx-auto text-text-secondary mb-1" }),
62
62
  /* @__PURE__ */ o("p", {
63
63
  className: "text-lg font-bold",
64
64
  children: h.deliveryTime
65
65
  }),
66
66
  /* @__PURE__ */ o("p", {
67
- className: "text-xs text-muted-foreground",
67
+ className: "text-xs text-text-secondary",
68
68
  children: "Delivery"
69
69
  })
70
70
  ]
@@ -72,13 +72,13 @@ function m() {
72
72
  /* @__PURE__ */ o(u, { children: /* @__PURE__ */ s(d, {
73
73
  className: "p-4 text-center",
74
74
  children: [
75
- /* @__PURE__ */ o(a, { className: "h-5 w-5 mx-auto text-muted-foreground mb-1" }),
75
+ /* @__PURE__ */ o(a, { className: "h-5 w-5 mx-auto text-text-secondary mb-1" }),
76
76
  /* @__PURE__ */ o("p", {
77
77
  className: "text-lg font-bold",
78
78
  children: h.category
79
79
  }),
80
80
  /* @__PURE__ */ o("p", {
81
- className: "text-xs text-muted-foreground",
81
+ className: "text-xs text-text-secondary",
82
82
  children: "Category"
83
83
  })
84
84
  ]
@@ -86,7 +86,7 @@ function m() {
86
86
  ]
87
87
  }),
88
88
  /* @__PURE__ */ s(u, { children: [/* @__PURE__ */ o(f, { children: /* @__PURE__ */ o(p, { children: "About this Service" }) }), /* @__PURE__ */ s(d, { children: [/* @__PURE__ */ o("p", {
89
- className: "text-sm text-muted-foreground",
89
+ className: "text-sm text-text-secondary",
90
90
  children: h.description
91
91
  }), /* @__PURE__ */ o("div", {
92
92
  className: "flex flex-wrap gap-1 mt-3",
@@ -97,7 +97,7 @@ function m() {
97
97
  })] })] })
98
98
  ]
99
99
  }) : /* @__PURE__ */ o("div", {
100
- className: "p-6 text-muted-foreground",
100
+ className: "p-6 text-text-secondary",
101
101
  children: "No service found."
102
102
  });
103
103
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MarketplaceServiceDetailsPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/MarketplaceServiceDetailsPagePage.tsx"],"sourcesContent":["import { Badge, Button, Card, CardContent, CardHeader, CardTitle } from '@burdenoff/fe-libs/ui';\nimport { Clock, DollarSign, MessageSquare, Star, Users } from 'lucide-react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\nexport function MarketplaceServiceDetailsPagePage() {\n const { marketplaceServices } = useCrewFoundryStore();\n const svc = marketplaceServices[0];\n if (!svc) return <div className=\"p-6 text-muted-foreground\">No service found.</div>;\n\n return (\n <div className=\"space-y-6 p-6 max-w-4xl\">\n <div className=\"flex items-center justify-between\">\n <div>\n <h1 className=\"text-2xl font-semibold\">{svc.title}</h1>\n <p className=\"text-sm text-muted-foreground\">by {svc.provider}</p>\n </div>\n <div className=\"flex gap-2\">\n <Button variant=\"outline\">\n <MessageSquare className=\"h-4 w-4 mr-1\" />\n Contact\n </Button>\n <Button>Hire Now</Button>\n </div>\n </div>\n <div className=\"grid gap-4 md:grid-cols-4\">\n <Card>\n <CardContent className=\"p-4 text-center\">\n <DollarSign className=\"h-5 w-5 mx-auto text-muted-foreground mb-1\" />\n <p className=\"text-lg font-bold\">${svc.price.toLocaleString()}</p>\n <p className=\"text-xs text-muted-foreground\">per {svc.priceType}</p>\n </CardContent>\n </Card>\n <Card>\n <CardContent className=\"p-4 text-center\">\n <Star className=\"h-5 w-5 mx-auto text-yellow-500 mb-1\" />\n <p className=\"text-lg font-bold\">{svc.rating}/5</p>\n <p className=\"text-xs text-muted-foreground\">{svc.reviews} reviews</p>\n </CardContent>\n </Card>\n <Card>\n <CardContent className=\"p-4 text-center\">\n <Clock className=\"h-5 w-5 mx-auto text-muted-foreground mb-1\" />\n <p className=\"text-lg font-bold\">{svc.deliveryTime}</p>\n <p className=\"text-xs text-muted-foreground\">Delivery</p>\n </CardContent>\n </Card>\n <Card>\n <CardContent className=\"p-4 text-center\">\n <Users className=\"h-5 w-5 mx-auto text-muted-foreground mb-1\" />\n <p className=\"text-lg font-bold\">{svc.category}</p>\n <p className=\"text-xs text-muted-foreground\">Category</p>\n </CardContent>\n </Card>\n </div>\n <Card>\n <CardHeader>\n <CardTitle>About this Service</CardTitle>\n </CardHeader>\n <CardContent>\n <p className=\"text-sm text-muted-foreground\">{svc.description}</p>\n <div className=\"flex flex-wrap gap-1 mt-3\">\n {svc.skills.map((s) => (\n <Badge key={s} variant=\"outline\">\n {s}\n </Badge>\n ))}\n </div>\n </CardContent>\n </Card>\n </div>\n );\n}\n"],"mappings":";;;;;AAIA,SAAgB,IAAoC;CAClD,IAAM,EAAE,2BAAwB,GAAqB,EAC/C,IAAM,EAAoB;AAGhC,QAFK,IAGH,kBAAC,OAAD;EAAK,WAAU;YAAf;GACE,kBAAC,OAAD;IAAK,WAAU;cAAf,CACE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,MAAD;KAAI,WAAU;eAA0B,EAAI;KAAW,CAAA,EACvD,kBAAC,KAAD;KAAG,WAAU;eAAb,CAA6C,OAAI,EAAI,SAAa;OAC9D,EAAA,CAAA,EACN,kBAAC,OAAD;KAAK,WAAU;eAAf,CACE,kBAAC,GAAD;MAAQ,SAAQ;gBAAhB,CACE,kBAAC,GAAD,EAAe,WAAU,gBAAiB,CAAA,EAAA,UAEnC;SACT,kBAAC,GAAD,EAAA,UAAQ,YAAiB,CAAA,CACrB;OACF;;GACN,kBAAC,OAAD;IAAK,WAAU;cAAf;KACE,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;MAAa,WAAU;gBAAvB;OACE,kBAAC,GAAD,EAAY,WAAU,8CAA+C,CAAA;OACrE,kBAAC,KAAD;QAAG,WAAU;kBAAb,CAAiC,KAAE,EAAI,MAAM,gBAAgB,CAAK;;OAClE,kBAAC,KAAD;QAAG,WAAU;kBAAb,CAA6C,QAAK,EAAI,UAAc;;OACxD;SACT,CAAA;KACP,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;MAAa,WAAU;gBAAvB;OACE,kBAAC,GAAD,EAAM,WAAU,wCAAyC,CAAA;OACzD,kBAAC,KAAD;QAAG,WAAU;kBAAb,CAAkC,EAAI,QAAO,KAAM;;OACnD,kBAAC,KAAD;QAAG,WAAU;kBAAb,CAA8C,EAAI,SAAQ,WAAY;;OAC1D;SACT,CAAA;KACP,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;MAAa,WAAU;gBAAvB;OACE,kBAAC,GAAD,EAAO,WAAU,8CAA+C,CAAA;OAChE,kBAAC,KAAD;QAAG,WAAU;kBAAqB,EAAI;QAAiB,CAAA;OACvD,kBAAC,KAAD;QAAG,WAAU;kBAAgC;QAAY,CAAA;OAC7C;SACT,CAAA;KACP,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;MAAa,WAAU;gBAAvB;OACE,kBAAC,GAAD,EAAO,WAAU,8CAA+C,CAAA;OAChE,kBAAC,KAAD;QAAG,WAAU;kBAAqB,EAAI;QAAa,CAAA;OACnD,kBAAC,KAAD;QAAG,WAAU;kBAAgC;QAAY,CAAA;OAC7C;SACT,CAAA;KACH;;GACN,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD,EAAA,UAAW,sBAA8B,CAAA,EAC9B,CAAA,EACb,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,KAAD;IAAG,WAAU;cAAiC,EAAI;IAAgB,CAAA,EAClE,kBAAC,OAAD;IAAK,WAAU;cACZ,EAAI,OAAO,KAAK,MACf,kBAAC,GAAD;KAAe,SAAQ;eACpB;KACK,EAFI,EAEJ,CACR;IACE,CAAA,CACM,EAAA,CAAA,CACT,EAAA,CAAA;GACH;MA9DS,kBAAC,OAAD;EAAK,WAAU;YAA4B;EAAuB,CAAA"}
1
+ {"version":3,"file":"MarketplaceServiceDetailsPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/MarketplaceServiceDetailsPagePage.tsx"],"sourcesContent":["import { Badge, Button, Card, CardContent, CardHeader, CardTitle } from '@burdenoff/fe-libs/ui';\nimport { Clock, DollarSign, MessageSquare, Star, Users } from 'lucide-react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\nexport function MarketplaceServiceDetailsPagePage() {\n const { marketplaceServices } = useCrewFoundryStore();\n const svc = marketplaceServices[0];\n if (!svc) return <div className=\"p-6 text-text-secondary\">No service found.</div>;\n\n return (\n <div className=\"space-y-6 p-6 max-w-4xl\">\n <div className=\"flex items-center justify-between\">\n <div>\n <h1 className=\"text-2xl font-semibold\">{svc.title}</h1>\n <p className=\"text-sm text-text-secondary\">by {svc.provider}</p>\n </div>\n <div className=\"flex gap-2\">\n <Button variant=\"outline\">\n <MessageSquare className=\"h-4 w-4 mr-1\" />\n Contact\n </Button>\n <Button>Hire Now</Button>\n </div>\n </div>\n <div className=\"grid gap-4 md:grid-cols-4\">\n <Card>\n <CardContent className=\"p-4 text-center\">\n <DollarSign className=\"h-5 w-5 mx-auto text-text-secondary mb-1\" />\n <p className=\"text-lg font-bold\">${svc.price.toLocaleString()}</p>\n <p className=\"text-xs text-text-secondary\">per {svc.priceType}</p>\n </CardContent>\n </Card>\n <Card>\n <CardContent className=\"p-4 text-center\">\n <Star className=\"h-5 w-5 mx-auto text-yellow-500 mb-1\" />\n <p className=\"text-lg font-bold\">{svc.rating}/5</p>\n <p className=\"text-xs text-text-secondary\">{svc.reviews} reviews</p>\n </CardContent>\n </Card>\n <Card>\n <CardContent className=\"p-4 text-center\">\n <Clock className=\"h-5 w-5 mx-auto text-text-secondary mb-1\" />\n <p className=\"text-lg font-bold\">{svc.deliveryTime}</p>\n <p className=\"text-xs text-text-secondary\">Delivery</p>\n </CardContent>\n </Card>\n <Card>\n <CardContent className=\"p-4 text-center\">\n <Users className=\"h-5 w-5 mx-auto text-text-secondary mb-1\" />\n <p className=\"text-lg font-bold\">{svc.category}</p>\n <p className=\"text-xs text-text-secondary\">Category</p>\n </CardContent>\n </Card>\n </div>\n <Card>\n <CardHeader>\n <CardTitle>About this Service</CardTitle>\n </CardHeader>\n <CardContent>\n <p className=\"text-sm text-text-secondary\">{svc.description}</p>\n <div className=\"flex flex-wrap gap-1 mt-3\">\n {svc.skills.map((s) => (\n <Badge key={s} variant=\"outline\">\n {s}\n </Badge>\n ))}\n </div>\n </CardContent>\n </Card>\n </div>\n );\n}\n"],"mappings":";;;;;AAIA,SAAgB,IAAoC;CAClD,IAAM,EAAE,2BAAwB,GAAqB,EAC/C,IAAM,EAAoB;AAGhC,QAFK,IAGH,kBAAC,OAAD;EAAK,WAAU;YAAf;GACE,kBAAC,OAAD;IAAK,WAAU;cAAf,CACE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,MAAD;KAAI,WAAU;eAA0B,EAAI;KAAW,CAAA,EACvD,kBAAC,KAAD;KAAG,WAAU;eAAb,CAA2C,OAAI,EAAI,SAAa;OAC5D,EAAA,CAAA,EACN,kBAAC,OAAD;KAAK,WAAU;eAAf,CACE,kBAAC,GAAD;MAAQ,SAAQ;gBAAhB,CACE,kBAAC,GAAD,EAAe,WAAU,gBAAiB,CAAA,EAAA,UAEnC;SACT,kBAAC,GAAD,EAAA,UAAQ,YAAiB,CAAA,CACrB;OACF;;GACN,kBAAC,OAAD;IAAK,WAAU;cAAf;KACE,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;MAAa,WAAU;gBAAvB;OACE,kBAAC,GAAD,EAAY,WAAU,4CAA6C,CAAA;OACnE,kBAAC,KAAD;QAAG,WAAU;kBAAb,CAAiC,KAAE,EAAI,MAAM,gBAAgB,CAAK;;OAClE,kBAAC,KAAD;QAAG,WAAU;kBAAb,CAA2C,QAAK,EAAI,UAAc;;OACtD;SACT,CAAA;KACP,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;MAAa,WAAU;gBAAvB;OACE,kBAAC,GAAD,EAAM,WAAU,wCAAyC,CAAA;OACzD,kBAAC,KAAD;QAAG,WAAU;kBAAb,CAAkC,EAAI,QAAO,KAAM;;OACnD,kBAAC,KAAD;QAAG,WAAU;kBAAb,CAA4C,EAAI,SAAQ,WAAY;;OACxD;SACT,CAAA;KACP,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;MAAa,WAAU;gBAAvB;OACE,kBAAC,GAAD,EAAO,WAAU,4CAA6C,CAAA;OAC9D,kBAAC,KAAD;QAAG,WAAU;kBAAqB,EAAI;QAAiB,CAAA;OACvD,kBAAC,KAAD;QAAG,WAAU;kBAA8B;QAAY,CAAA;OAC3C;SACT,CAAA;KACP,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;MAAa,WAAU;gBAAvB;OACE,kBAAC,GAAD,EAAO,WAAU,4CAA6C,CAAA;OAC9D,kBAAC,KAAD;QAAG,WAAU;kBAAqB,EAAI;QAAa,CAAA;OACnD,kBAAC,KAAD;QAAG,WAAU;kBAA8B;QAAY,CAAA;OAC3C;SACT,CAAA;KACH;;GACN,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD,EAAA,UAAW,sBAA8B,CAAA,EAC9B,CAAA,EACb,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,KAAD;IAAG,WAAU;cAA+B,EAAI;IAAgB,CAAA,EAChE,kBAAC,OAAD;IAAK,WAAU;cACZ,EAAI,OAAO,KAAK,MACf,kBAAC,GAAD;KAAe,SAAQ;eACpB;KACK,EAFI,EAEJ,CACR;IACE,CAAA,CACM,EAAA,CAAA,CACT,EAAA,CAAA;GACH;MA9DS,kBAAC,OAAD;EAAK,WAAU;YAA0B;EAAuB,CAAA"}
@@ -29,7 +29,7 @@ function f() {
29
29
  className: "text-2xl font-semibold",
30
30
  children: "Escrow"
31
31
  }), /* @__PURE__ */ a("p", {
32
- className: "text-sm text-muted-foreground",
32
+ className: "text-sm text-text-secondary",
33
33
  children: "Secure payment holding for service contracts"
34
34
  })] }),
35
35
  /* @__PURE__ */ o("div", {
@@ -40,7 +40,7 @@ function f() {
40
40
  children: [/* @__PURE__ */ a(d, {
41
41
  className: "text-sm font-medium",
42
42
  children: "Total in Escrow"
43
- }), /* @__PURE__ */ a(r, { className: "h-4 w-4 text-muted-foreground" })]
43
+ }), /* @__PURE__ */ a(r, { className: "h-4 w-4 text-text-secondary" })]
44
44
  }), /* @__PURE__ */ a(l, { children: /* @__PURE__ */ o("div", {
45
45
  className: "text-2xl font-bold",
46
46
  children: ["$", g.toLocaleString()]
@@ -80,7 +80,7 @@ function f() {
80
80
  className: "text-sm font-medium",
81
81
  children: e.project
82
82
  }), /* @__PURE__ */ a("p", {
83
- className: "text-xs text-muted-foreground",
83
+ className: "text-xs text-text-secondary",
84
84
  children: e.provider
85
85
  })] }), /* @__PURE__ */ a(s, {
86
86
  variant: e.status === "active" ? "default" : e.status === "completed" ? "secondary" : "outline",
@@ -97,7 +97,7 @@ function f() {
97
97
  children: ["Released: $", e.released.toLocaleString()]
98
98
  }),
99
99
  /* @__PURE__ */ o("span", {
100
- className: "text-muted-foreground",
100
+ className: "text-text-secondary",
101
101
  children: ["Held: $", (e.amount - e.released).toLocaleString()]
102
102
  })
103
103
  ]
@@ -113,7 +113,7 @@ function f() {
113
113
  e.milestones
114
114
  ] }), /* @__PURE__ */ o("span", { children: [t, "%"] })]
115
115
  }), /* @__PURE__ */ a("div", {
116
- className: "h-2 overflow-hidden rounded bg-muted",
116
+ className: "h-2 overflow-hidden rounded bg-bg-sunken",
117
117
  children: /* @__PURE__ */ a("div", {
118
118
  className: "h-2 rounded bg-green-500",
119
119
  style: { width: `${t}%` }
@@ -1 +1 @@
1
- {"version":3,"file":"PaymentsEscrowPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/PaymentsEscrowPagePage.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport { Badge, Card, CardContent, CardHeader, CardTitle } from '@burdenoff/fe-libs/ui';\nimport { DollarSign, Lock, ShieldCheck } from 'lucide-react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\ntype EscrowTransaction = {\n id: string;\n project: string;\n provider: string;\n amount: number;\n released: number;\n status: 'active' | 'funded' | 'completed';\n milestones: number;\n completedMilestones: number;\n};\n\nexport function PaymentsEscrowPagePage() {\n const { projects, invoices, payrollRecords } = useCrewFoundryStore();\n\n const escrowTransactions = useMemo<EscrowTransaction[]>(() => {\n return projects.slice(0, 10).map((project, index) => {\n const invoice = invoices[index % Math.max(invoices.length, 1)];\n const payroll = payrollRecords[index % Math.max(payrollRecords.length, 1)];\n const amount = Math.max(project.budget || 0, invoice?.amount || 0, 1000);\n const released = Math.min(project.spent || 0, amount);\n const completedMilestones = Math.max(0, Math.round((project.progress / 100) * 5));\n const milestones = Math.max(completedMilestones + 1, 3);\n const status: EscrowTransaction['status'] =\n released >= amount\n ? 'completed'\n : released > 0\n ? 'active'\n : payroll?.status === 'approved'\n ? 'funded'\n : 'active';\n\n return {\n id: project.id,\n project: project.name,\n provider: payroll?.employeeName || project.managerName,\n amount,\n released,\n status,\n milestones,\n completedMilestones: Math.min(completedMilestones, milestones),\n };\n });\n }, [invoices, payrollRecords, projects]);\n\n const totalEscrow = escrowTransactions.reduce((sum, transaction) => sum + transaction.amount, 0);\n const totalReleased = escrowTransactions.reduce(\n (sum, transaction) => sum + transaction.released,\n 0\n );\n\n return (\n <div className=\"space-y-6 p-6\">\n <div>\n <h1 className=\"text-2xl font-semibold\">Escrow</h1>\n <p className=\"text-sm text-muted-foreground\">\n Secure payment holding for service contracts\n </p>\n </div>\n\n <div className=\"grid gap-4 md:grid-cols-3\">\n <Card>\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Total in Escrow</CardTitle>\n <Lock className=\"h-4 w-4 text-muted-foreground\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">${totalEscrow.toLocaleString()}</div>\n </CardContent>\n </Card>\n <Card>\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Released</CardTitle>\n <DollarSign className=\"h-4 w-4 text-green-500\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">${totalReleased.toLocaleString()}</div>\n </CardContent>\n </Card>\n <Card>\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Held</CardTitle>\n <ShieldCheck className=\"h-4 w-4 text-blue-500\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">\n ${(totalEscrow - totalReleased).toLocaleString()}\n </div>\n </CardContent>\n </Card>\n </div>\n\n <Card>\n <CardHeader>\n <CardTitle>Escrow Transactions</CardTitle>\n </CardHeader>\n <CardContent className=\"space-y-3\">\n {escrowTransactions.map((escrow) => {\n const progress =\n escrow.amount === 0 ? 0 : Math.round((escrow.released / escrow.amount) * 100);\n\n return (\n <div key={escrow.id} className=\"rounded border p-4\">\n <div className=\"mb-2 flex items-center justify-between\">\n <div>\n <p className=\"text-sm font-medium\">{escrow.project}</p>\n <p className=\"text-xs text-muted-foreground\">{escrow.provider}</p>\n </div>\n <Badge\n variant={\n escrow.status === 'active'\n ? 'default'\n : escrow.status === 'completed'\n ? 'secondary'\n : 'outline'\n }\n className=\"text-[10px]\"\n >\n {escrow.status}\n </Badge>\n </div>\n\n <div className=\"flex items-center gap-4 text-sm\">\n <span>Total: ${escrow.amount.toLocaleString()}</span>\n <span className=\"text-green-600\">\n Released: ${escrow.released.toLocaleString()}\n </span>\n <span className=\"text-muted-foreground\">\n Held: ${(escrow.amount - escrow.released).toLocaleString()}\n </span>\n </div>\n\n <div className=\"mt-2\">\n <div className=\"mb-1 flex justify-between text-xs\">\n <span>\n Milestones: {escrow.completedMilestones}/{escrow.milestones}\n </span>\n <span>{progress}%</span>\n </div>\n <div className=\"h-2 overflow-hidden rounded bg-muted\">\n <div className=\"h-2 rounded bg-green-500\" style={{ width: `${progress}%` }} />\n </div>\n </div>\n </div>\n );\n })}\n </CardContent>\n </Card>\n </div>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"PaymentsEscrowPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/PaymentsEscrowPagePage.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport { Badge, Card, CardContent, CardHeader, CardTitle } from '@burdenoff/fe-libs/ui';\nimport { DollarSign, Lock, ShieldCheck } from 'lucide-react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\ntype EscrowTransaction = {\n id: string;\n project: string;\n provider: string;\n amount: number;\n released: number;\n status: 'active' | 'funded' | 'completed';\n milestones: number;\n completedMilestones: number;\n};\n\nexport function PaymentsEscrowPagePage() {\n const { projects, invoices, payrollRecords } = useCrewFoundryStore();\n\n const escrowTransactions = useMemo<EscrowTransaction[]>(() => {\n return projects.slice(0, 10).map((project, index) => {\n const invoice = invoices[index % Math.max(invoices.length, 1)];\n const payroll = payrollRecords[index % Math.max(payrollRecords.length, 1)];\n const amount = Math.max(project.budget || 0, invoice?.amount || 0, 1000);\n const released = Math.min(project.spent || 0, amount);\n const completedMilestones = Math.max(0, Math.round((project.progress / 100) * 5));\n const milestones = Math.max(completedMilestones + 1, 3);\n const status: EscrowTransaction['status'] =\n released >= amount\n ? 'completed'\n : released > 0\n ? 'active'\n : payroll?.status === 'approved'\n ? 'funded'\n : 'active';\n\n return {\n id: project.id,\n project: project.name,\n provider: payroll?.employeeName || project.managerName,\n amount,\n released,\n status,\n milestones,\n completedMilestones: Math.min(completedMilestones, milestones),\n };\n });\n }, [invoices, payrollRecords, projects]);\n\n const totalEscrow = escrowTransactions.reduce((sum, transaction) => sum + transaction.amount, 0);\n const totalReleased = escrowTransactions.reduce(\n (sum, transaction) => sum + transaction.released,\n 0\n );\n\n return (\n <div className=\"space-y-6 p-6\">\n <div>\n <h1 className=\"text-2xl font-semibold\">Escrow</h1>\n <p className=\"text-sm text-text-secondary\">\n Secure payment holding for service contracts\n </p>\n </div>\n\n <div className=\"grid gap-4 md:grid-cols-3\">\n <Card>\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Total in Escrow</CardTitle>\n <Lock className=\"h-4 w-4 text-text-secondary\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">${totalEscrow.toLocaleString()}</div>\n </CardContent>\n </Card>\n <Card>\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Released</CardTitle>\n <DollarSign className=\"h-4 w-4 text-green-500\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">${totalReleased.toLocaleString()}</div>\n </CardContent>\n </Card>\n <Card>\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Held</CardTitle>\n <ShieldCheck className=\"h-4 w-4 text-blue-500\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">\n ${(totalEscrow - totalReleased).toLocaleString()}\n </div>\n </CardContent>\n </Card>\n </div>\n\n <Card>\n <CardHeader>\n <CardTitle>Escrow Transactions</CardTitle>\n </CardHeader>\n <CardContent className=\"space-y-3\">\n {escrowTransactions.map((escrow) => {\n const progress =\n escrow.amount === 0 ? 0 : Math.round((escrow.released / escrow.amount) * 100);\n\n return (\n <div key={escrow.id} className=\"rounded border p-4\">\n <div className=\"mb-2 flex items-center justify-between\">\n <div>\n <p className=\"text-sm font-medium\">{escrow.project}</p>\n <p className=\"text-xs text-text-secondary\">{escrow.provider}</p>\n </div>\n <Badge\n variant={\n escrow.status === 'active'\n ? 'default'\n : escrow.status === 'completed'\n ? 'secondary'\n : 'outline'\n }\n className=\"text-[10px]\"\n >\n {escrow.status}\n </Badge>\n </div>\n\n <div className=\"flex items-center gap-4 text-sm\">\n <span>Total: ${escrow.amount.toLocaleString()}</span>\n <span className=\"text-green-600\">\n Released: ${escrow.released.toLocaleString()}\n </span>\n <span className=\"text-text-secondary\">\n Held: ${(escrow.amount - escrow.released).toLocaleString()}\n </span>\n </div>\n\n <div className=\"mt-2\">\n <div className=\"mb-1 flex justify-between text-xs\">\n <span>\n Milestones: {escrow.completedMilestones}/{escrow.milestones}\n </span>\n <span>{progress}%</span>\n </div>\n <div className=\"h-2 overflow-hidden rounded bg-bg-sunken\">\n <div className=\"h-2 rounded bg-green-500\" style={{ width: `${progress}%` }} />\n </div>\n </div>\n </div>\n );\n })}\n </CardContent>\n </Card>\n </div>\n );\n}\n"],"mappings":"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"}
@@ -13,7 +13,7 @@ function c() {
13
13
  className: "text-2xl font-semibold",
14
14
  children: "Invoices"
15
15
  }), /* @__PURE__ */ r("p", {
16
- className: "text-sm text-muted-foreground",
16
+ className: "text-sm text-text-secondary",
17
17
  children: [c.length, " invoices"]
18
18
  })] }), /* @__PURE__ */ r(a, {
19
19
  size: "sm",
@@ -22,7 +22,7 @@ function c() {
22
22
  }), /* @__PURE__ */ n(o, { children: /* @__PURE__ */ r(s, {
23
23
  className: "p-0",
24
24
  children: [/* @__PURE__ */ r("div", {
25
- className: "grid grid-cols-6 gap-2 text-xs font-medium text-muted-foreground p-4 border-b",
25
+ className: "grid grid-cols-6 gap-2 text-xs font-medium text-text-secondary p-4 border-b",
26
26
  children: [
27
27
  /* @__PURE__ */ n("span", { children: "Invoice #" }),
28
28
  /* @__PURE__ */ n("span", { children: "Client" }),
@@ -38,18 +38,18 @@ function c() {
38
38
  })
39
39
  ]
40
40
  }), c.map((e) => /* @__PURE__ */ r("div", {
41
- className: "grid grid-cols-6 gap-2 py-3 px-4 border-b last:border-0 text-sm hover:bg-muted/50",
41
+ className: "grid grid-cols-6 gap-2 py-3 px-4 border-b last:border-0 text-sm hover:bg-bg-sunken/50",
42
42
  children: [
43
43
  /* @__PURE__ */ n("span", {
44
44
  className: "font-medium",
45
45
  children: e.number
46
46
  }),
47
47
  /* @__PURE__ */ n("span", {
48
- className: "text-muted-foreground",
48
+ className: "text-text-secondary",
49
49
  children: e.clientName
50
50
  }),
51
51
  /* @__PURE__ */ n("div", {
52
- className: "text-xs text-muted-foreground",
52
+ className: "text-xs text-text-secondary",
53
53
  children: e.items.map((e) => e.description).join(", ")
54
54
  }),
55
55
  /* @__PURE__ */ r("span", {
@@ -57,7 +57,7 @@ function c() {
57
57
  children: ["$", e.amount.toLocaleString()]
58
58
  }),
59
59
  /* @__PURE__ */ n("span", {
60
- className: "text-muted-foreground",
60
+ className: "text-text-secondary",
61
61
  children: e.dueDate
62
62
  }),
63
63
  /* @__PURE__ */ n("div", {