@burdenoff/microfe-technospam 2026.509.101

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 (202) hide show
  1. package/README.md +12 -0
  2. package/dist/dev/main.d.ts +2 -0
  3. package/dist/dev/main.d.ts.map +1 -0
  4. package/dist/generated/global-operations.d.ts +2 -0
  5. package/dist/generated/global-operations.d.ts.map +1 -0
  6. package/dist/generated/global-types.d.ts +18199 -0
  7. package/dist/generated/global-types.d.ts.map +1 -0
  8. package/dist/generated/wspace-operations.d.ts +2 -0
  9. package/dist/generated/wspace-operations.d.ts.map +1 -0
  10. package/dist/generated/wspace-types.d.ts +43046 -0
  11. package/dist/generated/wspace-types.d.ts.map +1 -0
  12. package/dist/index.d.ts +2 -0
  13. package/dist/index.d.ts.map +1 -0
  14. package/dist/index.js +5 -0
  15. package/dist/technospam/TechnoSpamRoot.d.ts +5 -0
  16. package/dist/technospam/TechnoSpamRoot.d.ts.map +1 -0
  17. package/dist/technospam/TechnoSpamRoot.js +482 -0
  18. package/dist/technospam/TechnoSpamRoot.js.map +1 -0
  19. package/dist/technospam/TechnoSpamRoutes.d.ts +2 -0
  20. package/dist/technospam/TechnoSpamRoutes.d.ts.map +1 -0
  21. package/dist/technospam/TechnoSpamRoutes.js +191 -0
  22. package/dist/technospam/TechnoSpamRoutes.js.map +1 -0
  23. package/dist/technospam/index.d.ts +5 -0
  24. package/dist/technospam/index.d.ts.map +1 -0
  25. package/dist/technospam/index.js +3 -0
  26. package/dist/technospam/pages/AdminAdminDashboardPagePage.d.ts +2 -0
  27. package/dist/technospam/pages/AdminAdminDashboardPagePage.d.ts.map +1 -0
  28. package/dist/technospam/pages/AdminAdminDashboardPagePage.js +269 -0
  29. package/dist/technospam/pages/AdminAdminDashboardPagePage.js.map +1 -0
  30. package/dist/technospam/pages/AdminAuditReportsPagePage.d.ts +2 -0
  31. package/dist/technospam/pages/AdminAuditReportsPagePage.d.ts.map +1 -0
  32. package/dist/technospam/pages/AdminAuditReportsPagePage.js +179 -0
  33. package/dist/technospam/pages/AdminAuditReportsPagePage.js.map +1 -0
  34. package/dist/technospam/pages/AnalyticsAchievementsPagePage.d.ts +2 -0
  35. package/dist/technospam/pages/AnalyticsAchievementsPagePage.d.ts.map +1 -0
  36. package/dist/technospam/pages/AnalyticsAchievementsPagePage.js +149 -0
  37. package/dist/technospam/pages/AnalyticsAchievementsPagePage.js.map +1 -0
  38. package/dist/technospam/pages/AnalyticsAnalyticsPagePage.d.ts +2 -0
  39. package/dist/technospam/pages/AnalyticsAnalyticsPagePage.d.ts.map +1 -0
  40. package/dist/technospam/pages/AnalyticsAnalyticsPagePage.js +260 -0
  41. package/dist/technospam/pages/AnalyticsAnalyticsPagePage.js.map +1 -0
  42. package/dist/technospam/pages/AnalyticsProgressPagePage.d.ts +2 -0
  43. package/dist/technospam/pages/AnalyticsProgressPagePage.d.ts.map +1 -0
  44. package/dist/technospam/pages/AnalyticsProgressPagePage.js +215 -0
  45. package/dist/technospam/pages/AnalyticsProgressPagePage.js.map +1 -0
  46. package/dist/technospam/pages/AnalyticsReportsPagePage.d.ts +2 -0
  47. package/dist/technospam/pages/AnalyticsReportsPagePage.d.ts.map +1 -0
  48. package/dist/technospam/pages/AnalyticsReportsPagePage.js +145 -0
  49. package/dist/technospam/pages/AnalyticsReportsPagePage.js.map +1 -0
  50. package/dist/technospam/pages/ApplicationsPortfolioPagePage.d.ts +2 -0
  51. package/dist/technospam/pages/ApplicationsPortfolioPagePage.d.ts.map +1 -0
  52. package/dist/technospam/pages/ApplicationsPortfolioPagePage.js +227 -0
  53. package/dist/technospam/pages/ApplicationsPortfolioPagePage.js.map +1 -0
  54. package/dist/technospam/pages/ApplicationsProblemDetailsPagePage.d.ts +2 -0
  55. package/dist/technospam/pages/ApplicationsProblemDetailsPagePage.d.ts.map +1 -0
  56. package/dist/technospam/pages/ApplicationsProblemDetailsPagePage.js +194 -0
  57. package/dist/technospam/pages/ApplicationsProblemDetailsPagePage.js.map +1 -0
  58. package/dist/technospam/pages/ApplicationsProblemsPagePage.d.ts +2 -0
  59. package/dist/technospam/pages/ApplicationsProblemsPagePage.d.ts.map +1 -0
  60. package/dist/technospam/pages/ApplicationsProblemsPagePage.js +203 -0
  61. package/dist/technospam/pages/ApplicationsProblemsPagePage.js.map +1 -0
  62. package/dist/technospam/pages/ApplicationsSolutionsPagePage.d.ts +2 -0
  63. package/dist/technospam/pages/ApplicationsSolutionsPagePage.d.ts.map +1 -0
  64. package/dist/technospam/pages/ApplicationsSolutionsPagePage.js +182 -0
  65. package/dist/technospam/pages/ApplicationsSolutionsPagePage.js.map +1 -0
  66. package/dist/technospam/pages/CoursesCourseDetailsPagePage.d.ts +2 -0
  67. package/dist/technospam/pages/CoursesCourseDetailsPagePage.d.ts.map +1 -0
  68. package/dist/technospam/pages/CoursesCourseDetailsPagePage.js +261 -0
  69. package/dist/technospam/pages/CoursesCourseDetailsPagePage.js.map +1 -0
  70. package/dist/technospam/pages/CoursesCoursesPagePage.d.ts +2 -0
  71. package/dist/technospam/pages/CoursesCoursesPagePage.d.ts.map +1 -0
  72. package/dist/technospam/pages/CoursesCoursesPagePage.js +179 -0
  73. package/dist/technospam/pages/CoursesCoursesPagePage.js.map +1 -0
  74. package/dist/technospam/pages/CoursesInstructorProfilePagePage.d.ts +2 -0
  75. package/dist/technospam/pages/CoursesInstructorProfilePagePage.d.ts.map +1 -0
  76. package/dist/technospam/pages/CoursesInstructorProfilePagePage.js +346 -0
  77. package/dist/technospam/pages/CoursesInstructorProfilePagePage.js.map +1 -0
  78. package/dist/technospam/pages/CoursesInstructorsPagePage.d.ts +2 -0
  79. package/dist/technospam/pages/CoursesInstructorsPagePage.d.ts.map +1 -0
  80. package/dist/technospam/pages/CoursesInstructorsPagePage.js +104 -0
  81. package/dist/technospam/pages/CoursesInstructorsPagePage.js.map +1 -0
  82. package/dist/technospam/pages/CoursesMyLearningPagePage.d.ts +2 -0
  83. package/dist/technospam/pages/CoursesMyLearningPagePage.d.ts.map +1 -0
  84. package/dist/technospam/pages/CoursesMyLearningPagePage.js +187 -0
  85. package/dist/technospam/pages/CoursesMyLearningPagePage.js.map +1 -0
  86. package/dist/technospam/pages/DashboardDashboardPagePage.d.ts +2 -0
  87. package/dist/technospam/pages/DashboardDashboardPagePage.d.ts.map +1 -0
  88. package/dist/technospam/pages/DashboardDashboardPagePage.js +344 -0
  89. package/dist/technospam/pages/DashboardDashboardPagePage.js.map +1 -0
  90. package/dist/technospam/pages/HackathonsEventsPagePage.d.ts +2 -0
  91. package/dist/technospam/pages/HackathonsEventsPagePage.d.ts.map +1 -0
  92. package/dist/technospam/pages/HackathonsEventsPagePage.js +121 -0
  93. package/dist/technospam/pages/HackathonsEventsPagePage.js.map +1 -0
  94. package/dist/technospam/pages/HackathonsHackathonDetailsPagePage.d.ts +2 -0
  95. package/dist/technospam/pages/HackathonsHackathonDetailsPagePage.d.ts.map +1 -0
  96. package/dist/technospam/pages/HackathonsHackathonDetailsPagePage.js +250 -0
  97. package/dist/technospam/pages/HackathonsHackathonDetailsPagePage.js.map +1 -0
  98. package/dist/technospam/pages/HackathonsHackathonsPagePage.d.ts +2 -0
  99. package/dist/technospam/pages/HackathonsHackathonsPagePage.d.ts.map +1 -0
  100. package/dist/technospam/pages/HackathonsHackathonsPagePage.js +162 -0
  101. package/dist/technospam/pages/HackathonsHackathonsPagePage.js.map +1 -0
  102. package/dist/technospam/pages/HackathonsTeamsPagePage.d.ts +2 -0
  103. package/dist/technospam/pages/HackathonsTeamsPagePage.d.ts.map +1 -0
  104. package/dist/technospam/pages/HackathonsTeamsPagePage.js +185 -0
  105. package/dist/technospam/pages/HackathonsTeamsPagePage.js.map +1 -0
  106. package/dist/technospam/pages/KnowledgeBaseArticleDetailsPagePage.d.ts +2 -0
  107. package/dist/technospam/pages/KnowledgeBaseArticleDetailsPagePage.d.ts.map +1 -0
  108. package/dist/technospam/pages/KnowledgeBaseArticleDetailsPagePage.js +181 -0
  109. package/dist/technospam/pages/KnowledgeBaseArticleDetailsPagePage.js.map +1 -0
  110. package/dist/technospam/pages/KnowledgeBaseArticlesPagePage.d.ts +2 -0
  111. package/dist/technospam/pages/KnowledgeBaseArticlesPagePage.d.ts.map +1 -0
  112. package/dist/technospam/pages/KnowledgeBaseArticlesPagePage.js +112 -0
  113. package/dist/technospam/pages/KnowledgeBaseArticlesPagePage.js.map +1 -0
  114. package/dist/technospam/pages/KnowledgeBaseCategoriesPagePage.d.ts +2 -0
  115. package/dist/technospam/pages/KnowledgeBaseCategoriesPagePage.d.ts.map +1 -0
  116. package/dist/technospam/pages/KnowledgeBaseCategoriesPagePage.js +105 -0
  117. package/dist/technospam/pages/KnowledgeBaseCategoriesPagePage.js.map +1 -0
  118. package/dist/technospam/pages/KnowledgeBaseKnowledgeBasePagePage.d.ts +2 -0
  119. package/dist/technospam/pages/KnowledgeBaseKnowledgeBasePagePage.d.ts.map +1 -0
  120. package/dist/technospam/pages/KnowledgeBaseKnowledgeBasePagePage.js +165 -0
  121. package/dist/technospam/pages/KnowledgeBaseKnowledgeBasePagePage.js.map +1 -0
  122. package/dist/technospam/pages/MentorshipBookingsPagePage.d.ts +2 -0
  123. package/dist/technospam/pages/MentorshipBookingsPagePage.d.ts.map +1 -0
  124. package/dist/technospam/pages/MentorshipBookingsPagePage.js +188 -0
  125. package/dist/technospam/pages/MentorshipBookingsPagePage.js.map +1 -0
  126. package/dist/technospam/pages/MentorshipMentorProfilePagePage.d.ts +2 -0
  127. package/dist/technospam/pages/MentorshipMentorProfilePagePage.d.ts.map +1 -0
  128. package/dist/technospam/pages/MentorshipMentorProfilePagePage.js +310 -0
  129. package/dist/technospam/pages/MentorshipMentorProfilePagePage.js.map +1 -0
  130. package/dist/technospam/pages/MentorshipMentorsPagePage.d.ts +2 -0
  131. package/dist/technospam/pages/MentorshipMentorsPagePage.d.ts.map +1 -0
  132. package/dist/technospam/pages/MentorshipMentorsPagePage.js +128 -0
  133. package/dist/technospam/pages/MentorshipMentorsPagePage.js.map +1 -0
  134. package/dist/technospam/pages/MentorshipMentorshipPagePage.d.ts +2 -0
  135. package/dist/technospam/pages/MentorshipMentorshipPagePage.d.ts.map +1 -0
  136. package/dist/technospam/pages/MentorshipMentorshipPagePage.js +209 -0
  137. package/dist/technospam/pages/MentorshipMentorshipPagePage.js.map +1 -0
  138. package/dist/technospam/pages/MentorshipSessionsPagePage.d.ts +2 -0
  139. package/dist/technospam/pages/MentorshipSessionsPagePage.d.ts.map +1 -0
  140. package/dist/technospam/pages/MentorshipSessionsPagePage.js +170 -0
  141. package/dist/technospam/pages/MentorshipSessionsPagePage.js.map +1 -0
  142. package/dist/technospam/pages/OpenSourceContributionsPagePage.d.ts +2 -0
  143. package/dist/technospam/pages/OpenSourceContributionsPagePage.d.ts.map +1 -0
  144. package/dist/technospam/pages/OpenSourceContributionsPagePage.js +191 -0
  145. package/dist/technospam/pages/OpenSourceContributionsPagePage.js.map +1 -0
  146. package/dist/technospam/pages/OpenSourceOpenSourcePagePage.d.ts +2 -0
  147. package/dist/technospam/pages/OpenSourceOpenSourcePagePage.d.ts.map +1 -0
  148. package/dist/technospam/pages/OpenSourceOpenSourcePagePage.js +216 -0
  149. package/dist/technospam/pages/OpenSourceOpenSourcePagePage.js.map +1 -0
  150. package/dist/technospam/pages/OpenSourceProjectsPagePage.d.ts +2 -0
  151. package/dist/technospam/pages/OpenSourceProjectsPagePage.d.ts.map +1 -0
  152. package/dist/technospam/pages/OpenSourceProjectsPagePage.js +150 -0
  153. package/dist/technospam/pages/OpenSourceProjectsPagePage.js.map +1 -0
  154. package/dist/technospam/pages/StudyPlannerGoalsPagePage.d.ts +2 -0
  155. package/dist/technospam/pages/StudyPlannerGoalsPagePage.d.ts.map +1 -0
  156. package/dist/technospam/pages/StudyPlannerGoalsPagePage.js +161 -0
  157. package/dist/technospam/pages/StudyPlannerGoalsPagePage.js.map +1 -0
  158. package/dist/technospam/pages/StudyPlannerLearningPathDetailsPagePage.d.ts +2 -0
  159. package/dist/technospam/pages/StudyPlannerLearningPathDetailsPagePage.d.ts.map +1 -0
  160. package/dist/technospam/pages/StudyPlannerLearningPathDetailsPagePage.js +198 -0
  161. package/dist/technospam/pages/StudyPlannerLearningPathDetailsPagePage.js.map +1 -0
  162. package/dist/technospam/pages/StudyPlannerLearningPathsPagePage.d.ts +2 -0
  163. package/dist/technospam/pages/StudyPlannerLearningPathsPagePage.d.ts.map +1 -0
  164. package/dist/technospam/pages/StudyPlannerLearningPathsPagePage.js +105 -0
  165. package/dist/technospam/pages/StudyPlannerLearningPathsPagePage.js.map +1 -0
  166. package/dist/technospam/pages/StudyPlannerStudyPlanDetailsPagePage.d.ts +2 -0
  167. package/dist/technospam/pages/StudyPlannerStudyPlanDetailsPagePage.d.ts.map +1 -0
  168. package/dist/technospam/pages/StudyPlannerStudyPlanDetailsPagePage.js +161 -0
  169. package/dist/technospam/pages/StudyPlannerStudyPlanDetailsPagePage.js.map +1 -0
  170. package/dist/technospam/pages/StudyPlannerStudyPlanEditPagePage.d.ts +2 -0
  171. package/dist/technospam/pages/StudyPlannerStudyPlanEditPagePage.d.ts.map +1 -0
  172. package/dist/technospam/pages/StudyPlannerStudyPlanEditPagePage.js +127 -0
  173. package/dist/technospam/pages/StudyPlannerStudyPlanEditPagePage.js.map +1 -0
  174. package/dist/technospam/pages/StudyPlannerStudyPlannerPagePage.d.ts +2 -0
  175. package/dist/technospam/pages/StudyPlannerStudyPlannerPagePage.d.ts.map +1 -0
  176. package/dist/technospam/pages/StudyPlannerStudyPlannerPagePage.js +238 -0
  177. package/dist/technospam/pages/StudyPlannerStudyPlannerPagePage.js.map +1 -0
  178. package/dist/technospam/pages/StudyPlannerStudyPlansPagePage.d.ts +2 -0
  179. package/dist/technospam/pages/StudyPlannerStudyPlansPagePage.d.ts.map +1 -0
  180. package/dist/technospam/pages/StudyPlannerStudyPlansPagePage.js +113 -0
  181. package/dist/technospam/pages/StudyPlannerStudyPlansPagePage.js.map +1 -0
  182. package/dist/technospam/providers/TechnoSpamProvider.d.ts +6 -0
  183. package/dist/technospam/providers/TechnoSpamProvider.d.ts.map +1 -0
  184. package/dist/technospam/providers/TechnoSpamProvider.js +27 -0
  185. package/dist/technospam/providers/TechnoSpamProvider.js.map +1 -0
  186. package/dist/technospam/store/technospamStore.d.ts +190 -0
  187. package/dist/technospam/store/technospamStore.d.ts.map +1 -0
  188. package/dist/technospam/store/technospamStore.js +912 -0
  189. package/dist/technospam/store/technospamStore.js.map +1 -0
  190. package/dist/technospam/types/index.d.ts +51 -0
  191. package/dist/technospam/types/index.d.ts.map +1 -0
  192. package/dist/technospam/utils/cn.d.ts +4 -0
  193. package/dist/technospam/utils/cn.d.ts.map +1 -0
  194. package/dist/technospam/utils/i18n.d.ts +6 -0
  195. package/dist/technospam/utils/i18n.d.ts.map +1 -0
  196. package/dist/technospam/utils/i18n.js +15 -0
  197. package/dist/technospam/utils/i18n.js.map +1 -0
  198. package/dist/technospam/utils/navigation.d.ts +2 -0
  199. package/dist/technospam/utils/navigation.d.ts.map +1 -0
  200. package/dist/technospam/utils/navigation.js +8 -0
  201. package/dist/technospam/utils/navigation.js.map +1 -0
  202. package/package.json +107 -0
