[APP-834] Allow @ing someone in post directly from profile (#1241)

* setup `initMention` for mobile

* setup creating post with profile tagged on web
This commit is contained in:
Ansh
2023-08-22 11:01:00 -07:00
committed by GitHub
parent 3aadc43c89
commit 16b265a861
9 changed files with 99 additions and 5 deletions
+3
View File
@@ -14,6 +14,7 @@ export const Composer = observer(
onPost,
onClose,
quote,
mention,
}: {
active: boolean
winHeight: number
@@ -21,6 +22,7 @@ export const Composer = observer(
onPost?: ComposerOpts['onPost']
onClose: () => void
quote?: ComposerOpts['quote']
mention?: ComposerOpts['mention']
}) => {
const pal = usePalette('default')
const initInterp = useAnimatedValue(0)
@@ -65,6 +67,7 @@ export const Composer = observer(
onPost={onPost}
onClose={onClose}
quote={quote}
mention={mention}
/>
</Animated.View>
)
+3
View File
@@ -15,6 +15,7 @@ export const Composer = observer(
quote,
onPost,
onClose,
mention,
}: {
active: boolean
winHeight: number
@@ -22,6 +23,7 @@ export const Composer = observer(
quote: ComposerOpts['quote']
onPost?: ComposerOpts['onPost']
onClose: () => void
mention?: ComposerOpts['mention']
}) => {
const pal = usePalette('default')
@@ -40,6 +42,7 @@ export const Composer = observer(
quote={quote}
onPost={onPost}
onClose={onClose}
mention={mention}
/>
</View>
</View>
+16 -1
View File
@@ -150,7 +150,22 @@ const NavItem = observer(
function ComposeBtn() {
const store = useStores()
const onPressCompose = () => store.shell.openComposer({})
const {getState} = useNavigation()
const getProfileHandle = () => {
const {routes} = getState()
const currentRoute = routes[routes.length - 1]
if (currentRoute.name === 'Profile') {
const {name: handle} =
currentRoute.params as CommonNavigatorParams['Profile']
if (handle === store.me.handle) return undefined
return handle
}
return undefined
}
const onPressCompose = () =>
store.shell.openComposer({mention: getProfileHandle()})
return (
<TouchableOpacity
+1
View File
@@ -68,6 +68,7 @@ const ShellInner = observer(() => {
replyTo={store.shell.composerOpts?.replyTo}
onPost={store.shell.composerOpts?.onPost}
quote={store.shell.composerOpts?.quote}
mention={store.shell.composerOpts?.mention}
/>
<ModalsContainer />
<Lightbox />
+1
View File
@@ -49,6 +49,7 @@ const ShellInner = observer(() => {
replyTo={store.shell.composerOpts?.replyTo}
quote={store.shell.composerOpts?.quote}
onPost={store.shell.composerOpts?.onPost}
mention={store.shell.composerOpts?.mention}
/>
{!isDesktop && <BottomBarWeb />}
<ModalsContainer />