@burdenoff/microfe-comradecircle 2026.720.2 → 2026.720.3

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 (39) hide show
  1. package/dist/comradecircle/ComradeCircleRoutes.d.ts.map +1 -1
  2. package/dist/comradecircle/ComradeCircleRoutes.js +39 -34
  3. package/dist/comradecircle/ComradeCircleRoutes.js.map +1 -1
  4. package/dist/comradecircle/components/CommentThread.js +1 -1
  5. package/dist/comradecircle/components/MemberIdentity.js +1 -1
  6. package/dist/comradecircle/components/MobileBottomNav.d.ts +4 -0
  7. package/dist/comradecircle/components/MobileBottomNav.d.ts.map +1 -0
  8. package/dist/comradecircle/components/MobileBottomNav.js +65 -0
  9. package/dist/comradecircle/components/MobileBottomNav.js.map +1 -0
  10. package/dist/comradecircle/components/PostCard.d.ts +3 -1
  11. package/dist/comradecircle/components/PostCard.d.ts.map +1 -1
  12. package/dist/comradecircle/components/PostCard.js +86 -73
  13. package/dist/comradecircle/components/PostCard.js.map +1 -1
  14. package/dist/comradecircle/components/PostComposer.d.ts +7 -1
  15. package/dist/comradecircle/components/PostComposer.d.ts.map +1 -1
  16. package/dist/comradecircle/components/PostComposer.js +53 -49
  17. package/dist/comradecircle/components/PostComposer.js.map +1 -1
  18. package/dist/comradecircle/components/ReactionBar.js +1 -1
  19. package/dist/comradecircle/components/index.d.ts +1 -0
  20. package/dist/comradecircle/components/index.d.ts.map +1 -1
  21. package/dist/comradecircle/hooks/useComradeCircleApi.js +37 -22
  22. package/dist/comradecircle/hooks/useComradeCircleApi.js.map +1 -1
  23. package/dist/comradecircle/index.js +1 -1
  24. package/dist/comradecircle/pages/FeedPage.js +1 -1
  25. package/dist/comradecircle/pages/circles/CircleDetailPage.js +242 -219
  26. package/dist/comradecircle/pages/circles/CircleDetailPage.js.map +1 -1
  27. package/dist/comradecircle/pages/circles/CirclesPage.d.ts.map +1 -1
  28. package/dist/comradecircle/pages/circles/CirclesPage.js +72 -39
  29. package/dist/comradecircle/pages/circles/CirclesPage.js.map +1 -1
  30. package/dist/comradecircle/pages/events/EventDetailPage.js +1 -1
  31. package/dist/comradecircle/pages/events/EventsPage.js +1 -1
  32. package/dist/comradecircle/pages/members/MemberProfilePage.js +1 -1
  33. package/dist/comradecircle/pages/members/MembersPage.js +1 -1
  34. package/dist/comradecircle/pages/posts/PostThreadPage.d.ts +14 -0
  35. package/dist/comradecircle/pages/posts/PostThreadPage.d.ts.map +1 -0
  36. package/dist/comradecircle/pages/posts/PostThreadPage.js +48 -0
  37. package/dist/comradecircle/pages/posts/PostThreadPage.js.map +1 -0
  38. package/dist/comradecircle/pages/profile/MyProfilePage.js +1 -1
  39. package/package.json +1 -1