@@ -0,0 +1,185 @@
1
+ import { Trophy as e, UserPlus as t, Users as n } from "lucide-react";
2
+ import { jsx as r, jsxs as i } from "react/jsx-runtime";
3
+ import { Badge as a, Button as o, Card as s, CardContent as c, CardHeader as l, CardTitle as u } from "@burdenoff/fe-libs/ui";
4
+ //#region src/technospam/pages/HackathonsTeamsPagePage.tsx
5
+ var d = [
6
+ {
7
+ id: 1,
8
+ name: "Code Crusaders",
9
+ hackathon: "AI Innovation Challenge 2026",
10
+ members: [
11
+ "Alice",
12
+ "Bob",
13
+ "Carol"
14
+ ],
15
+ maxMembers: 4,
16
+ skills: [
17
+ "Python",
18
+ "TensorFlow",
19
+ "React"
20
+ ],
21
+ lookingForMembers: !0
22
+ },
23
+ {
24
+ id: 2,
25
+ name: "Blockchain Builders",
26
+ hackathon: "Web3 DeFi Hackathon",
27
+ members: [
28
+ "Dave",
29
+ "Eve",
30
+ "Frank"
31
+ ],
32
+ maxMembers: 3,
33
+ skills: [
34
+ "Solidity",
35
+ "React",
36
+ "ethers.js"
37
+ ],
38
+ lookingForMembers: !1
39
+ },
40
+ {
41
+ id: 3,
42
+ name: "Green Innovators",
43
+ hackathon: "Green Tech Sustainability Hack",
44
+ members: ["Grace"],
45
+ maxMembers: 5,
46
+ skills: [
47
+ "Python",
48
+ "IoT",
49
+ "Data Science"
50
+ ],
51
+ lookingForMembers: !0
52
+ },
53
+ {
54
+ id: 4,
55
+ name: "Mobile Mavericks",
56
+ hackathon: "Mobile App Sprint",
57
+ members: [
58
+ "Heidi",
59
+ "Ivan",
60
+ "Judy",
61
+ "Karl"
62
+ ],
63
+ maxMembers: 4,
64
+ skills: [
65
+ "React Native",
66
+ "Flutter",
67
+ "UI/UX"
68
+ ],
69
+ lookingForMembers: !1
70
+ }
71
+ ];
72
+ function f() {
73
+ let f = d.filter((e) => e.lookingForMembers).length;
74
+ return /* @__PURE__ */ i("div", {
75
+ className: "space-y-6 p-6",
76
+ children: [
77
+ /* @__PURE__ */ i("div", {
78
+ className: "flex items-center justify-between",
79
+ children: [/* @__PURE__ */ i("div", { children: [/* @__PURE__ */ r("h1", {
80
+ className: "text-2xl font-semibold text-foreground",
81
+ children: "Hackathon Teams"
82
+ }), /* @__PURE__ */ r("p", {
83
+ className: "text-sm text-muted-foreground",
84
+ children: "Find a team or manage your existing teams"
85
+ })] }), /* @__PURE__ */ i(o, {
86
+ size: "sm",
87
+ children: [/* @__PURE__ */ r(t, { className: "mr-2 h-4 w-4" }), "Create Team"]
88
+ })]
89
+ }),
90
+ /* @__PURE__ */ i("div", {
91
+ className: "grid gap-4 md:grid-cols-3",
92
+ children: [
93
+ /* @__PURE__ */ i(s, { children: [/* @__PURE__ */ i(l, {
94
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
95
+ children: [/* @__PURE__ */ r(u, {
96
+ className: "text-sm font-medium",
97
+ children: "Total Teams"
98
+ }), /* @__PURE__ */ r(n, { className: "h-4 w-4 text-muted-foreground" })]
99
+ }), /* @__PURE__ */ r(c, { children: /* @__PURE__ */ r("div", {
100
+ className: "text-2xl font-bold",
101
+ children: d.length
102
+ }) })] }),
103
+ /* @__PURE__ */ i(s, { children: [/* @__PURE__ */ i(l, {
104
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
105
+ children: [/* @__PURE__ */ r(u, {
106
+ className: "text-sm font-medium",
107
+ children: "Looking for Members"
108
+ }), /* @__PURE__ */ r(t, { className: "h-4 w-4 text-green-500" })]
109
+ }), /* @__PURE__ */ r(c, { children: /* @__PURE__ */ r("div", {
110
+ className: "text-2xl font-bold",
111
+ children: f
112
+ }) })] }),
113
+ /* @__PURE__ */ i(s, { children: [/* @__PURE__ */ i(l, {
114
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
115
+ children: [/* @__PURE__ */ r(u, {
116
+ className: "text-sm font-medium",
117
+ children: "Your Teams"
118
+ }), /* @__PURE__ */ r(e, { className: "h-4 w-4 text-muted-foreground" })]
119
+ }), /* @__PURE__ */ r(c, { children: /* @__PURE__ */ r("div", {
120
+ className: "text-2xl font-bold",
121
+ children: "1"
122
+ }) })] })
123
+ ]
124
+ }),
125
+ /* @__PURE__ */ r("div", {
126
+ className: "grid gap-4 md:grid-cols-2",
127
+ children: d.map((e) => /* @__PURE__ */ i(s, { children: [/* @__PURE__ */ r(l, {
128
+ className: "pb-3",
129
+ children: /* @__PURE__ */ i("div", {
130
+ className: "flex items-start justify-between",
131
+ children: [/* @__PURE__ */ i("div", { children: [/* @__PURE__ */ r(u, {
132
+ className: "text-base",
133
+ children: e.name
134
+ }), /* @__PURE__ */ r("p", {
135
+ className: "text-xs text-muted-foreground",
136
+ children: e.hackathon
137
+ })] }), e.lookingForMembers && /* @__PURE__ */ r(a, {
138
+ variant: "secondary",
139
+ className: "text-xs",
140
+ children: "Open"
141
+ })]
142
+ })
143
+ }), /* @__PURE__ */ i(c, {
144
+ className: "space-y-3",
145
+ children: [
146
+ /* @__PURE__ */ i("div", {
147
+ className: "flex items-center gap-2 text-sm text-muted-foreground",
148
+ children: [/* @__PURE__ */ r(n, { className: "h-4 w-4" }), /* @__PURE__ */ i("span", { children: [
149
+ e.members.length,
150
+ "/",
151
+ e.maxMembers,
152
+ " members"
153
+ ] })]
154
+ }),
155
+ /* @__PURE__ */ r("div", {
156
+ className: "flex flex-wrap gap-1",
157
+ children: e.members.map((e) => /* @__PURE__ */ r("span", {
158
+ className: "inline-flex items-center rounded-full bg-muted px-2.5 py-0.5 text-xs font-medium",
159
+ children: e
160
+ }, e))
161
+ }),
162
+ /* @__PURE__ */ r("div", {
163
+ className: "flex flex-wrap gap-1",
164
+ children: e.skills.map((e) => /* @__PURE__ */ r(a, {
165
+ variant: "outline",
166
+ className: "text-xs",
167
+ children: e
168
+ }, e))
169
+ }),
170
+ e.lookingForMembers && /* @__PURE__ */ i(o, {
171
+ variant: "outline",
172
+ size: "sm",
173
+ className: "w-full",
174
+ children: [/* @__PURE__ */ r(t, { className: "mr-2 h-4 w-4" }), "Request to Join"]
175
+ })
176
+ ]
177
+ })] }, e.id))
178
+ })
179
+ ]
180
+ });
181
+ }
182
+ //#endregion
183
+ export { f as HackathonsTeamsPagePage };
184
+
185
+ //# sourceMappingURL=HackathonsTeamsPagePage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HackathonsTeamsPagePage.js","names":[],"sources":["../../../src/technospam/pages/HackathonsTeamsPagePage.tsx"],"sourcesContent":["import { Card, CardContent, CardHeader, CardTitle, Badge, Button } from '@burdenoff/fe-libs/ui';\nimport { Users, UserPlus, Code, Trophy } from 'lucide-react';\n\nconst mockTeams = [\n {\n id: 1,\n name: 'Code Crusaders',\n hackathon: 'AI Innovation Challenge 2026',\n members: ['Alice', 'Bob', 'Carol'],\n maxMembers: 4,\n skills: ['Python', 'TensorFlow', 'React'],\n lookingForMembers: true,\n },\n {\n id: 2,\n name: 'Blockchain Builders',\n hackathon: 'Web3 DeFi Hackathon',\n members: ['Dave', 'Eve', 'Frank'],\n maxMembers: 3,\n skills: ['Solidity', 'React', 'ethers.js'],\n lookingForMembers: false,\n },\n {\n id: 3,\n name: 'Green Innovators',\n hackathon: 'Green Tech Sustainability Hack',\n members: ['Grace'],\n maxMembers: 5,\n skills: ['Python', 'IoT', 'Data Science'],\n lookingForMembers: true,\n },\n {\n id: 4,\n name: 'Mobile Mavericks',\n hackathon: 'Mobile App Sprint',\n members: ['Heidi', 'Ivan', 'Judy', 'Karl'],\n maxMembers: 4,\n skills: ['React Native', 'Flutter', 'UI/UX'],\n lookingForMembers: false,\n },\n];\n\nexport function HackathonsTeamsPagePage() {\n const lookingCount = mockTeams.filter((t) => t.lookingForMembers).length;\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 text-foreground\">Hackathon Teams</h1>\n <p className=\"text-sm text-muted-foreground\">Find a team or manage your existing teams</p>\n </div>\n <Button size=\"sm\">\n <UserPlus className=\"mr-2 h-4 w-4\" />\n Create Team\n </Button>\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 Teams</CardTitle>\n <Users className=\"h-4 w-4 text-muted-foreground\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">{mockTeams.length}</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\">Looking for Members</CardTitle>\n <UserPlus className=\"h-4 w-4 text-green-500\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">{lookingCount}</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\">Your Teams</CardTitle>\n <Trophy className=\"h-4 w-4 text-muted-foreground\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">1</div>\n </CardContent>\n </Card>\n </div>\n\n <div className=\"grid gap-4 md:grid-cols-2\">\n {mockTeams.map((team) => (\n <Card key={team.id}>\n <CardHeader className=\"pb-3\">\n <div className=\"flex items-start justify-between\">\n <div>\n <CardTitle className=\"text-base\">{team.name}</CardTitle>\n <p className=\"text-xs text-muted-foreground\">{team.hackathon}</p>\n </div>\n {team.lookingForMembers && (\n <Badge variant=\"secondary\" className=\"text-xs\">\n Open\n </Badge>\n )}\n </div>\n </CardHeader>\n <CardContent className=\"space-y-3\">\n <div className=\"flex items-center gap-2 text-sm text-muted-foreground\">\n <Users className=\"h-4 w-4\" />\n <span>\n {team.members.length}/{team.maxMembers} members\n </span>\n </div>\n <div className=\"flex flex-wrap gap-1\">\n {team.members.map((member) => (\n <span\n key={member}\n className=\"inline-flex items-center rounded-full bg-muted px-2.5 py-0.5 text-xs font-medium\"\n >\n {member}\n </span>\n ))}\n </div>\n <div className=\"flex flex-wrap gap-1\">\n {team.skills.map((skill) => (\n <Badge key={skill} variant=\"outline\" className=\"text-xs\">\n {skill}\n </Badge>\n ))}\n </div>\n {team.lookingForMembers && (\n <Button variant=\"outline\" size=\"sm\" className=\"w-full\">\n <UserPlus className=\"mr-2 h-4 w-4\" />\n Request to Join\n </Button>\n )}\n </CardContent>\n </Card>\n ))}\n </div>\n </div>\n );\n}\n"],"mappings":";;;;AAGA,IAAM,IAAY;CAChB;EACE,IAAI;EACJ,MAAM;EACN,WAAW;EACX,SAAS;GAAC;GAAS;GAAO;GAAQ;EAClC,YAAY;EACZ,QAAQ;GAAC;GAAU;GAAc;GAAQ;EACzC,mBAAmB;EACpB;CACD;EACE,IAAI;EACJ,MAAM;EACN,WAAW;EACX,SAAS;GAAC;GAAQ;GAAO;GAAQ;EACjC,YAAY;EACZ,QAAQ;GAAC;GAAY;GAAS;GAAY;EAC1C,mBAAmB;EACpB;CACD;EACE,IAAI;EACJ,MAAM;EACN,WAAW;EACX,SAAS,CAAC,QAAQ;EAClB,YAAY;EACZ,QAAQ;GAAC;GAAU;GAAO;GAAe;EACzC,mBAAmB;EACpB;CACD;EACE,IAAI;EACJ,MAAM;EACN,WAAW;EACX,SAAS;GAAC;GAAS;GAAQ;GAAQ;GAAO;EAC1C,YAAY;EACZ,QAAQ;GAAC;GAAgB;GAAW;GAAQ;EAC5C,mBAAmB;EACpB;CACF;AAED,SAAgB,IAA0B;CACxC,IAAM,IAAe,EAAU,QAAQ,MAAM,EAAE,kBAAkB,CAAC;AAElE,QACE,kBAAC,OAAD;EAAK,WAAU;YAAf;GACE,kBAAC,OAAD;IAAK,WAAU;cAAf,CACE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,MAAD;KAAI,WAAU;eAAyC;KAAoB,CAAA,EAC3E,kBAAC,KAAD;KAAG,WAAU;eAAgC;KAA6C,CAAA,CACtF,EAAA,CAAA,EACN,kBAAC,GAAD;KAAQ,MAAK;eAAb,CACE,kBAAC,GAAD,EAAU,WAAU,gBAAiB,CAAA,EAAA,cAE9B;OACL;;GAEN,kBAAC,OAAD;IAAK,WAAU;cAAf;KACE,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD;MAAY,WAAU;gBAAtB,CACE,kBAAC,GAAD;OAAW,WAAU;iBAAsB;OAAuB,CAAA,EAClE,kBAAC,GAAD,EAAO,WAAU,iCAAkC,CAAA,CACxC;SACb,kBAAC,GAAD,EAAA,UACE,kBAAC,OAAD;MAAK,WAAU;gBAAsB,EAAU;MAAa,CAAA,EAChD,CAAA,CACT,EAAA,CAAA;KACP,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD;MAAY,WAAU;gBAAtB,CACE,kBAAC,GAAD;OAAW,WAAU;iBAAsB;OAA+B,CAAA,EAC1E,kBAAC,GAAD,EAAU,WAAU,0BAA2B,CAAA,CACpC;SACb,kBAAC,GAAD,EAAA,UACE,kBAAC,OAAD;MAAK,WAAU;gBAAsB;MAAmB,CAAA,EAC5C,CAAA,CACT,EAAA,CAAA;KACP,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD;MAAY,WAAU;gBAAtB,CACE,kBAAC,GAAD;OAAW,WAAU;iBAAsB;OAAsB,CAAA,EACjE,kBAAC,GAAD,EAAQ,WAAU,iCAAkC,CAAA,CACzC;SACb,kBAAC,GAAD,EAAA,UACE,kBAAC,OAAD;MAAK,WAAU;gBAAqB;MAAO,CAAA,EAC/B,CAAA,CACT,EAAA,CAAA;KACH;;GAEN,kBAAC,OAAD;IAAK,WAAU;cACZ,EAAU,KAAK,MACd,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD;KAAY,WAAU;eACpB,kBAAC,OAAD;MAAK,WAAU;gBAAf,CACE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,GAAD;OAAW,WAAU;iBAAa,EAAK;OAAiB,CAAA,EACxD,kBAAC,KAAD;OAAG,WAAU;iBAAiC,EAAK;OAAc,CAAA,CAC7D,EAAA,CAAA,EACL,EAAK,qBACJ,kBAAC,GAAD;OAAO,SAAQ;OAAY,WAAU;iBAAU;OAEvC,CAAA,CAEN;;KACK,CAAA,EACb,kBAAC,GAAD;KAAa,WAAU;eAAvB;MACE,kBAAC,OAAD;OAAK,WAAU;iBAAf,CACE,kBAAC,GAAD,EAAO,WAAU,WAAY,CAAA,EAC7B,kBAAC,QAAD,EAAA,UAAA;QACG,EAAK,QAAQ;QAAO;QAAE,EAAK;QAAW;QAClC,EAAA,CAAA,CACH;;MACN,kBAAC,OAAD;OAAK,WAAU;iBACZ,EAAK,QAAQ,KAAK,MACjB,kBAAC,QAAD;QAEE,WAAU;kBAET;QACI,EAJA,EAIA,CACP;OACE,CAAA;MACN,kBAAC,OAAD;OAAK,WAAU;iBACZ,EAAK,OAAO,KAAK,MAChB,kBAAC,GAAD;QAAmB,SAAQ;QAAU,WAAU;kBAC5C;QACK,EAFI,EAEJ,CACR;OACE,CAAA;MACL,EAAK,qBACJ,kBAAC,GAAD;OAAQ,SAAQ;OAAU,MAAK;OAAK,WAAU;iBAA9C,CACE,kBAAC,GAAD,EAAU,WAAU,gBAAiB,CAAA,EAAA,kBAE9B;;MAEC;OACT,EAAA,EA7CI,EAAK,GA6CT,CACP;IACE,CAAA;GACF"}
@@ -0,0 +1,2 @@
1
+ export declare function KnowledgeBaseArticleDetailsPagePage(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=KnowledgeBaseArticleDetailsPagePage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KnowledgeBaseArticleDetailsPagePage.d.ts","sourceRoot":"","sources":["../../../src/technospam/pages/KnowledgeBaseArticleDetailsPagePage.tsx"],"names":[],"mappings":"AAIA,wBAAgB,mCAAmC,4CAqIlD"}
@@ -0,0 +1,181 @@
1
+ import { useTechnoSpamStore as e } from "../store/technospamStore.js";
2
+ import { ArrowLeft as t, Calendar as n, Clock as r, Eye as i, Heart as a, User as o } from "lucide-react";
3
+ import { jsx as s, jsxs as c } from "react/jsx-runtime";
4
+ import { Badge as l, Button as u, Card as d, CardContent as f, CardHeader as p, CardTitle as m } from "@burdenoff/fe-libs/ui";
5
+ //#region src/technospam/pages/KnowledgeBaseArticleDetailsPagePage.tsx
6
+ function h() {
7
+ let { articles: h } = e(), g = h[0];
8
+ if (!g) return /* @__PURE__ */ s("div", {
9
+ className: "p-6 text-center text-muted-foreground",
10
+ children: "Article not found"
11
+ });
12
+ let _ = h.slice(1, 4);
13
+ return /* @__PURE__ */ c("div", {
14
+ className: "space-y-6 p-6",
15
+ children: [/* @__PURE__ */ c(u, {
16
+ variant: "ghost",
17
+ size: "sm",
18
+ className: "text-muted-foreground",
19
+ children: [/* @__PURE__ */ s(t, { className: "mr-2 h-4 w-4" }), "Back to Articles"]
20
+ }), /* @__PURE__ */ c("div", {
21
+ className: "grid gap-6 lg:grid-cols-3",
22
+ children: [/* @__PURE__ */ c("div", {
23
+ className: "space-y-6 lg:col-span-2",
24
+ children: [/* @__PURE__ */ c("div", {
25
+ className: "space-y-4",
26
+ children: [
27
+ /* @__PURE__ */ c("div", {
28
+ className: "flex items-center gap-2",
29
+ children: [/* @__PURE__ */ s(l, {
30
+ variant: "secondary",
31
+ children: g.category
32
+ }), /* @__PURE__ */ c("span", {
33
+ className: "flex items-center gap-1 text-xs text-muted-foreground",
34
+ children: [
35
+ /* @__PURE__ */ s(r, { className: "h-3 w-3" }),
36
+ g.readTime,
37
+ " min read"
38
+ ]
39
+ })]
40
+ }),
41
+ /* @__PURE__ */ s("h1", {
42
+ className: "text-3xl font-bold text-foreground",
43
+ children: g.title
44
+ }),
45
+ /* @__PURE__ */ c("div", {
46
+ className: "flex items-center gap-4 text-sm text-muted-foreground",
47
+ children: [
48
+ /* @__PURE__ */ c("span", {
49
+ className: "flex items-center gap-1",
50
+ children: [/* @__PURE__ */ s(o, { className: "h-4 w-4" }), g.author]
51
+ }),
52
+ /* @__PURE__ */ c("span", {
53
+ className: "flex items-center gap-1",
54
+ children: [/* @__PURE__ */ s(n, { className: "h-4 w-4" }), new Date(g.publishedAt).toLocaleDateString()]
55
+ }),
56
+ /* @__PURE__ */ c("span", {
57
+ className: "flex items-center gap-1",
58
+ children: [
59
+ /* @__PURE__ */ s(i, { className: "h-4 w-4" }),
60
+ g.views.toLocaleString(),
61
+ " views"
62
+ ]
63
+ }),
64
+ /* @__PURE__ */ c("span", {
65
+ className: "flex items-center gap-1",
66
+ children: [
67
+ /* @__PURE__ */ s(a, { className: "h-4 w-4" }),
68
+ g.likes,
69
+ " likes"
70
+ ]
71
+ })
72
+ ]
73
+ }),
74
+ /* @__PURE__ */ s("div", {
75
+ className: "flex flex-wrap gap-1",
76
+ children: g.tags.map((e) => /* @__PURE__ */ s(l, {
77
+ variant: "outline",
78
+ className: "text-xs",
79
+ children: e
80
+ }, e))
81
+ })
82
+ ]
83
+ }), /* @__PURE__ */ s(d, { children: /* @__PURE__ */ c(f, {
84
+ className: "prose prose-sm max-w-none pt-6 text-foreground",
85
+ children: [
86
+ /* @__PURE__ */ s("p", {
87
+ className: "text-muted-foreground",
88
+ children: g.excerpt
89
+ }),
90
+ /* @__PURE__ */ s("h2", {
91
+ className: "mt-6 text-lg font-semibold",
92
+ children: "Introduction"
93
+ }),
94
+ /* @__PURE__ */ s("p", {
95
+ className: "text-sm text-muted-foreground",
96
+ children: "This comprehensive guide covers everything you need to know about the topic. We will walk through the key concepts, best practices, and practical examples that you can apply in your own projects."
97
+ }),
98
+ /* @__PURE__ */ s("h2", {
99
+ className: "mt-6 text-lg font-semibold",
100
+ children: "Key Concepts"
101
+ }),
102
+ /* @__PURE__ */ s("p", {
103
+ className: "text-sm text-muted-foreground",
104
+ children: "Understanding the fundamentals is crucial before diving into advanced topics. Let us start with the core principles and then build upon them with real-world examples."
105
+ }),
106
+ /* @__PURE__ */ s("div", {
107
+ className: "mt-4 rounded-lg bg-muted p-4",
108
+ children: /* @__PURE__ */ c("p", {
109
+ className: "text-sm font-mono text-muted-foreground",
110
+ children: [
111
+ "// Example code snippet",
112
+ /* @__PURE__ */ s("br", {}),
113
+ "const result = processData(input);",
114
+ /* @__PURE__ */ s("br", {}),
115
+ "console.log(result);"
116
+ ]
117
+ })
118
+ }),
119
+ /* @__PURE__ */ s("h2", {
120
+ className: "mt-6 text-lg font-semibold",
121
+ children: "Best Practices"
122
+ }),
123
+ /* @__PURE__ */ s("p", {
124
+ className: "text-sm text-muted-foreground",
125
+ children: "Following industry best practices ensures your code is maintainable, scalable, and performant. Here are the top recommendations from experts in the field."
126
+ }),
127
+ /* @__PURE__ */ s("h2", {
128
+ className: "mt-6 text-lg font-semibold",
129
+ children: "Conclusion"
130
+ }),
131
+ /* @__PURE__ */ s("p", {
132
+ className: "text-sm text-muted-foreground",
133
+ children: "By following the patterns and practices outlined in this article, you will be well-equipped to tackle real-world challenges in this domain. Keep practicing and building projects to reinforce your learning."
134
+ })
135
+ ]
136
+ }) })]
137
+ }), /* @__PURE__ */ c("div", {
138
+ className: "space-y-4",
139
+ children: [/* @__PURE__ */ c(d, { children: [/* @__PURE__ */ s(p, { children: /* @__PURE__ */ s(m, {
140
+ className: "text-base",
141
+ children: "About the Author"
142
+ }) }), /* @__PURE__ */ s(f, { children: /* @__PURE__ */ c("div", {
143
+ className: "flex items-center gap-3",
144
+ children: [/* @__PURE__ */ s("div", {
145
+ className: "flex h-10 w-10 items-center justify-center rounded-full bg-muted",
146
+ children: /* @__PURE__ */ s(o, { className: "h-5 w-5 text-muted-foreground" })
147
+ }), /* @__PURE__ */ c("div", { children: [/* @__PURE__ */ s("p", {
148
+ className: "font-medium",
149
+ children: g.author
150
+ }), /* @__PURE__ */ s("p", {
151
+ className: "text-xs text-muted-foreground",
152
+ children: "Technical Writer"
153
+ })] })]
154
+ }) })] }), /* @__PURE__ */ c(d, { children: [/* @__PURE__ */ s(p, { children: /* @__PURE__ */ s(m, {
155
+ className: "text-base",
156
+ children: "Related Articles"
157
+ }) }), /* @__PURE__ */ s(f, {
158
+ className: "space-y-3",
159
+ children: _.map((e) => /* @__PURE__ */ c("div", {
160
+ className: "rounded-lg border border-border p-3 space-y-1",
161
+ children: [/* @__PURE__ */ s("p", {
162
+ className: "text-sm font-medium",
163
+ children: e.title
164
+ }), /* @__PURE__ */ c("div", {
165
+ className: "flex items-center gap-2 text-xs text-muted-foreground",
166
+ children: [/* @__PURE__ */ s(l, {
167
+ variant: "secondary",
168
+ className: "text-xs",
169
+ children: e.category
170
+ }), /* @__PURE__ */ c("span", { children: [e.readTime, " min read"] })]
171
+ })]
172
+ }, e.id))
173
+ })] })]
174
+ })]
175
+ })]
176
+ });
177
+ }
178
+ //#endregion
179
+ export { h as KnowledgeBaseArticleDetailsPagePage };
180
+
181
+ //# sourceMappingURL=KnowledgeBaseArticleDetailsPagePage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KnowledgeBaseArticleDetailsPagePage.js","names":[],"sources":["../../../src/technospam/pages/KnowledgeBaseArticleDetailsPagePage.tsx"],"sourcesContent":["import { Card, CardContent, CardHeader, CardTitle, Badge, Button } from '@burdenoff/fe-libs/ui';\nimport { ArrowLeft, Clock, Eye, Heart, User, Calendar } from 'lucide-react';\nimport { useTechnoSpamStore } from '../store/technospamStore';\n\nexport function KnowledgeBaseArticleDetailsPagePage() {\n const { articles } = useTechnoSpamStore();\n const article = articles[0];\n\n if (!article) {\n return <div className=\"p-6 text-center text-muted-foreground\">Article not found</div>;\n }\n\n const relatedArticles = articles.slice(1, 4);\n\n return (\n <div className=\"space-y-6 p-6\">\n <Button variant=\"ghost\" size=\"sm\" className=\"text-muted-foreground\">\n <ArrowLeft className=\"mr-2 h-4 w-4\" />\n Back to Articles\n </Button>\n\n <div className=\"grid gap-6 lg:grid-cols-3\">\n <div className=\"space-y-6 lg:col-span-2\">\n <div className=\"space-y-4\">\n <div className=\"flex items-center gap-2\">\n <Badge variant=\"secondary\">{article.category}</Badge>\n <span className=\"flex items-center gap-1 text-xs text-muted-foreground\">\n <Clock className=\"h-3 w-3\" />\n {article.readTime} min read\n </span>\n </div>\n <h1 className=\"text-3xl font-bold text-foreground\">{article.title}</h1>\n <div className=\"flex items-center gap-4 text-sm text-muted-foreground\">\n <span className=\"flex items-center gap-1\">\n <User className=\"h-4 w-4\" />\n {article.author}\n </span>\n <span className=\"flex items-center gap-1\">\n <Calendar className=\"h-4 w-4\" />\n {new Date(article.publishedAt).toLocaleDateString()}\n </span>\n <span className=\"flex items-center gap-1\">\n <Eye className=\"h-4 w-4\" />\n {article.views.toLocaleString()} views\n </span>\n <span className=\"flex items-center gap-1\">\n <Heart className=\"h-4 w-4\" />\n {article.likes} likes\n </span>\n </div>\n <div className=\"flex flex-wrap gap-1\">\n {article.tags.map((tag) => (\n <Badge key={tag} variant=\"outline\" className=\"text-xs\">\n {tag}\n </Badge>\n ))}\n </div>\n </div>\n\n <Card>\n <CardContent className=\"prose prose-sm max-w-none pt-6 text-foreground\">\n <p className=\"text-muted-foreground\">{article.excerpt}</p>\n <h2 className=\"mt-6 text-lg font-semibold\">Introduction</h2>\n <p className=\"text-sm text-muted-foreground\">\n This comprehensive guide covers everything you need to know about the topic. We will\n walk through the key concepts, best practices, and practical examples that you can\n apply in your own projects.\n </p>\n <h2 className=\"mt-6 text-lg font-semibold\">Key Concepts</h2>\n <p className=\"text-sm text-muted-foreground\">\n Understanding the fundamentals is crucial before diving into advanced topics. Let us\n start with the core principles and then build upon them with real-world examples.\n </p>\n <div className=\"mt-4 rounded-lg bg-muted p-4\">\n <p className=\"text-sm font-mono text-muted-foreground\">\n {'// Example code snippet'}\n <br />\n const result = processData(input);\n <br />\n console.log(result);\n </p>\n </div>\n <h2 className=\"mt-6 text-lg font-semibold\">Best Practices</h2>\n <p className=\"text-sm text-muted-foreground\">\n Following industry best practices ensures your code is maintainable, scalable, and\n performant. Here are the top recommendations from experts in the field.\n </p>\n <h2 className=\"mt-6 text-lg font-semibold\">Conclusion</h2>\n <p className=\"text-sm text-muted-foreground\">\n By following the patterns and practices outlined in this article, you will be\n well-equipped to tackle real-world challenges in this domain. Keep practicing and\n building projects to reinforce your learning.\n </p>\n </CardContent>\n </Card>\n </div>\n\n <div className=\"space-y-4\">\n <Card>\n <CardHeader>\n <CardTitle className=\"text-base\">About the Author</CardTitle>\n </CardHeader>\n <CardContent>\n <div className=\"flex items-center gap-3\">\n <div className=\"flex h-10 w-10 items-center justify-center rounded-full bg-muted\">\n <User className=\"h-5 w-5 text-muted-foreground\" />\n </div>\n <div>\n <p className=\"font-medium\">{article.author}</p>\n <p className=\"text-xs text-muted-foreground\">Technical Writer</p>\n </div>\n </div>\n </CardContent>\n </Card>\n\n <Card>\n <CardHeader>\n <CardTitle className=\"text-base\">Related Articles</CardTitle>\n </CardHeader>\n <CardContent className=\"space-y-3\">\n {relatedArticles.map((related) => (\n <div key={related.id} className=\"rounded-lg border border-border p-3 space-y-1\">\n <p className=\"text-sm font-medium\">{related.title}</p>\n <div className=\"flex items-center gap-2 text-xs text-muted-foreground\">\n <Badge variant=\"secondary\" className=\"text-xs\">\n {related.category}\n </Badge>\n <span>{related.readTime} min read</span>\n </div>\n </div>\n ))}\n </CardContent>\n </Card>\n </div>\n </div>\n </div>\n );\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function KnowledgeBaseArticlesPagePage(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=KnowledgeBaseArticlesPagePage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KnowledgeBaseArticlesPagePage.d.ts","sourceRoot":"","sources":["../../../src/technospam/pages/KnowledgeBaseArticlesPagePage.tsx"],"names":[],"mappings":"AAKA,wBAAgB,6BAA6B,4CAyG5C"}
@@ -0,0 +1,112 @@
1
+ import { useTechnoSpamStore as e } from "../store/technospamStore.js";
2
+ import { useMemo as t, useState as n } from "react";
3
+ import { Clock as r, Eye as i, Heart as a, Search as o } from "lucide-react";
4
+ import { jsx as s, jsxs as c } from "react/jsx-runtime";
5
+ import { Badge as l, Button as u, Card as d, CardContent as f, Input as p } from "@burdenoff/fe-libs/ui";
6
+ //#region src/technospam/pages/KnowledgeBaseArticlesPagePage.tsx
7
+ function m() {
8
+ let { articles: m } = e(), [h, g] = n(""), [_, v] = n("all"), y = ["all", ...new Set(m.map((e) => e.category))], b = t(() => m.filter((e) => {
9
+ let t = h === "" || e.title.toLowerCase().includes(h.toLowerCase()) || e.excerpt.toLowerCase().includes(h.toLowerCase()) || e.author.toLowerCase().includes(h.toLowerCase()) || e.tags.some((e) => e.toLowerCase().includes(h.toLowerCase())), n = _ === "all" || e.category === _;
10
+ return t && n;
11
+ }), [
12
+ m,
13
+ h,
14
+ _
15
+ ]);
16
+ return /* @__PURE__ */ c("div", {
17
+ className: "space-y-6 p-6",
18
+ children: [
19
+ /* @__PURE__ */ c("div", { children: [/* @__PURE__ */ s("h1", {
20
+ className: "text-2xl font-semibold text-foreground",
21
+ children: "Articles"
22
+ }), /* @__PURE__ */ c("p", {
23
+ className: "text-sm text-muted-foreground",
24
+ children: [m.length, " articles from the community"]
25
+ })] }),
26
+ /* @__PURE__ */ s(d, { children: /* @__PURE__ */ s(f, {
27
+ className: "pt-6",
28
+ children: /* @__PURE__ */ c("div", {
29
+ className: "flex flex-col gap-4 sm:flex-row sm:items-center",
30
+ children: [/* @__PURE__ */ c("div", {
31
+ className: "relative flex-1",
32
+ children: [/* @__PURE__ */ s(o, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground" }), /* @__PURE__ */ s(p, {
33
+ placeholder: "Search articles...",
34
+ value: h,
35
+ onChange: (e) => g(e.target.value),
36
+ className: "pl-9"
37
+ })]
38
+ }), /* @__PURE__ */ s("div", {
39
+ className: "flex flex-wrap gap-2",
40
+ children: y.map((e) => /* @__PURE__ */ s(u, {
41
+ variant: _ === e ? "default" : "outline",
42
+ size: "sm",
43
+ onClick: () => v(e),
44
+ children: e === "all" ? "All" : e
45
+ }, e))
46
+ })]
47
+ })
48
+ }) }),
49
+ b.length === 0 ? /* @__PURE__ */ s("div", {
50
+ className: "py-12 text-center text-sm text-muted-foreground",
51
+ children: "No articles match your search"
52
+ }) : /* @__PURE__ */ s("div", {
53
+ className: "space-y-4",
54
+ children: b.map((e) => /* @__PURE__ */ s(d, { children: /* @__PURE__ */ c(f, {
55
+ className: "p-4 space-y-2",
56
+ children: [
57
+ /* @__PURE__ */ c("div", {
58
+ className: "flex items-center gap-2",
59
+ children: [/* @__PURE__ */ s(l, {
60
+ variant: "secondary",
61
+ className: "text-xs",
62
+ children: e.category
63
+ }), /* @__PURE__ */ c("span", {
64
+ className: "flex items-center gap-1 text-xs text-muted-foreground",
65
+ children: [
66
+ /* @__PURE__ */ s(r, { className: "h-3 w-3" }),
67
+ e.readTime,
68
+ " min read"
69
+ ]
70
+ })]
71
+ }),
72
+ /* @__PURE__ */ s("h3", {
73
+ className: "text-lg font-medium",
74
+ children: e.title
75
+ }),
76
+ /* @__PURE__ */ s("p", {
77
+ className: "text-sm text-muted-foreground",
78
+ children: e.excerpt
79
+ }),
80
+ /* @__PURE__ */ s("div", {
81
+ className: "flex flex-wrap gap-1",
82
+ children: e.tags.map((e) => /* @__PURE__ */ s(l, {
83
+ variant: "outline",
84
+ className: "text-xs",
85
+ children: e
86
+ }, e))
87
+ }),
88
+ /* @__PURE__ */ c("div", {
89
+ className: "flex items-center gap-4 text-xs text-muted-foreground",
90
+ children: [
91
+ /* @__PURE__ */ c("span", { children: ["by ", e.author] }),
92
+ /* @__PURE__ */ s("span", { children: new Date(e.publishedAt).toLocaleDateString() }),
93
+ /* @__PURE__ */ c("span", {
94
+ className: "flex items-center gap-1",
95
+ children: [/* @__PURE__ */ s(i, { className: "h-3 w-3" }), e.views.toLocaleString()]
96
+ }),
97
+ /* @__PURE__ */ c("span", {
98
+ className: "flex items-center gap-1",
99
+ children: [/* @__PURE__ */ s(a, { className: "h-3 w-3" }), e.likes]
100
+ })
101
+ ]
102
+ })
103
+ ]
104
+ }) }, e.id))
105
+ })
106
+ ]
107
+ });
108
+ }
109
+ //#endregion
110
+ export { m as KnowledgeBaseArticlesPagePage };
111
+
112
+ //# sourceMappingURL=KnowledgeBaseArticlesPagePage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KnowledgeBaseArticlesPagePage.js","names":[],"sources":["../../../src/technospam/pages/KnowledgeBaseArticlesPagePage.tsx"],"sourcesContent":["import { useState, useMemo } from 'react';\nimport { Card, CardContent, Badge, Button, Input } from '@burdenoff/fe-libs/ui';\nimport { Search, Clock, Eye, Heart } from 'lucide-react';\nimport { useTechnoSpamStore } from '../store/technospamStore';\n\nexport function KnowledgeBaseArticlesPagePage() {\n const { articles } = useTechnoSpamStore();\n const [searchTerm, setSearchTerm] = useState('');\n const [categoryFilter, setCategoryFilter] = useState('all');\n\n const categories = ['all', ...new Set(articles.map((a) => a.category))];\n\n const filteredArticles = useMemo(() => {\n return articles.filter((a) => {\n const matchesSearch =\n searchTerm === '' ||\n a.title.toLowerCase().includes(searchTerm.toLowerCase()) ||\n a.excerpt.toLowerCase().includes(searchTerm.toLowerCase()) ||\n a.author.toLowerCase().includes(searchTerm.toLowerCase()) ||\n a.tags.some((t) => t.toLowerCase().includes(searchTerm.toLowerCase()));\n const matchesCategory = categoryFilter === 'all' || a.category === categoryFilter;\n return matchesSearch && matchesCategory;\n });\n }, [articles, searchTerm, categoryFilter]);\n\n return (\n <div className=\"space-y-6 p-6\">\n <div>\n <h1 className=\"text-2xl font-semibold text-foreground\">Articles</h1>\n <p className=\"text-sm text-muted-foreground\">\n {articles.length} articles from the community\n </p>\n </div>\n\n {/* Filters */}\n <Card>\n <CardContent className=\"pt-6\">\n <div className=\"flex flex-col gap-4 sm:flex-row sm:items-center\">\n <div className=\"relative flex-1\">\n <Search className=\"absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground\" />\n <Input\n placeholder=\"Search articles...\"\n value={searchTerm}\n onChange={(e) => setSearchTerm(e.target.value)}\n className=\"pl-9\"\n />\n </div>\n <div className=\"flex flex-wrap gap-2\">\n {categories.map((cat) => (\n <Button\n key={cat}\n variant={categoryFilter === cat ? 'default' : 'outline'}\n size=\"sm\"\n onClick={() => setCategoryFilter(cat)}\n >\n {cat === 'all' ? 'All' : cat}\n </Button>\n ))}\n </div>\n </div>\n </CardContent>\n </Card>\n\n {/* Articles List */}\n {filteredArticles.length === 0 ? (\n <div className=\"py-12 text-center text-sm text-muted-foreground\">\n No articles match your search\n </div>\n ) : (\n <div className=\"space-y-4\">\n {filteredArticles.map((article) => (\n <Card key={article.id}>\n <CardContent className=\"p-4 space-y-2\">\n <div className=\"flex items-center gap-2\">\n <Badge variant=\"secondary\" className=\"text-xs\">\n {article.category}\n </Badge>\n <span className=\"flex items-center gap-1 text-xs text-muted-foreground\">\n <Clock className=\"h-3 w-3\" />\n {article.readTime} min read\n </span>\n </div>\n <h3 className=\"text-lg font-medium\">{article.title}</h3>\n <p className=\"text-sm text-muted-foreground\">{article.excerpt}</p>\n <div className=\"flex flex-wrap gap-1\">\n {article.tags.map((tag) => (\n <Badge key={tag} variant=\"outline\" className=\"text-xs\">\n {tag}\n </Badge>\n ))}\n </div>\n <div className=\"flex items-center gap-4 text-xs text-muted-foreground\">\n <span>by {article.author}</span>\n <span>{new Date(article.publishedAt).toLocaleDateString()}</span>\n <span className=\"flex items-center gap-1\">\n <Eye className=\"h-3 w-3\" />\n {article.views.toLocaleString()}\n </span>\n <span className=\"flex items-center gap-1\">\n <Heart className=\"h-3 w-3\" />\n {article.likes}\n </span>\n </div>\n </CardContent>\n </Card>\n ))}\n </div>\n )}\n </div>\n );\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function KnowledgeBaseCategoriesPagePage(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=KnowledgeBaseCategoriesPagePage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KnowledgeBaseCategoriesPagePage.d.ts","sourceRoot":"","sources":["../../../src/technospam/pages/KnowledgeBaseCategoriesPagePage.tsx"],"names":[],"mappings":"AAyDA,wBAAgB,+BAA+B,4CAwC9C"}