Submit posts

This commit is contained in:
Dan Abramov
2024-10-23 18:56:13 +01:00
parent ed9deed638
commit c9fb496fa4
2 changed files with 19 additions and 8 deletions
+1 -6
View File
@@ -409,12 +409,7 @@ let PostCtrls = ({
)} )}
<Dialog.Outer control={submitControl}> <Dialog.Outer control={submitControl}>
<Dialog.Handle /> <Dialog.Handle />
<FeedSelectDialog <FeedSelectDialog control={submitControl} postUri={post.uri} />
control={submitControl}
dids={[]}
onChangeDids={() => {}}
profiles={[]}
/>
</Dialog.Outer> </Dialog.Outer>
</View> </View>
) )
+18 -2
View File
@@ -5,7 +5,10 @@ import {msg} from '@lingui/macro'
import {useLingui} from '@lingui/react' import {useLingui} from '@lingui/react'
import {isWeb} from '#/platform/detection' import {isWeb} from '#/platform/detection'
import {writeFeedSubmissionRecords} from '#/state/queries/feedgens'
import {useAgent} from '#/state/session'
import {ListMethods} from '#/view/com/util/List' import {ListMethods} from '#/view/com/util/List'
import * as Toast from '#/view/com/util/Toast'
import {UserAvatar} from '#/view/com/util/UserAvatar' import {UserAvatar} from '#/view/com/util/UserAvatar'
import {atoms as a, native, useTheme, web} from '#/alf' import {atoms as a, native, useTheme, web} from '#/alf'
import {Button, ButtonText} from '#/components/Button' import {Button, ButtonText} from '#/components/Button'
@@ -39,13 +42,16 @@ type Item =
export function FeedSelectDialog({ export function FeedSelectDialog({
control, control,
postUri,
}: { }: {
control: Dialog.DialogOuterProps['control'] control: Dialog.DialogOuterProps['control']
postUri: string
}) { }) {
const t = useTheme() const t = useTheme()
const {_} = useLingui() const {_} = useLingui()
const listRef = React.useRef<ListMethods>(null) const listRef = React.useRef<ListMethods>(null)
const inputRef = React.useRef<TextInput>(null) const inputRef = React.useRef<TextInput>(null)
const agent = useAgent()
const [uris, setUris] = React.useState<string[]>([]) const [uris, setUris] = React.useState<string[]>([])
@@ -168,8 +174,16 @@ export function FeedSelectDialog({
variant={isWeb ? 'ghost' : 'solid'} variant={isWeb ? 'ghost' : 'solid'}
color="primary" color="primary"
style={[a.z_20]} style={[a.z_20]}
onPress={() => { onPress={async () => {
console.log(uris) await writeFeedSubmissionRecords({
agent,
records: uris.map(feedUri => ({
feedUri,
postUri,
})),
})
Toast.show('Post submitted')
control.close()
}}> }}>
<ButtonText>Submit</ButtonText> <ButtonText>Submit</ButtonText>
</Button> </Button>
@@ -183,6 +197,8 @@ export function FeedSelectDialog({
searchText, searchText,
control, control,
setSearchText, setSearchText,
postUri,
agent,
]) ])
return ( return (