@burdenoff/microfe-theculturepost 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 (102) 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/theculturepost/TheCulturePostRoot.d.ts +5 -0
  16. package/dist/theculturepost/TheCulturePostRoot.d.ts.map +1 -0
  17. package/dist/theculturepost/TheCulturePostRoot.js +179 -0
  18. package/dist/theculturepost/TheCulturePostRoot.js.map +1 -0
  19. package/dist/theculturepost/TheCulturePostRoutes.d.ts +2 -0
  20. package/dist/theculturepost/TheCulturePostRoutes.d.ts.map +1 -0
  21. package/dist/theculturepost/TheCulturePostRoutes.js +87 -0
  22. package/dist/theculturepost/TheCulturePostRoutes.js.map +1 -0
  23. package/dist/theculturepost/index.d.ts +5 -0
  24. package/dist/theculturepost/index.d.ts.map +1 -0
  25. package/dist/theculturepost/index.js +3 -0
  26. package/dist/theculturepost/pages/AnalyticsPage.d.ts +2 -0
  27. package/dist/theculturepost/pages/AnalyticsPage.d.ts.map +1 -0
  28. package/dist/theculturepost/pages/AnalyticsPage.js +97 -0
  29. package/dist/theculturepost/pages/AnalyticsPage.js.map +1 -0
  30. package/dist/theculturepost/pages/CommunityPage.d.ts +2 -0
  31. package/dist/theculturepost/pages/CommunityPage.d.ts.map +1 -0
  32. package/dist/theculturepost/pages/CommunityPage.js +166 -0
  33. package/dist/theculturepost/pages/CommunityPage.js.map +1 -0
  34. package/dist/theculturepost/pages/ContributionsPage.d.ts +2 -0
  35. package/dist/theculturepost/pages/ContributionsPage.d.ts.map +1 -0
  36. package/dist/theculturepost/pages/ContributionsPage.js +129 -0
  37. package/dist/theculturepost/pages/ContributionsPage.js.map +1 -0
  38. package/dist/theculturepost/pages/CulturalRepositoryGraphqlPage.d.ts +2 -0
  39. package/dist/theculturepost/pages/CulturalRepositoryGraphqlPage.d.ts.map +1 -0
  40. package/dist/theculturepost/pages/CulturalRepositoryGraphqlPage.js +149 -0
  41. package/dist/theculturepost/pages/CulturalRepositoryGraphqlPage.js.map +1 -0
  42. package/dist/theculturepost/pages/CulturalRepositoryPage.d.ts +2 -0
  43. package/dist/theculturepost/pages/CulturalRepositoryPage.d.ts.map +1 -0
  44. package/dist/theculturepost/pages/CulturalRepositoryPage.js +214 -0
  45. package/dist/theculturepost/pages/CulturalRepositoryPage.js.map +1 -0
  46. package/dist/theculturepost/pages/DashboardPage.d.ts +2 -0
  47. package/dist/theculturepost/pages/DashboardPage.d.ts.map +1 -0
  48. package/dist/theculturepost/pages/DashboardPage.js +192 -0
  49. package/dist/theculturepost/pages/DashboardPage.js.map +1 -0
  50. package/dist/theculturepost/pages/DiscoveryPage.d.ts +2 -0
  51. package/dist/theculturepost/pages/DiscoveryPage.d.ts.map +1 -0
  52. package/dist/theculturepost/pages/DiscoveryPage.js +93 -0
  53. package/dist/theculturepost/pages/DiscoveryPage.js.map +1 -0
  54. package/dist/theculturepost/pages/DiscussionsPage.d.ts +2 -0
  55. package/dist/theculturepost/pages/DiscussionsPage.d.ts.map +1 -0
  56. package/dist/theculturepost/pages/DiscussionsPage.js +113 -0
  57. package/dist/theculturepost/pages/DiscussionsPage.js.map +1 -0
  58. package/dist/theculturepost/pages/EventsPage.d.ts +2 -0
  59. package/dist/theculturepost/pages/EventsPage.d.ts.map +1 -0
  60. package/dist/theculturepost/pages/EventsPage.js +90 -0
  61. package/dist/theculturepost/pages/EventsPage.js.map +1 -0
  62. package/dist/theculturepost/pages/HeritagePage.d.ts +2 -0
  63. package/dist/theculturepost/pages/HeritagePage.d.ts.map +1 -0
  64. package/dist/theculturepost/pages/HeritagePage.js +167 -0
  65. package/dist/theculturepost/pages/HeritagePage.js.map +1 -0
  66. package/dist/theculturepost/pages/LearningPage.d.ts +2 -0
  67. package/dist/theculturepost/pages/LearningPage.d.ts.map +1 -0
  68. package/dist/theculturepost/pages/LearningPage.js +191 -0
  69. package/dist/theculturepost/pages/LearningPage.js.map +1 -0
  70. package/dist/theculturepost/pages/MapPage.d.ts +2 -0
  71. package/dist/theculturepost/pages/MapPage.d.ts.map +1 -0
  72. package/dist/theculturepost/pages/MapPage.js +99 -0
  73. package/dist/theculturepost/pages/MapPage.js.map +1 -0
  74. package/dist/theculturepost/pages/MarketplacePage.d.ts +2 -0
  75. package/dist/theculturepost/pages/MarketplacePage.d.ts.map +1 -0
  76. package/dist/theculturepost/pages/MarketplacePage.js +102 -0
  77. package/dist/theculturepost/pages/MarketplacePage.js.map +1 -0
  78. package/dist/theculturepost/pages/ResourcesPage.d.ts +2 -0
  79. package/dist/theculturepost/pages/ResourcesPage.d.ts.map +1 -0
  80. package/dist/theculturepost/pages/ResourcesPage.js +90 -0
  81. package/dist/theculturepost/pages/ResourcesPage.js.map +1 -0
  82. package/dist/theculturepost/providers/TheCulturePostProvider.d.ts +6 -0
  83. package/dist/theculturepost/providers/TheCulturePostProvider.d.ts.map +1 -0
  84. package/dist/theculturepost/providers/TheCulturePostProvider.js +27 -0
  85. package/dist/theculturepost/providers/TheCulturePostProvider.js.map +1 -0
  86. package/dist/theculturepost/store/theculturepostStore.d.ts +159 -0
  87. package/dist/theculturepost/store/theculturepostStore.d.ts.map +1 -0
  88. package/dist/theculturepost/store/theculturepostStore.js +607 -0
  89. package/dist/theculturepost/store/theculturepostStore.js.map +1 -0
  90. package/dist/theculturepost/types/index.d.ts +51 -0
  91. package/dist/theculturepost/types/index.d.ts.map +1 -0
  92. package/dist/theculturepost/utils/cn.d.ts +4 -0
  93. package/dist/theculturepost/utils/cn.d.ts.map +1 -0
  94. package/dist/theculturepost/utils/i18n.d.ts +6 -0
  95. package/dist/theculturepost/utils/i18n.d.ts.map +1 -0
  96. package/dist/theculturepost/utils/i18n.js +15 -0
  97. package/dist/theculturepost/utils/i18n.js.map +1 -0
  98. package/dist/theculturepost/utils/navigation.d.ts +2 -0
  99. package/dist/theculturepost/utils/navigation.d.ts.map +1 -0
  100. package/dist/theculturepost/utils/navigation.js +8 -0
  101. package/dist/theculturepost/utils/navigation.js.map +1 -0
  102. package/package.json +107 -0