@@ -0,0 +1,48 @@
1
+ import { useComradeCircle as e } from "../../context/ComradeCircleContext.js";
2
+ import "../../context/index.js";
3
+ import { PageLayout as t } from "../../components/PageLayout.js";
4
+ import { useComPost as n } from "../../hooks/useComradeCircleApi.js";
5
+ import "../../hooks/index.js";
6
+ import { PostCard as r } from "../../components/PostCard.js";
7
+ import { ErrorView as i, LoadingView as a } from "../../components/StateViews.js";
8
+ import { ArrowLeft as o } from "lucide-react";
9
+ import { useParams as s } from "react-router-dom";
10
+ import { jsx as c, jsxs as l } from "react/jsx-runtime";
11
+ import { Button as u } from "@burdenoff/fe-libs/ui";
12
+ //#region src/comradecircle/pages/posts/PostThreadPage.tsx
13
+ function d() {
14
+ let { postId: d } = s(), { navigateTo: f } = e(), { data: p, isLoading: m, isError: h, refetch: g } = n(d), _ = /* @__PURE__ */ l(u, {
15
+ variant: "ghost",
16
+ size: "sm",
17
+ onClick: () => f(""),
18
+ children: [/* @__PURE__ */ c(o, { className: "mr-1.5 h-4 w-4" }), " Back"]
19
+ });
20
+ return m ? /* @__PURE__ */ c(t, {
21
+ title: "Thread",
22
+ actions: _,
23
+ children: /* @__PURE__ */ c(a, { label: "Loading post…" })
24
+ }) : h || !p ? /* @__PURE__ */ c(t, {
25
+ title: "Thread",
26
+ actions: _,
27
+ children: /* @__PURE__ */ c(i, {
28
+ title: "Post not found",
29
+ message: "This post may have been removed, or you may not have access to it.",
30
+ onRetry: () => g()
31
+ })
32
+ }) : /* @__PURE__ */ c(t, {
33
+ title: "Thread",
34
+ actions: _,
35
+ children: /* @__PURE__ */ c("div", {
36
+ className: "mx-auto max-w-2xl",
37
+ children: /* @__PURE__ */ c(r, {
38
+ post: p,
39
+ defaultExpanded: !0,
40
+ hideThreadLink: !0
41
+ })
42
+ })
43
+ });
44
+ }
45
+ //#endregion
46
+ export { d as PostThreadPage };
47
+
48
+ //# sourceMappingURL=PostThreadPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PostThreadPage.js","names":[],"sources":["../../../../src/comradecircle/pages/posts/PostThreadPage.tsx"],"sourcesContent":["/**\n * PostThreadPage — a dedicated, focused view of a single post and its thread.\n * @module comradecircle/pages/posts\n *\n * BOFF-3955: the mocks (`comradecircle-14-channel-post-thread.png`) show a post\n * opened into its own surface — author, body, reactions, and comments — rather\n * than only the inline collapsible thread inside the channel feed. Reads\n * `comPost(id)` (post + its comments in one round trip) and renders the\n * existing {@link PostCard} (which already composes {@link ReactionBar} +\n * {@link CommentThread} when expanded) so the thread view stays in lock-step\n * with the inline one instead of duplicating rendering logic.\n */\n\nimport { ArrowLeft } from 'lucide-react';\nimport { Button } from '@burdenoff/fe-libs/ui';\nimport { useParams } from 'react-router-dom';\nimport { PageLayout } from '../../components/PageLayout';\nimport { PostCard } from '../../components/PostCard';\nimport { LoadingView, ErrorView } from '../../components/StateViews';\nimport { useComPost } from '../../hooks';\nimport { useComradeCircle } from '../../context';\n\nexport function PostThreadPage() {\n const { postId } = useParams<{ postId: string }>();\n const { navigateTo } = useComradeCircle();\n const { data: post, isLoading, isError, refetch } = useComPost(postId);\n\n // Home feed is the one destination every thread is always reachable from\n // (channel feeds link here too), matching the fixed-destination back-button\n // convention already used by EventDetailPage / MemberProfilePage rather\n // than relying on browser history depth, which isn't reliable once this\n // MFE is mounted inside the host shell's own router.\n const backButton = (\n <Button variant=\"ghost\" size=\"sm\" onClick={() => navigateTo('')}>\n <ArrowLeft className=\"mr-1.5 h-4 w-4\" /> Back\n </Button>\n );\n\n if (isLoading) {\n return (\n <PageLayout title=\"Thread\" actions={backButton}>\n <LoadingView label=\"Loading post…\" />\n </PageLayout>\n );\n }\n\n if (isError || !post) {\n return (\n <PageLayout title=\"Thread\" actions={backButton}>\n <ErrorView\n title=\"Post not found\"\n message=\"This post may have been removed, or you may not have access to it.\"\n onRetry={() => refetch()}\n />\n </PageLayout>\n );\n }\n\n return (\n <PageLayout title=\"Thread\" actions={backButton}>\n <div className=\"mx-auto max-w-2xl\">\n <PostCard post={post} defaultExpanded hideThreadLink />\n </div>\n </PageLayout>\n );\n}\n"],"mappings":";;;;;;;;;;;;AAsBA,SAAgB,IAAiB;CAC/B,IAAM,EAAE,cAAW,EAA8B,GAC3C,EAAE,kBAAe,EAAiB,GAClC,EAAE,MAAM,GAAM,cAAW,YAAS,eAAY,EAAW,CAAM,GAO/D,IACJ,kBAAC,GAAD;EAAQ,SAAQ;EAAQ,MAAK;EAAK,eAAe,EAAW,EAAE;YAA9D,CACE,kBAAC,GAAD,EAAW,WAAU,iBAAkB,CAAA,GAAC,OAClC;;CAuBV,OApBI,IAEA,kBAAC,GAAD;EAAY,OAAM;EAAS,SAAS;YAClC,kBAAC,GAAD,EAAa,OAAM,gBAAiB,CAAA;CAC1B,CAAA,IAIZ,KAAW,CAAC,IAEZ,kBAAC,GAAD;EAAY,OAAM;EAAS,SAAS;YAClC,kBAAC,GAAD;GACE,OAAM;GACN,SAAQ;GACR,eAAe,EAAQ;EACxB,CAAA;CACS,CAAA,IAKd,kBAAC,GAAD;EAAY,OAAM;EAAS,SAAS;YAClC,kBAAC,OAAD;GAAK,WAAU;aACb,kBAAC,GAAD;IAAgB;IAAM,iBAAA;IAAgB,gBAAA;GAAgB,CAAA;EACnD,CAAA;CACK,CAAA;AAEhB"}
@@ -1,6 +1,6 @@
1
1
  import { useComradeCircle as e } from "../../context/ComradeCircleContext.js";
2
- import { PageLayout as t } from "../../components/PageLayout.js";
3
2
  import "../../context/index.js";
3
+ import { PageLayout as t } from "../../components/PageLayout.js";
4
4
  import { useComProfile as n, useComUpsertProfile as r } from "../../hooks/useComradeCircleApi.js";
5
5
  import "../../hooks/index.js";
6
6
  import { Avatar as i } from "../../components/Avatar.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@burdenoff/microfe-comradecircle",
3
- "version": "2026.720.2",
3
+ "version": "2026.720.3",
4
4
  "description": "Burdenoff ComradeCircle Microfrontend",
5
5
  "type": "module",
6
6
  "files": [