Re-org
This commit is contained in:
@@ -13,6 +13,7 @@ import {
|
|||||||
AppBskyFeedDefs,
|
AppBskyFeedDefs,
|
||||||
AppBskyFeedPost,
|
AppBskyFeedPost,
|
||||||
AtUri,
|
AtUri,
|
||||||
|
moderatePost,
|
||||||
ModerationDecision,
|
ModerationDecision,
|
||||||
RichText as RichTextAPI,
|
RichText as RichTextAPI,
|
||||||
} from '@atproto/api'
|
} from '@atproto/api'
|
||||||
@@ -22,7 +23,6 @@ import {useQueryClient} from '@tanstack/react-query'
|
|||||||
import {HandleRef, measureHandle} from '#/lib/hooks/useHandleRef'
|
import {HandleRef, measureHandle} from '#/lib/hooks/useHandleRef'
|
||||||
import {usePalette} from '#/lib/hooks/usePalette'
|
import {usePalette} from '#/lib/hooks/usePalette'
|
||||||
import {InfoCircleIcon} from '#/lib/icons'
|
import {InfoCircleIcon} from '#/lib/icons'
|
||||||
import {moderatePost_wrapped as moderatePost} from '#/lib/moderatePost_wrapped'
|
|
||||||
import {makeProfileLink} from '#/lib/routes/links'
|
import {makeProfileLink} from '#/lib/routes/links'
|
||||||
import {useLightboxControls} from '#/state/lightbox'
|
import {useLightboxControls} from '#/state/lightbox'
|
||||||
import {useModerationOpts} from '#/state/preferences/moderation-opts'
|
import {useModerationOpts} from '#/state/preferences/moderation-opts'
|
||||||
@@ -48,8 +48,8 @@ import {PostAlerts} from '#/components/moderation/PostAlerts'
|
|||||||
import {RichText} from '#/components/RichText'
|
import {RichText} from '#/components/RichText'
|
||||||
import {Embed as StarterPackCard} from '#/components/StarterPack/StarterPackCard'
|
import {Embed as StarterPackCard} from '#/components/StarterPack/StarterPackCard'
|
||||||
import {SubtleWebHover} from '#/components/SubtleWebHover'
|
import {SubtleWebHover} from '#/components/SubtleWebHover'
|
||||||
import * as atp from '#/types/atproto'
|
import * as bsky from '#/types/bsky'
|
||||||
import {Embed, EmbedType,parseEmbed} from '#/types/atproto/post'
|
import {Embed as TEmbed, EmbedType, parseEmbed} from '#/types/bsky/post'
|
||||||
|
|
||||||
export type CommonProps = {
|
export type CommonProps = {
|
||||||
moderation?: ModerationDecision
|
moderation?: ModerationDecision
|
||||||
@@ -63,7 +63,7 @@ export type PostEmbedProps = CommonProps & {
|
|||||||
embed?: AppBskyFeedDefs.PostView['embed']
|
embed?: AppBskyFeedDefs.PostView['embed']
|
||||||
}
|
}
|
||||||
|
|
||||||
export function PostEmbed({embed: rawEmbed, ...rest}: PostEmbedProps) {
|
export function Embed({embed: rawEmbed, ...rest}: PostEmbedProps) {
|
||||||
const embed = parseEmbed(rawEmbed)
|
const embed = parseEmbed(rawEmbed)
|
||||||
|
|
||||||
switch (embed.type) {
|
switch (embed.type) {
|
||||||
@@ -100,7 +100,7 @@ function MediaEmbed({
|
|||||||
embed,
|
embed,
|
||||||
...rest
|
...rest
|
||||||
}: CommonProps & {
|
}: CommonProps & {
|
||||||
embed: Embed
|
embed: TEmbed
|
||||||
}) {
|
}) {
|
||||||
switch (embed.type) {
|
switch (embed.type) {
|
||||||
case 'images': {
|
case 'images': {
|
||||||
@@ -138,7 +138,7 @@ function RecordEmbed({
|
|||||||
embed,
|
embed,
|
||||||
...rest
|
...rest
|
||||||
}: CommonProps & {
|
}: CommonProps & {
|
||||||
embed: Embed
|
embed: TEmbed
|
||||||
}) {
|
}) {
|
||||||
switch (embed.type) {
|
switch (embed.type) {
|
||||||
case 'feed': {
|
case 'feed': {
|
||||||
@@ -398,7 +398,7 @@ function QuoteEmbed({
|
|||||||
|
|
||||||
const richText = React.useMemo(() => {
|
const richText = React.useMemo(() => {
|
||||||
if (
|
if (
|
||||||
!atp.dangerousIsType<AppBskyFeedPost.Record>(
|
!bsky.dangerousIsType<AppBskyFeedPost.Record>(
|
||||||
quote.record,
|
quote.record,
|
||||||
AppBskyFeedPost.isRecord,
|
AppBskyFeedPost.isRecord,
|
||||||
)
|
)
|
||||||
@@ -464,9 +464,7 @@ function QuoteEmbed({
|
|||||||
disableLinks
|
disableLinks
|
||||||
/>
|
/>
|
||||||
) : null}
|
) : null}
|
||||||
{quote.embed && (
|
{quote.embed && <Embed embed={quote.embed} moderation={moderation} />}
|
||||||
<PostEmbed embed={quote.embed} moderation={moderation} />
|
|
||||||
)}
|
|
||||||
</Link>
|
</Link>
|
||||||
</ContentHider>
|
</ContentHider>
|
||||||
</View>
|
</View>
|
||||||
@@ -1,10 +1,10 @@
|
|||||||
import React from 'react'
|
import React from 'react'
|
||||||
import {View} from 'react-native'
|
import {View} from 'react-native'
|
||||||
import {$Typed,AppBskyEmbedRecord} from '@atproto/api'
|
import {$Typed, AppBskyEmbedRecord} from '@atproto/api'
|
||||||
|
|
||||||
import {PostEmbedViewContext} from '#/view/com/util/post-embeds'
|
import {PostEmbedViewContext} from '#/view/com/util/post-embeds'
|
||||||
import {atoms as a, native, useTheme} from '#/alf'
|
import {atoms as a, native, useTheme} from '#/alf'
|
||||||
import {PostEmbed} from '#/components/embeds/PostEmbed'
|
import {Embed} from '#/components/Post/Embed'
|
||||||
import {MessageContextProvider} from './MessageContext'
|
import {MessageContextProvider} from './MessageContext'
|
||||||
|
|
||||||
let MessageItemEmbed = ({
|
let MessageItemEmbed = ({
|
||||||
@@ -17,7 +17,7 @@ let MessageItemEmbed = ({
|
|||||||
return (
|
return (
|
||||||
<MessageContextProvider>
|
<MessageContextProvider>
|
||||||
<View style={[a.my_xs, t.atoms.bg, native({flexBasis: 0})]}>
|
<View style={[a.my_xs, t.atoms.bg, native({flexBasis: 0})]}>
|
||||||
<PostEmbed
|
<Embed
|
||||||
embed={embed}
|
embed={embed}
|
||||||
allowNestedQuotes
|
allowNestedQuotes
|
||||||
viewContext={PostEmbedViewContext.Feed}
|
viewContext={PostEmbedViewContext.Feed}
|
||||||
|
|||||||
@@ -38,13 +38,13 @@ import {PostMeta} from '#/view/com/util/PostMeta'
|
|||||||
import {Text} from '#/view/com/util/text/Text'
|
import {Text} from '#/view/com/util/text/Text'
|
||||||
import {PreviewableUserAvatar} from '#/view/com/util/UserAvatar'
|
import {PreviewableUserAvatar} from '#/view/com/util/UserAvatar'
|
||||||
import {atoms as a} from '#/alf'
|
import {atoms as a} from '#/alf'
|
||||||
import {PostEmbed} from '#/components/embeds/PostEmbed'
|
|
||||||
import {Pin_Stroke2_Corner0_Rounded as PinIcon} from '#/components/icons/Pin'
|
import {Pin_Stroke2_Corner0_Rounded as PinIcon} from '#/components/icons/Pin'
|
||||||
import {Repost_Stroke2_Corner2_Rounded as RepostIcon} from '#/components/icons/Repost'
|
import {Repost_Stroke2_Corner2_Rounded as RepostIcon} from '#/components/icons/Repost'
|
||||||
import {ContentHider} from '#/components/moderation/ContentHider'
|
import {ContentHider} from '#/components/moderation/ContentHider'
|
||||||
import {LabelsOnMyPost} from '#/components/moderation/LabelsOnMe'
|
import {LabelsOnMyPost} from '#/components/moderation/LabelsOnMe'
|
||||||
import {PostAlerts} from '#/components/moderation/PostAlerts'
|
import {PostAlerts} from '#/components/moderation/PostAlerts'
|
||||||
import {AppModerationCause} from '#/components/Pills'
|
import {AppModerationCause} from '#/components/Pills'
|
||||||
|
import {Embed} from '#/components/Post/Embed'
|
||||||
import {ProfileHoverCard} from '#/components/ProfileHoverCard'
|
import {ProfileHoverCard} from '#/components/ProfileHoverCard'
|
||||||
import {RichText} from '#/components/RichText'
|
import {RichText} from '#/components/RichText'
|
||||||
import {SubtleWebHover} from '#/components/SubtleWebHover'
|
import {SubtleWebHover} from '#/components/SubtleWebHover'
|
||||||
@@ -521,7 +521,7 @@ let PostContent = ({
|
|||||||
) : undefined}
|
) : undefined}
|
||||||
{postEmbed ? (
|
{postEmbed ? (
|
||||||
<View style={[a.pb_xs]}>
|
<View style={[a.pb_xs]}>
|
||||||
<PostEmbed
|
<Embed
|
||||||
embed={postEmbed}
|
embed={postEmbed}
|
||||||
moderation={moderation}
|
moderation={moderation}
|
||||||
onOpen={onOpenEmbed}
|
onOpen={onOpenEmbed}
|
||||||
|
|||||||
Reference in New Issue
Block a user