@@ -0,0 +1,2 @@
1
+ export * from './theculturepost';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,5 @@
1
+ import { useTheCulturePost as e } from "./theculturepost/providers/TheCulturePostProvider.js";
2
+ import { useTheCulturePostStore as t } from "./theculturepost/store/theculturepostStore.js";
3
+ import { TheCulturePostRoot as n } from "./theculturepost/TheCulturePostRoot.js";
4
+ import "./theculturepost/index.js";
5
+ export { n as TheCulturePostRoot, e as useTheCulturePost, t as useTheCulturePostStore };
@@ -0,0 +1,5 @@
1
+ import { FC } from 'react';
2
+ import { TheCulturePostRootProps } from './types';
3
+
4
+ export declare const TheCulturePostRoot: FC<TheCulturePostRootProps>;
5
+ //# sourceMappingURL=TheCulturePostRoot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TheCulturePostRoot.d.ts","sourceRoot":"","sources":["../../src/theculturepost/TheCulturePostRoot.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAyBhC,OAAO,KAAK,EAAW,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAKhE,eAAO,MAAM,kBAAkB,EAAE,EAAE,CAAC,uBAAuB,CA6K1D,CAAC"}
@@ -0,0 +1,179 @@
1
+ import { TheCulturePostProvider as e } from "./providers/TheCulturePostProvider.js";
2
+ import { tWithFallback as t } from "./utils/i18n.js";
3
+ import { TheCulturePostRoutes as n } from "./TheCulturePostRoutes.js";
4
+ import { joinPath as r } from "./utils/navigation.js";
5
+ import { useEffect as i } from "react";
6
+ import { useI18n as a } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
7
+ import { BarChart3 as o, BookOpen as s, Compass as c, FileText as l, Folder as u, FolderOpen as d, Globe as f, Home as p, Landmark as m, LayoutDashboard as h, LogIn as g, MapPin as _, MessageSquare as v, Settings as y, ShoppingBag as b, Upload as x, UserCircle as S, Users as C } from "lucide-react";
8
+ import { jsx as w } from "react/jsx-runtime";
9
+ import { FeatureFlagProvider as T } from "@burdenoff/fe-libs/shared/feature-flags";
10
+ //#region src/theculturepost/TheCulturePostRoot.tsx
11
+ var E = (E) => {
12
+ let { registerNavItems: D, registerFooterItems: O, basePath: k = "/" } = E, { t: A } = a(), j = (e, n) => t(A, e, n);
13
+ return i(() => {
14
+ if (D) return D({
15
+ id: "theculturepost",
16
+ label: j("theculturepost.nav.root", "TheCulturePost"),
17
+ path: k,
18
+ icon: /* @__PURE__ */ w(h, { size: 20 }),
19
+ order: 80,
20
+ group: "products",
21
+ children: [
22
+ {
23
+ id: "theculturepost-dashboard",
24
+ label: j("theculturepost.nav.dashboard", "Dashboard"),
25
+ path: k,
26
+ icon: /* @__PURE__ */ w(h, { size: 16 }),
27
+ order: 0
28
+ },
29
+ {
30
+ id: "theculturepost-home",
31
+ label: j("theculturepost.nav.home", "Home"),
32
+ path: r(k, "home"),
33
+ icon: /* @__PURE__ */ w(p, { size: 16 }),
34
+ order: 1
35
+ },
36
+ {
37
+ id: "theculturepost-heritage",
38
+ label: j("theculturepost.nav.heritage", "Heritage"),
39
+ path: r(k, "heritage"),
40
+ icon: /* @__PURE__ */ w(m, { size: 16 }),
41
+ order: 2
42
+ },
43
+ {
44
+ id: "theculturepost-events",
45
+ label: j("theculturepost.nav.events", "Events"),
46
+ path: r(k, "events"),
47
+ icon: /* @__PURE__ */ w(s, { size: 16 }),
48
+ order: 3
49
+ },
50
+ {
51
+ id: "theculturepost-community",
52
+ label: j("theculturepost.nav.community", "Community"),
53
+ path: r(k, "community"),
54
+ icon: /* @__PURE__ */ w(C, { size: 16 }),
55
+ order: 4
56
+ },
57
+ {
58
+ id: "theculturepost-discussions",
59
+ label: j("theculturepost.nav.discussions", "Discussions"),
60
+ path: r(k, "discussions"),
61
+ icon: /* @__PURE__ */ w(v, { size: 16 }),
62
+ order: 5
63
+ },
64
+ {
65
+ id: "theculturepost-learning",
66
+ label: j("theculturepost.nav.learning", "Learning"),
67
+ path: r(k, "learning"),
68
+ icon: /* @__PURE__ */ w(s, { size: 16 }),
69
+ order: 6
70
+ },
71
+ {
72
+ id: "theculturepost-marketplace",
73
+ label: j("theculturepost.nav.marketplace", "Marketplace"),
74
+ path: r(k, "marketplace"),
75
+ icon: /* @__PURE__ */ w(b, { size: 16 }),
76
+ order: 7
77
+ },
78
+ {
79
+ id: "theculturepost-map",
80
+ label: j("theculturepost.nav.map", "Map"),
81
+ path: r(k, "map"),
82
+ icon: /* @__PURE__ */ w(_, { size: 16 }),
83
+ order: 8
84
+ },
85
+ {
86
+ id: "theculturepost-discovery",
87
+ label: j("theculturepost.nav.discovery", "Discovery"),
88
+ path: r(k, "discovery"),
89
+ icon: /* @__PURE__ */ w(c, { size: 16 }),
90
+ order: 9
91
+ },
92
+ {
93
+ id: "theculturepost-resources",
94
+ label: j("theculturepost.nav.resources", "Resources"),
95
+ path: r(k, "resources"),
96
+ icon: /* @__PURE__ */ w(d, { size: 16 }),
97
+ order: 10
98
+ },
99
+ {
100
+ id: "theculturepost-contributions",
101
+ label: j("theculturepost.nav.contributions", "Contributions"),
102
+ path: r(k, "contributions"),
103
+ icon: /* @__PURE__ */ w(x, { size: 16 }),
104
+ order: 11
105
+ },
106
+ {
107
+ id: "theculturepost-analytics",
108
+ label: j("theculturepost.nav.analytics", "Analytics"),
109
+ path: r(k, "analytics"),
110
+ icon: /* @__PURE__ */ w(o, { size: 16 }),
111
+ order: 12
112
+ },
113
+ {
114
+ id: "theculturepost-cultural",
115
+ label: j("theculturepost.nav.cultural", "Cultural"),
116
+ path: r(k, "cultural"),
117
+ icon: /* @__PURE__ */ w(u, { size: 16 }),
118
+ order: 13,
119
+ children: [{
120
+ id: "theculturepost-cultural-repository",
121
+ label: j("theculturepost.nav.cultural.repository", "Repository"),
122
+ path: r(k, "cultural/repository"),
123
+ icon: /* @__PURE__ */ w(f, { size: 16 })
124
+ }, {
125
+ id: "theculturepost-cultural-repository-graphql",
126
+ label: j("theculturepost.nav.cultural.repositoryGraphql", "Repository GraphQL"),
127
+ path: r(k, "cultural/repository-graphql"),
128
+ icon: /* @__PURE__ */ w(l, { size: 16 })
129
+ }]
130
+ },
131
+ {
132
+ id: "theculturepost-login",
133
+ label: j("theculturepost.nav.login", "Login"),
134
+ path: r(k, "login"),
135
+ icon: /* @__PURE__ */ w(g, { size: 16 }),
136
+ order: 14
137
+ },
138
+ {
139
+ id: "theculturepost-profile",
140
+ label: j("theculturepost.nav.profile", "Profile"),
141
+ path: r(k, "profile"),
142
+ icon: /* @__PURE__ */ w(S, { size: 16 }),
143
+ order: 15
144
+ },
145
+ {
146
+ id: "theculturepost-settings",
147
+ label: j("theculturepost.nav.settings", "Settings"),
148
+ path: r(k, "settings"),
149
+ icon: /* @__PURE__ */ w(y, { size: 16 }),
150
+ order: 16
151
+ }
152
+ ]
153
+ });
154
+ }, [
155
+ D,
156
+ k,
157
+ j
158
+ ]), i(() => {
159
+ if (O) return O([{
160
+ id: "theculturepost-status",
161
+ label: j("theculturepost.footer.ready", "TheCulturePost Ready"),
162
+ type: "status",
163
+ section: "left",
164
+ order: 10
165
+ }]);
166
+ }, [O, j]), /* @__PURE__ */ w(T, {
167
+ workspaceId: null,
168
+ gateway: "global",
169
+ defaultEnabled: !0,
170
+ children: /* @__PURE__ */ w(e, {
171
+ ...E,
172
+ children: /* @__PURE__ */ w(n, {})
173
+ })
174
+ });
175
+ };
176
+ //#endregion
177
+ export { E as TheCulturePostRoot };
178
+
179
+ //# sourceMappingURL=TheCulturePostRoot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TheCulturePostRoot.js","names":[],"sources":["../../src/theculturepost/TheCulturePostRoot.tsx"],"sourcesContent":["import type { FC } from 'react';\nimport { useEffect } from 'react';\nimport { useI18n } from '@burdenoff/fe-libs/shared/providers/shell/I18nProvider';\nimport {\n LayoutDashboard,\n Folder,\n FileText,\n Users,\n Globe,\n ShoppingBag,\n MapPin,\n BookOpen,\n MessageSquare,\n Landmark,\n Compass,\n BarChart3,\n Upload,\n FolderOpen,\n Home,\n LogIn,\n UserCircle,\n Settings,\n} from 'lucide-react';\nimport { TheCulturePostProvider } from './providers/TheCulturePostProvider';\nimport { FeatureFlagProvider } from '@burdenoff/fe-libs/shared/feature-flags';\nimport type { NavItem, TheCulturePostRootProps } from './types';\nimport { TheCulturePostRoutes } from './TheCulturePostRoutes';\nimport { tWithFallback } from './utils/i18n';\nimport { joinPath } from './utils/navigation';\n\nexport const TheCulturePostRoot: FC<TheCulturePostRootProps> = (props) => {\n const { registerNavItems, registerFooterItems, basePath = '/' } = props;\n const { t } = useI18n();\n const tr = (key: string, fallback: string): string => tWithFallback(t, key, fallback);\n\n useEffect(() => {\n if (!registerNavItems) return;\n const navItem: NavItem = {\n id: 'theculturepost',\n label: tr('theculturepost.nav.root', 'TheCulturePost'),\n path: basePath,\n icon: <LayoutDashboard size={20} />,\n order: 80,\n group: 'products',\n children: [\n {\n id: 'theculturepost-dashboard',\n label: tr('theculturepost.nav.dashboard', 'Dashboard'),\n path: basePath,\n icon: <LayoutDashboard size={16} />,\n order: 0,\n },\n {\n id: 'theculturepost-home',\n label: tr('theculturepost.nav.home', 'Home'),\n path: joinPath(basePath, 'home'),\n icon: <Home size={16} />,\n order: 1,\n },\n {\n id: 'theculturepost-heritage',\n label: tr('theculturepost.nav.heritage', 'Heritage'),\n path: joinPath(basePath, 'heritage'),\n icon: <Landmark size={16} />,\n order: 2,\n },\n {\n id: 'theculturepost-events',\n label: tr('theculturepost.nav.events', 'Events'),\n path: joinPath(basePath, 'events'),\n icon: <BookOpen size={16} />,\n order: 3,\n },\n {\n id: 'theculturepost-community',\n label: tr('theculturepost.nav.community', 'Community'),\n path: joinPath(basePath, 'community'),\n icon: <Users size={16} />,\n order: 4,\n },\n {\n id: 'theculturepost-discussions',\n label: tr('theculturepost.nav.discussions', 'Discussions'),\n path: joinPath(basePath, 'discussions'),\n icon: <MessageSquare size={16} />,\n order: 5,\n },\n {\n id: 'theculturepost-learning',\n label: tr('theculturepost.nav.learning', 'Learning'),\n path: joinPath(basePath, 'learning'),\n icon: <BookOpen size={16} />,\n order: 6,\n },\n {\n id: 'theculturepost-marketplace',\n label: tr('theculturepost.nav.marketplace', 'Marketplace'),\n path: joinPath(basePath, 'marketplace'),\n icon: <ShoppingBag size={16} />,\n order: 7,\n },\n {\n id: 'theculturepost-map',\n label: tr('theculturepost.nav.map', 'Map'),\n path: joinPath(basePath, 'map'),\n icon: <MapPin size={16} />,\n order: 8,\n },\n {\n id: 'theculturepost-discovery',\n label: tr('theculturepost.nav.discovery', 'Discovery'),\n path: joinPath(basePath, 'discovery'),\n icon: <Compass size={16} />,\n order: 9,\n },\n {\n id: 'theculturepost-resources',\n label: tr('theculturepost.nav.resources', 'Resources'),\n path: joinPath(basePath, 'resources'),\n icon: <FolderOpen size={16} />,\n order: 10,\n },\n {\n id: 'theculturepost-contributions',\n label: tr('theculturepost.nav.contributions', 'Contributions'),\n path: joinPath(basePath, 'contributions'),\n icon: <Upload size={16} />,\n order: 11,\n },\n {\n id: 'theculturepost-analytics',\n label: tr('theculturepost.nav.analytics', 'Analytics'),\n path: joinPath(basePath, 'analytics'),\n icon: <BarChart3 size={16} />,\n order: 12,\n },\n {\n id: 'theculturepost-cultural',\n label: tr('theculturepost.nav.cultural', 'Cultural'),\n path: joinPath(basePath, 'cultural'),\n icon: <Folder size={16} />,\n order: 13,\n children: [\n {\n id: 'theculturepost-cultural-repository',\n label: tr('theculturepost.nav.cultural.repository', 'Repository'),\n path: joinPath(basePath, 'cultural/repository'),\n icon: <Globe size={16} />,\n },\n {\n id: 'theculturepost-cultural-repository-graphql',\n label: tr('theculturepost.nav.cultural.repositoryGraphql', 'Repository GraphQL'),\n path: joinPath(basePath, 'cultural/repository-graphql'),\n icon: <FileText size={16} />,\n },\n ],\n },\n {\n id: 'theculturepost-login',\n label: tr('theculturepost.nav.login', 'Login'),\n path: joinPath(basePath, 'login'),\n icon: <LogIn size={16} />,\n order: 14,\n },\n {\n id: 'theculturepost-profile',\n label: tr('theculturepost.nav.profile', 'Profile'),\n path: joinPath(basePath, 'profile'),\n icon: <UserCircle size={16} />,\n order: 15,\n },\n {\n id: 'theculturepost-settings',\n label: tr('theculturepost.nav.settings', 'Settings'),\n path: joinPath(basePath, 'settings'),\n icon: <Settings size={16} />,\n order: 16,\n },\n ],\n };\n return registerNavItems(navItem);\n }, [registerNavItems, basePath, tr]);\n\n useEffect(() => {\n if (!registerFooterItems) return;\n return registerFooterItems([\n {\n id: 'theculturepost-status',\n label: tr('theculturepost.footer.ready', 'TheCulturePost Ready'),\n type: 'status',\n section: 'left',\n order: 10,\n },\n ]);\n }, [registerFooterItems, tr]);\n\n return (\n <FeatureFlagProvider workspaceId={null} gateway=\"global\" defaultEnabled={true}>\n <TheCulturePostProvider {...props}>\n <TheCulturePostRoutes />\n </TheCulturePostProvider>\n </FeatureFlagProvider>\n );\n};\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function TheCulturePostRoutes(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=TheCulturePostRoutes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TheCulturePostRoutes.d.ts","sourceRoot":"","sources":["../../src/theculturepost/TheCulturePostRoutes.tsx"],"names":[],"mappings":"AAqDA,wBAAgB,oBAAoB,4CAsBnC"}
@@ -0,0 +1,87 @@
1
+ import { DashboardPage as e } from "./pages/DashboardPage.js";
2
+ import { Suspense as t, lazy as n } from "react";
3
+ import { Loader2 as r } from "lucide-react";
4
+ import { Navigate as i, Route as a, Routes as o } from "react-router-dom";
5
+ import { jsx as s, jsxs as c } from "react/jsx-runtime";
6
+ //#region src/theculturepost/TheCulturePostRoutes.tsx
7
+ var l = n(() => import("./pages/AnalyticsPage.js").then((e) => ({ default: e.AnalyticsPage }))), u = n(() => import("./pages/CommunityPage.js").then((e) => ({ default: e.CommunityPage }))), d = n(() => import("./pages/ContributionsPage.js").then((e) => ({ default: e.ContributionsPage }))), f = n(() => import("./pages/CulturalRepositoryGraphqlPage.js").then((e) => ({ default: e.CulturalRepositoryGraphqlPage }))), p = n(() => import("./pages/CulturalRepositoryPage.js").then((e) => ({ default: e.CulturalRepositoryPage }))), m = n(() => import("./pages/DiscoveryPage.js").then((e) => ({ default: e.DiscoveryPage }))), h = n(() => import("./pages/DiscussionsPage.js").then((e) => ({ default: e.DiscussionsPage }))), g = n(() => import("./pages/EventsPage.js").then((e) => ({ default: e.EventsPage }))), _ = n(() => import("./pages/HeritagePage.js").then((e) => ({ default: e.HeritagePage }))), v = n(() => import("./pages/LearningPage.js").then((e) => ({ default: e.LearningPage }))), y = n(() => import("./pages/MapPage.js").then((e) => ({ default: e.MapPage }))), b = n(() => import("./pages/MarketplacePage.js").then((e) => ({ default: e.MarketplacePage }))), x = n(() => import("./pages/ResourcesPage.js").then((e) => ({ default: e.ResourcesPage })));
8
+ function S() {
9
+ return /* @__PURE__ */ s("div", {
10
+ className: "flex min-h-[320px] items-center justify-center",
11
+ children: /* @__PURE__ */ s(r, { className: "h-8 w-8 animate-spin text-primary" })
12
+ });
13
+ }
14
+ function C() {
15
+ return /* @__PURE__ */ s(t, {
16
+ fallback: /* @__PURE__ */ s(S, {}),
17
+ children: /* @__PURE__ */ c(o, { children: [
18
+ /* @__PURE__ */ s(a, {
19
+ index: !0,
20
+ element: /* @__PURE__ */ s(e, {})
21
+ }),
22
+ /* @__PURE__ */ s(a, {
23
+ path: "analytics",
24
+ element: /* @__PURE__ */ s(l, {})
25
+ }),
26
+ /* @__PURE__ */ s(a, {
27
+ path: "community",
28
+ element: /* @__PURE__ */ s(u, {})
29
+ }),
30
+ /* @__PURE__ */ s(a, {
31
+ path: "contributions",
32
+ element: /* @__PURE__ */ s(d, {})
33
+ }),
34
+ /* @__PURE__ */ s(a, {
35
+ path: "cultural/repository-graphql",
36
+ element: /* @__PURE__ */ s(f, {})
37
+ }),
38
+ /* @__PURE__ */ s(a, {
39
+ path: "cultural/repository",
40
+ element: /* @__PURE__ */ s(p, {})
41
+ }),
42
+ /* @__PURE__ */ s(a, {
43
+ path: "discovery",
44
+ element: /* @__PURE__ */ s(m, {})
45
+ }),
46
+ /* @__PURE__ */ s(a, {
47
+ path: "discussions",
48
+ element: /* @__PURE__ */ s(h, {})
49
+ }),
50
+ /* @__PURE__ */ s(a, {
51
+ path: "events",
52
+ element: /* @__PURE__ */ s(g, {})
53
+ }),
54
+ /* @__PURE__ */ s(a, {
55
+ path: "heritage",
56
+ element: /* @__PURE__ */ s(_, {})
57
+ }),
58
+ /* @__PURE__ */ s(a, {
59
+ path: "learning",
60
+ element: /* @__PURE__ */ s(v, {})
61
+ }),
62
+ /* @__PURE__ */ s(a, {
63
+ path: "map",
64
+ element: /* @__PURE__ */ s(y, {})
65
+ }),
66
+ /* @__PURE__ */ s(a, {
67
+ path: "marketplace",
68
+ element: /* @__PURE__ */ s(b, {})
69
+ }),
70
+ /* @__PURE__ */ s(a, {
71
+ path: "resources",
72
+ element: /* @__PURE__ */ s(x, {})
73
+ }),
74
+ /* @__PURE__ */ s(a, {
75
+ path: "*",
76
+ element: /* @__PURE__ */ s(i, {
77
+ to: "",
78
+ replace: !0
79
+ })
80
+ })
81
+ ] })
82
+ });
83
+ }
84
+ //#endregion
85
+ export { C as TheCulturePostRoutes };
86
+
87
+ //# sourceMappingURL=TheCulturePostRoutes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TheCulturePostRoutes.js","names":[],"sources":["../../src/theculturepost/TheCulturePostRoutes.tsx"],"sourcesContent":["import { lazy, Suspense } from 'react';\nimport { Navigate, Route, Routes } from 'react-router-dom';\nimport { Loader2 } from 'lucide-react';\nimport { DashboardPage as IndexPage } from './pages/DashboardPage';\n\nconst AnalyticsPage = lazy(() =>\n import('./pages/AnalyticsPage').then((m) => ({ default: m.AnalyticsPage }))\n);\nconst CommunityPage = lazy(() =>\n import('./pages/CommunityPage').then((m) => ({ default: m.CommunityPage }))\n);\nconst ContributionsPage = lazy(() =>\n import('./pages/ContributionsPage').then((m) => ({ default: m.ContributionsPage }))\n);\nconst CulturalRepositoryGraphqlPage = lazy(() =>\n import('./pages/CulturalRepositoryGraphqlPage').then((m) => ({\n default: m.CulturalRepositoryGraphqlPage,\n }))\n);\nconst CulturalRepositoryPage = lazy(() =>\n import('./pages/CulturalRepositoryPage').then((m) => ({ default: m.CulturalRepositoryPage }))\n);\nconst DiscoveryPage = lazy(() =>\n import('./pages/DiscoveryPage').then((m) => ({ default: m.DiscoveryPage }))\n);\nconst DiscussionsPage = lazy(() =>\n import('./pages/DiscussionsPage').then((m) => ({ default: m.DiscussionsPage }))\n);\nconst EventsPage = lazy(() =>\n import('./pages/EventsPage').then((m) => ({ default: m.EventsPage }))\n);\nconst HeritagePage = lazy(() =>\n import('./pages/HeritagePage').then((m) => ({ default: m.HeritagePage }))\n);\nconst LearningPage = lazy(() =>\n import('./pages/LearningPage').then((m) => ({ default: m.LearningPage }))\n);\nconst MapPage = lazy(() => import('./pages/MapPage').then((m) => ({ default: m.MapPage })));\nconst MarketplacePage = lazy(() =>\n import('./pages/MarketplacePage').then((m) => ({ default: m.MarketplacePage }))\n);\nconst ResourcesPage = lazy(() =>\n import('./pages/ResourcesPage').then((m) => ({ default: m.ResourcesPage }))\n);\n\nfunction PageLoader() {\n return (\n <div className=\"flex min-h-[320px] items-center justify-center\">\n <Loader2 className=\"h-8 w-8 animate-spin text-primary\" />\n </div>\n );\n}\n\nexport function TheCulturePostRoutes() {\n return (\n <Suspense fallback={<PageLoader />}>\n <Routes>\n <Route index element={<IndexPage />} />\n <Route path=\"analytics\" element={<AnalyticsPage />} />\n <Route path=\"community\" element={<CommunityPage />} />\n <Route path=\"contributions\" element={<ContributionsPage />} />\n <Route path=\"cultural/repository-graphql\" element={<CulturalRepositoryGraphqlPage />} />\n <Route path=\"cultural/repository\" element={<CulturalRepositoryPage />} />\n <Route path=\"discovery\" element={<DiscoveryPage />} />\n <Route path=\"discussions\" element={<DiscussionsPage />} />\n <Route path=\"events\" element={<EventsPage />} />\n <Route path=\"heritage\" element={<HeritagePage />} />\n <Route path=\"learning\" element={<LearningPage />} />\n <Route path=\"map\" element={<MapPage />} />\n <Route path=\"marketplace\" element={<MarketplacePage />} />\n <Route path=\"resources\" element={<ResourcesPage />} />\n <Route path=\"*\" element={<Navigate to=\"\" replace />} />\n </Routes>\n </Suspense>\n );\n}\n"],"mappings":";;;;;;AAKA,IAAM,IAAgB,QACpB,OAAO,4BAAyB,MAAM,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,CAC5E,EACK,IAAgB,QACpB,OAAO,4BAAyB,MAAM,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,CAC5E,EACK,IAAoB,QACxB,OAAO,gCAA6B,MAAM,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,CACpF,EACK,IAAgC,QACpC,OAAO,4CAAyC,MAAM,OAAO,EAC3D,SAAS,EAAE,+BACZ,EAAE,CACJ,EACK,IAAyB,QAC7B,OAAO,qCAAkC,MAAM,OAAO,EAAE,SAAS,EAAE,wBAAwB,EAAE,CAC9F,EACK,IAAgB,QACpB,OAAO,4BAAyB,MAAM,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,CAC5E,EACK,IAAkB,QACtB,OAAO,8BAA2B,MAAM,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAChF,EACK,IAAa,QACjB,OAAO,yBAAsB,MAAM,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,CACtE,EACK,IAAe,QACnB,OAAO,2BAAwB,MAAM,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,CAC1E,EACK,IAAe,QACnB,OAAO,2BAAwB,MAAM,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,CAC1E,EACK,IAAU,QAAW,OAAO,sBAAmB,MAAM,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,EACrF,IAAkB,QACtB,OAAO,8BAA2B,MAAM,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAChF,EACK,IAAgB,QACpB,OAAO,4BAAyB,MAAM,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,CAC5E;AAED,SAAS,IAAa;AACpB,QACE,kBAAC,OAAD;EAAK,WAAU;YACb,kBAAC,GAAD,EAAS,WAAU,qCAAsC,CAAA;EACrD,CAAA;;AAIV,SAAgB,IAAuB;AACrC,QACE,kBAAC,GAAD;EAAU,UAAU,kBAAC,GAAD,EAAc,CAAA;YAChC,kBAAC,GAAD,EAAA,UAAA;GACE,kBAAC,GAAD;IAAO,OAAA;IAAM,SAAS,kBAAC,GAAD,EAAa,CAAA;IAAI,CAAA;GACvC,kBAAC,GAAD;IAAO,MAAK;IAAY,SAAS,kBAAC,GAAD,EAAiB,CAAA;IAAI,CAAA;GACtD,kBAAC,GAAD;IAAO,MAAK;IAAY,SAAS,kBAAC,GAAD,EAAiB,CAAA;IAAI,CAAA;GACtD,kBAAC,GAAD;IAAO,MAAK;IAAgB,SAAS,kBAAC,GAAD,EAAqB,CAAA;IAAI,CAAA;GAC9D,kBAAC,GAAD;IAAO,MAAK;IAA8B,SAAS,kBAAC,GAAD,EAAiC,CAAA;IAAI,CAAA;GACxF,kBAAC,GAAD;IAAO,MAAK;IAAsB,SAAS,kBAAC,GAAD,EAA0B,CAAA;IAAI,CAAA;GACzE,kBAAC,GAAD;IAAO,MAAK;IAAY,SAAS,kBAAC,GAAD,EAAiB,CAAA;IAAI,CAAA;GACtD,kBAAC,GAAD;IAAO,MAAK;IAAc,SAAS,kBAAC,GAAD,EAAmB,CAAA;IAAI,CAAA;GAC1D,kBAAC,GAAD;IAAO,MAAK;IAAS,SAAS,kBAAC,GAAD,EAAc,CAAA;IAAI,CAAA;GAChD,kBAAC,GAAD;IAAO,MAAK;IAAW,SAAS,kBAAC,GAAD,EAAgB,CAAA;IAAI,CAAA;GACpD,kBAAC,GAAD;IAAO,MAAK;IAAW,SAAS,kBAAC,GAAD,EAAgB,CAAA;IAAI,CAAA;GACpD,kBAAC,GAAD;IAAO,MAAK;IAAM,SAAS,kBAAC,GAAD,EAAW,CAAA;IAAI,CAAA;GAC1C,kBAAC,GAAD;IAAO,MAAK;IAAc,SAAS,kBAAC,GAAD,EAAmB,CAAA;IAAI,CAAA;GAC1D,kBAAC,GAAD;IAAO,MAAK;IAAY,SAAS,kBAAC,GAAD,EAAiB,CAAA;IAAI,CAAA;GACtD,kBAAC,GAAD;IAAO,MAAK;IAAI,SAAS,kBAAC,GAAD;KAAU,IAAG;KAAG,SAAA;KAAU,CAAA;IAAI,CAAA;GAChD,EAAA,CAAA;EACA,CAAA"}
@@ -0,0 +1,5 @@
1
+ export { TheCulturePostRoot } from './TheCulturePostRoot';
2
+ export type { TheCulturePostRootProps, NavItem, FooterItem } from './types';
3
+ export { useTheCulturePost } from './providers/TheCulturePostProvider';
4
+ export { useTheCulturePostStore } from './store/theculturepostStore';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/theculturepost/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,YAAY,EAAE,uBAAuB,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC"}
@@ -0,0 +1,3 @@
1
+ import "./providers/TheCulturePostProvider.js";
2
+ import "./store/theculturepostStore.js";
3
+ import "./TheCulturePostRoot.js";
@@ -0,0 +1,2 @@
1
+ export declare function AnalyticsPage(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=AnalyticsPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AnalyticsPage.d.ts","sourceRoot":"","sources":["../../../src/theculturepost/pages/AnalyticsPage.tsx"],"names":[],"mappings":"AAWA,wBAAgB,aAAa,4CA2F5B"}
@@ -0,0 +1,97 @@
1
+ import { useTheCulturePostStore as e } from "../store/theculturepostStore.js";
2
+ import { Download as t, Eye as n, Heart as r, Share2 as i, TrendingUp as a } from "lucide-react";
3
+ import { jsx as o, jsxs as s } from "react/jsx-runtime";
4
+ import { Card as c, CardContent as l, CardHeader as u, CardTitle as d } from "@burdenoff/fe-libs/ui";
5
+ //#region src/theculturepost/pages/AnalyticsPage.tsx
6
+ var f = {
7
+ "Total Views": n,
8
+ "Engagement Rate": r,
9
+ Downloads: t,
10
+ Shares: i
11
+ };
12
+ function p() {
13
+ let { analyticsMetrics: t, topContent: r } = e();
14
+ return /* @__PURE__ */ s("div", {
15
+ className: "space-y-6 p-6",
16
+ children: [
17
+ /* @__PURE__ */ s("div", { children: [/* @__PURE__ */ o("h1", {
18
+ className: "text-2xl font-semibold",
19
+ children: "Cultural Analytics"
20
+ }), /* @__PURE__ */ o("p", {
21
+ className: "text-sm text-muted-foreground mt-1",
22
+ children: "Track your cultural content performance and engagement"
23
+ })] }),
24
+ /* @__PURE__ */ o("div", {
25
+ className: "grid gap-4 md:grid-cols-2 lg:grid-cols-4",
26
+ children: t.map((e) => {
27
+ let t = f[e.title] ?? n;
28
+ return /* @__PURE__ */ s(c, { children: [/* @__PURE__ */ s(u, {
29
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
30
+ children: [/* @__PURE__ */ o(d, {
31
+ className: "text-sm font-medium",
32
+ children: e.title
33
+ }), /* @__PURE__ */ o(t, { className: "h-4 w-4 text-muted-foreground" })]
34
+ }), /* @__PURE__ */ s(l, { children: [/* @__PURE__ */ o("div", {
35
+ className: "text-2xl font-bold",
36
+ children: e.value
37
+ }), /* @__PURE__ */ s("p", {
38
+ className: `text-xs flex items-center gap-1 mt-1 ${e.trend === "up" ? "text-green-600" : "text-red-600"}`,
39
+ children: [
40
+ /* @__PURE__ */ o(a, { className: "h-3 w-3" }),
41
+ e.change,
42
+ " from last month"
43
+ ]
44
+ })] })] }, e.title);
45
+ })
46
+ }),
47
+ /* @__PURE__ */ s("div", {
48
+ className: "grid gap-6 md:grid-cols-2",
49
+ children: [/* @__PURE__ */ s(c, { children: [/* @__PURE__ */ o(u, { children: /* @__PURE__ */ o(d, { children: "Visitor Trends" }) }), /* @__PURE__ */ o(l, { children: /* @__PURE__ */ o("div", {
50
+ className: "h-[300px] flex items-center justify-center border-2 border-dashed rounded-lg",
51
+ children: /* @__PURE__ */ o("p", {
52
+ className: "text-muted-foreground",
53
+ children: "Heritage site visitor chart"
54
+ })
55
+ }) })] }), /* @__PURE__ */ s(c, { children: [/* @__PURE__ */ o(u, { children: /* @__PURE__ */ o(d, { children: "Community Engagement" }) }), /* @__PURE__ */ o(l, { children: /* @__PURE__ */ o("div", {
56
+ className: "h-[300px] flex items-center justify-center border-2 border-dashed rounded-lg",
57
+ children: /* @__PURE__ */ o("p", {
58
+ className: "text-muted-foreground",
59
+ children: "Cultural engagement over time"
60
+ })
61
+ }) })] })]
62
+ }),
63
+ /* @__PURE__ */ s(c, { children: [/* @__PURE__ */ o(u, { children: /* @__PURE__ */ o(d, { children: "Top Performing Cultural Content" }) }), /* @__PURE__ */ o(l, { children: /* @__PURE__ */ o("div", {
64
+ className: "space-y-4",
65
+ children: r.map((e, t) => /* @__PURE__ */ s("div", {
66
+ className: "flex items-center justify-between p-4 rounded-lg border hover:bg-muted/50 transition-colors",
67
+ children: [/* @__PURE__ */ s("div", {
68
+ className: "flex items-center gap-4",
69
+ children: [/* @__PURE__ */ o("div", {
70
+ className: "w-8 h-8 rounded-full bg-primary/10 flex items-center justify-center text-sm font-bold text-primary",
71
+ children: t + 1
72
+ }), /* @__PURE__ */ s("div", { children: [/* @__PURE__ */ o("p", {
73
+ className: "font-medium",
74
+ children: e.title
75
+ }), /* @__PURE__ */ s("p", {
76
+ className: "text-sm text-muted-foreground",
77
+ children: [e.views.toLocaleString(), " views"]
78
+ })] })]
79
+ }), /* @__PURE__ */ s("div", {
80
+ className: "text-right",
81
+ children: [/* @__PURE__ */ s("p", {
82
+ className: "text-sm font-medium",
83
+ children: [e.engagement, "%"]
84
+ }), /* @__PURE__ */ o("p", {
85
+ className: "text-xs text-muted-foreground",
86
+ children: "engagement"
87
+ })]
88
+ })]
89
+ }, t))
90
+ }) })] })
91
+ ]
92
+ });
93
+ }
94
+ //#endregion
95
+ export { p as AnalyticsPage };
96
+
97
+ //# sourceMappingURL=AnalyticsPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AnalyticsPage.js","names":[],"sources":["../../../src/theculturepost/pages/AnalyticsPage.tsx"],"sourcesContent":["import { Card, CardContent, CardHeader, CardTitle } from '@burdenoff/fe-libs/ui';\nimport { TrendingUp, Eye, Heart, Download, Share2 } from 'lucide-react';\nimport { useTheCulturePostStore } from '../store/theculturepostStore';\n\nconst metricIcons: Record<string, typeof Eye> = {\n 'Total Views': Eye,\n 'Engagement Rate': Heart,\n Downloads: Download,\n Shares: Share2,\n};\n\nexport function AnalyticsPage() {\n const { analyticsMetrics, topContent } = useTheCulturePostStore();\n\n return (\n <div className=\"space-y-6 p-6\">\n <div>\n <h1 className=\"text-2xl font-semibold\">Cultural Analytics</h1>\n <p className=\"text-sm text-muted-foreground mt-1\">\n Track your cultural content performance and engagement\n </p>\n </div>\n\n <div className=\"grid gap-4 md:grid-cols-2 lg:grid-cols-4\">\n {analyticsMetrics.map((metric) => {\n const IconComponent = metricIcons[metric.title] ?? Eye;\n return (\n <Card key={metric.title}>\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">{metric.title}</CardTitle>\n <IconComponent className=\"h-4 w-4 text-muted-foreground\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">{metric.value}</div>\n <p\n className={`text-xs flex items-center gap-1 mt-1 ${metric.trend === 'up' ? 'text-green-600' : 'text-red-600'}`}\n >\n <TrendingUp className=\"h-3 w-3\" />\n {metric.change} from last month\n </p>\n </CardContent>\n </Card>\n );\n })}\n </div>\n\n <div className=\"grid gap-6 md:grid-cols-2\">\n <Card>\n <CardHeader>\n <CardTitle>Visitor Trends</CardTitle>\n </CardHeader>\n <CardContent>\n <div className=\"h-[300px] flex items-center justify-center border-2 border-dashed rounded-lg\">\n <p className=\"text-muted-foreground\">Heritage site visitor chart</p>\n </div>\n </CardContent>\n </Card>\n <Card>\n <CardHeader>\n <CardTitle>Community Engagement</CardTitle>\n </CardHeader>\n <CardContent>\n <div className=\"h-[300px] flex items-center justify-center border-2 border-dashed rounded-lg\">\n <p className=\"text-muted-foreground\">Cultural engagement over time</p>\n </div>\n </CardContent>\n </Card>\n </div>\n\n <Card>\n <CardHeader>\n <CardTitle>Top Performing Cultural Content</CardTitle>\n </CardHeader>\n <CardContent>\n <div className=\"space-y-4\">\n {topContent.map((content, index) => (\n <div\n key={index}\n className=\"flex items-center justify-between p-4 rounded-lg border hover:bg-muted/50 transition-colors\"\n >\n <div className=\"flex items-center gap-4\">\n <div className=\"w-8 h-8 rounded-full bg-primary/10 flex items-center justify-center text-sm font-bold text-primary\">\n {index + 1}\n </div>\n <div>\n <p className=\"font-medium\">{content.title}</p>\n <p className=\"text-sm text-muted-foreground\">\n {content.views.toLocaleString()} views\n </p>\n </div>\n </div>\n <div className=\"text-right\">\n <p className=\"text-sm font-medium\">{content.engagement}%</p>\n <p className=\"text-xs text-muted-foreground\">engagement</p>\n </div>\n </div>\n ))}\n </div>\n </CardContent>\n </Card>\n </div>\n );\n}\n"],"mappings":";;;;;AAIA,IAAM,IAA0C;CAC9C,eAAe;CACf,mBAAmB;CACnB,WAAW;CACX,QAAQ;CACT;AAED,SAAgB,IAAgB;CAC9B,IAAM,EAAE,qBAAkB,kBAAe,GAAwB;AAEjE,QACE,kBAAC,OAAD;EAAK,WAAU;YAAf;GACE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,MAAD;IAAI,WAAU;cAAyB;IAAuB,CAAA,EAC9D,kBAAC,KAAD;IAAG,WAAU;cAAqC;IAE9C,CAAA,CACA,EAAA,CAAA;GAEN,kBAAC,OAAD;IAAK,WAAU;cACZ,EAAiB,KAAK,MAAW;KAChC,IAAM,IAAgB,EAAY,EAAO,UAAU;AACnD,YACE,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD;MAAY,WAAU;gBAAtB,CACE,kBAAC,GAAD;OAAW,WAAU;iBAAuB,EAAO;OAAkB,CAAA,EACrE,kBAAC,GAAD,EAAe,WAAU,iCAAkC,CAAA,CAChD;SACb,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,OAAD;MAAK,WAAU;gBAAsB,EAAO;MAAY,CAAA,EACxD,kBAAC,KAAD;MACE,WAAW,wCAAwC,EAAO,UAAU,OAAO,mBAAmB;gBADhG;OAGE,kBAAC,GAAD,EAAY,WAAU,WAAY,CAAA;OACjC,EAAO;OAAO;OACb;QACQ,EAAA,CAAA,CACT,EAAA,EAdI,EAAO,MAcX;MAET;IACE,CAAA;GAEN,kBAAC,OAAD;IAAK,WAAU;cAAf,CACE,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD,EAAA,UAAW,kBAA0B,CAAA,EAC1B,CAAA,EACb,kBAAC,GAAD,EAAA,UACE,kBAAC,OAAD;KAAK,WAAU;eACb,kBAAC,KAAD;MAAG,WAAU;gBAAwB;MAA+B,CAAA;KAChE,CAAA,EACM,CAAA,CACT,EAAA,CAAA,EACP,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD,EAAA,UAAW,wBAAgC,CAAA,EAChC,CAAA,EACb,kBAAC,GAAD,EAAA,UACE,kBAAC,OAAD;KAAK,WAAU;eACb,kBAAC,KAAD;MAAG,WAAU;gBAAwB;MAAiC,CAAA;KAClE,CAAA,EACM,CAAA,CACT,EAAA,CAAA,CACH;;GAEN,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD,EAAA,UAAW,mCAA2C,CAAA,EAC3C,CAAA,EACb,kBAAC,GAAD,EAAA,UACE,kBAAC,OAAD;IAAK,WAAU;cACZ,EAAW,KAAK,GAAS,MACxB,kBAAC,OAAD;KAEE,WAAU;eAFZ,CAIE,kBAAC,OAAD;MAAK,WAAU;gBAAf,CACE,kBAAC,OAAD;OAAK,WAAU;iBACZ,IAAQ;OACL,CAAA,EACN,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,KAAD;OAAG,WAAU;iBAAe,EAAQ;OAAU,CAAA,EAC9C,kBAAC,KAAD;OAAG,WAAU;iBAAb,CACG,EAAQ,MAAM,gBAAgB,EAAC,SAC9B;SACA,EAAA,CAAA,CACF;SACN,kBAAC,OAAD;MAAK,WAAU;gBAAf,CACE,kBAAC,KAAD;OAAG,WAAU;iBAAb,CAAoC,EAAQ,YAAW,IAAK;UAC5D,kBAAC,KAAD;OAAG,WAAU;iBAAgC;OAAc,CAAA,CACvD;QACF;OAlBC,EAkBD,CACN;IACE,CAAA,EACM,CAAA,CACT,EAAA,CAAA;GACH"}
@@ -0,0 +1,2 @@
1
+ export declare function CommunityPage(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=CommunityPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CommunityPage.d.ts","sourceRoot":"","sources":["../../../src/theculturepost/pages/CommunityPage.tsx"],"names":[],"mappings":"AAMA,wBAAgB,aAAa,4CAmL5B"}