diff --git a/app/lish/[did]/[publication]/[rkey]/CanvasPage.tsx b/app/lish/[did]/[publication]/[rkey]/CanvasPage.tsx index 1ea95dcc..4d28dcc3 100644 --- a/app/lish/[did]/[publication]/[rkey]/CanvasPage.tsx +++ b/app/lish/[did]/[publication]/[rkey]/CanvasPage.tsx @@ -216,8 +216,8 @@ const CanvasMetadata = (props: { {!props.isSubpage && ( diff --git a/app/lish/[did]/[publication]/[rkey]/Interactions/Interactions.tsx b/app/lish/[did]/[publication]/[rkey]/Interactions/Interactions.tsx index a612f7e7..6492c0f2 100644 --- a/app/lish/[did]/[publication]/[rkey]/Interactions/Interactions.tsx +++ b/app/lish/[did]/[publication]/[rkey]/Interactions/Interactions.tsx @@ -107,8 +107,8 @@ export const Interactions = (props: { quotesCount: number; commentsCount: number; className?: string; - showComments?: boolean; - showMentions?: boolean; + showComments: boolean; + showMentions: boolean; pageId?: string; }) => { const data = useContext(PostPageContext); @@ -168,8 +168,8 @@ export const ExpandedInteractions = (props: { quotesCount: number; commentsCount: number; className?: string; - showComments?: boolean; - showMentions?: boolean; + showComments: boolean; + showMentions: boolean; pageId?: string; }) => { const data = useContext(PostPageContext); @@ -210,22 +210,6 @@ export const ExpandedInteractions = (props: {
- {!subscribed && !isAuthor && publication && publication.record && ( -
-
-
-
Subscribe to {publication.name}
{" "} - to get updates in Reader, RSS, or via Bluesky Feed -
- -
-
- )} {tagCount > 0 && ( <>
@@ -242,8 +226,7 @@ export const ExpandedInteractions = (props: { ) : ( <>
- {props.quotesCount === 0 || - props.showMentions === false ? null : ( + {props.quotesCount === 0 || !props.showMentions ? null : ( )} - {props.showComments === false ? null : ( + {!props.showComments ? null : (
diff --git a/app/lish/[did]/[publication]/[rkey]/PostPrevNextButtons.tsx b/app/lish/[did]/[publication]/[rkey]/PostPrevNextButtons.tsx index 48a1a99c..403019b7 100644 --- a/app/lish/[did]/[publication]/[rkey]/PostPrevNextButtons.tsx +++ b/app/lish/[did]/[publication]/[rkey]/PostPrevNextButtons.tsx @@ -10,9 +10,7 @@ import { useContext } from "react"; import { SpeedyLink } from "components/SpeedyLink"; import { ArrowRightTiny } from "components/Icons/ArrowRightTiny"; -export const PostPrevNextButtons = (props: { - showPrevNext: boolean | undefined; -}) => { +export const PostPrevNextButtons = (props: { showPrevNext: boolean }) => { let postData = useContext(PostPageContext); let pub = postData?.documents_in_publications[0]?.publications; diff --git a/app/lish/[did]/[publication]/[rkey]/PostSubscribe.tsx b/app/lish/[did]/[publication]/[rkey]/PostSubscribe.tsx new file mode 100644 index 00000000..90b3a8ac --- /dev/null +++ b/app/lish/[did]/[publication]/[rkey]/PostSubscribe.tsx @@ -0,0 +1,45 @@ +"use client"; +import { useContext } from "react"; +import { PostPageContext } from "./PostPageContext"; +import { useIdentityData } from "components/IdentityProvider"; +import { SubscribeWithBluesky } from "app/lish/Subscribe"; +import { getPublicationURL } from "app/lish/createPub/getPublicationURL"; + +export const PostSubscribe = () => { + const data = useContext(PostPageContext); + let { identity } = useIdentityData(); + + let publication = data?.documents_in_publications[0]?.publications; + + let subscribed = + identity?.atp_did && + publication?.publication_subscriptions && + publication?.publication_subscriptions.find( + (s) => s.identity === identity.atp_did, + ); + + let isAuthor = + identity && + identity.atp_did === + data?.documents_in_publications[0]?.publications?.identity_did && + data?.leaflets_in_publications[0]; + + if (!subscribed && !isAuthor && publication && publication.record) + return ( +
+
+
+
Subscribe to {publication.name}
to + get updates in Reader, RSS, or via Bluesky Feed +
+ +
+
+ ); + else return; +}; diff --git a/app/lish/[did]/[publication]/dashboard/PublishedPostsLists.tsx b/app/lish/[did]/[publication]/dashboard/PublishedPostsLists.tsx index d8982373..29929a5b 100644 --- a/app/lish/[did]/[publication]/dashboard/PublishedPostsLists.tsx +++ b/app/lish/[did]/[publication]/dashboard/PublishedPostsLists.tsx @@ -139,8 +139,12 @@ export function PublishedPostsList(props: { quotesCount={quotes} commentsCount={comments} tags={tags} - showComments={pubRecord?.preferences?.showComments} - showMentions={pubRecord?.preferences?.showMentions} + showComments={ + pubRecord?.preferences?.showComments !== false + } + showMentions={ + pubRecord?.preferences?.showMentions !== false + } postUrl={`${getPublicationURL(publication)}/${uri.rkey}`} />
diff --git a/app/lish/[did]/[publication]/dashboard/settings/PostOptions.tsx b/app/lish/[did]/[publication]/dashboard/settings/PostOptions.tsx index 6309ca9b..d3991fc7 100644 --- a/app/lish/[did]/[publication]/dashboard/settings/PostOptions.tsx +++ b/app/lish/[did]/[publication]/dashboard/settings/PostOptions.tsx @@ -54,7 +54,6 @@ export const PostOptions = (props: { }, }); toast({ type: "success", content: Posts Updated! }); - console.log(record.preferences?.showPrevNext); props.setLoading(false); mutate("publication-data"); }} diff --git a/app/lish/[did]/[publication]/page.tsx b/app/lish/[did]/[publication]/page.tsx index 3266835d..7e579840 100644 --- a/app/lish/[did]/[publication]/page.tsx +++ b/app/lish/[did]/[publication]/page.tsx @@ -171,8 +171,12 @@ export default async function Publication(props: { commentsCount={comments} tags={tags} postUrl={`${getPublicationURL(publication)}/${uri.rkey}`} - showComments={record?.preferences?.showComments} - showMentions={record?.preferences?.showMentions} + showComments={ + record?.preferences?.showComments !== false + } + showMentions={ + record?.preferences?.showMentions !== false + } /> diff --git a/app/lish/createPub/CreatePubForm.tsx b/app/lish/createPub/CreatePubForm.tsx index 5c7c8efb..2dbe924e 100644 --- a/app/lish/createPub/CreatePubForm.tsx +++ b/app/lish/createPub/CreatePubForm.tsx @@ -57,7 +57,7 @@ export const CreatePubForm = () => { showInDiscover, showComments: true, showMentions: true, - showPrevNext: false, + showPrevNext: true, }, }); diff --git a/components/Canvas.tsx b/components/Canvas.tsx index 3b3b5903..b0274131 100644 --- a/components/Canvas.tsx +++ b/components/Canvas.tsx @@ -169,8 +169,8 @@ const CanvasMetadata = (props: { isSubpage: boolean | undefined }) => { if (!pub || !pub.publications) return null; let pubRecord = pub.publications.record as PubLeafletPublication.Record; - let showComments = pubRecord.preferences?.showComments; - let showMentions = pubRecord.preferences?.showMentions; + let showComments = pubRecord.preferences?.showComments !== false; + let showMentions = pubRecord.preferences?.showMentions !== false; return (
diff --git a/components/InteractionsPreview.tsx b/components/InteractionsPreview.tsx index 0a4f53b2..c2adf6f3 100644 --- a/components/InteractionsPreview.tsx +++ b/components/InteractionsPreview.tsx @@ -13,14 +13,14 @@ export const InteractionPreview = (props: { commentsCount: number; tags?: string[]; postUrl: string; - showComments: boolean | undefined; - showMentions: boolean | undefined; + showComments: boolean; + showMentions: boolean; share?: boolean; }) => { let smoker = useSmoker(); let interactionsAvailable = - (props.quotesCount > 0 && props.showMentions !== false) || + (props.quotesCount > 0 && props.showMentions) || (props.showComments !== false && props.commentsCount > 0); const tagsCount = props.tags?.length || 0; @@ -38,7 +38,7 @@ export const InteractionPreview = (props: { )} - {props.showMentions === false || props.quotesCount === 0 ? null : ( + {props.showMentions || props.quotesCount === 0 ? null : ( { quotesCount={quotes} commentsCount={comments} tags={tags} - showComments={pubRecord?.preferences?.showComments} - showMentions={pubRecord?.preferences?.showMentions} + showComments={pubRecord?.preferences?.showComments !== false} + showMentions={pubRecord?.preferences?.showMentions !== false} share />
diff --git a/lexicons/api/lexicons.ts b/lexicons/api/lexicons.ts index 6d0acd58..7c46a663 100644 --- a/lexicons/api/lexicons.ts +++ b/lexicons/api/lexicons.ts @@ -1816,7 +1816,7 @@ export const schemaDict = { }, showPrevNext: { type: 'boolean', - default: false, + default: true, }, }, }, diff --git a/lexicons/pub/leaflet/publication.json b/lexicons/pub/leaflet/publication.json index 3e6b5bec..0627addf 100644 --- a/lexicons/pub/leaflet/publication.json +++ b/lexicons/pub/leaflet/publication.json @@ -58,7 +58,7 @@ }, "showPrevNext": { "type": "boolean", - "default": false + "default": true } } }, diff --git a/lexicons/src/publication.ts b/lexicons/src/publication.ts index fa679b3b..57bbbef9 100644 --- a/lexicons/src/publication.ts +++ b/lexicons/src/publication.ts @@ -28,7 +28,7 @@ export const PubLeafletPublication: LexiconDoc = { showInDiscover: { type: "boolean", default: true }, showComments: { type: "boolean", default: true }, showMentions: { type: "boolean", default: true }, - showPrevNext: { type: "boolean", default: false }, + showPrevNext: { type: "boolean", default: true }, }, }, theme: {