fix: 添加rerun接口
This commit is contained in:
parent
d3d1e5fede
commit
363295a3fe
|
|
@ -115,61 +115,31 @@ export default function Sync() {
|
|||
.filter((fav: GetUserFavoritesResponse['favorites'][number]) => fav.template && !fav.template.isDeleted)
|
||||
.map((fav: GetUserFavoritesResponse['favorites'][number]) => transformTemplateToMediaItem(fav.template!))
|
||||
} else if (activeTab === 'new') {
|
||||
if (isAuthenticated) {
|
||||
const { data, error } = await loadTemplates({
|
||||
limit,
|
||||
page: 1,
|
||||
sortBy: 'createdAt',
|
||||
sortOrder: 'desc',
|
||||
search: searchTextRef.current,
|
||||
})
|
||||
if (error || !data?.templates) {
|
||||
setHasMore(false)
|
||||
return
|
||||
}
|
||||
newItems = data.templates.map(transformTemplateToMediaItem)
|
||||
} else {
|
||||
const { data, error } = await loadPublicTemplates({
|
||||
limit,
|
||||
sortBy: 'createdAt',
|
||||
sortOrder: 'desc',
|
||||
search: searchTextRef.current,
|
||||
})
|
||||
if (error || !data?.templates) {
|
||||
setHasMore(false)
|
||||
return
|
||||
}
|
||||
newItems = data.templates.map(transformTemplateToMediaItem)
|
||||
const { data, error } = await loadTemplates({
|
||||
limit,
|
||||
page: 1,
|
||||
sortBy: 'createdAt',
|
||||
sortOrder: 'desc',
|
||||
search: searchTextRef.current,
|
||||
})
|
||||
if (error || !data?.templates) {
|
||||
setHasMore(false)
|
||||
return
|
||||
}
|
||||
newItems = data.templates.map(transformTemplateToMediaItem)
|
||||
} else {
|
||||
if (isAuthenticated) {
|
||||
const { data, error } = await loadTemplates({
|
||||
limit,
|
||||
page: 1,
|
||||
sortBy: 'likeCount',
|
||||
sortOrder: 'desc',
|
||||
search: searchTextRef.current,
|
||||
})
|
||||
if (error || !data?.templates) {
|
||||
setHasMore(false)
|
||||
return
|
||||
}
|
||||
newItems = data.templates.map(transformTemplateToMediaItem)
|
||||
} else {
|
||||
const { data, error } = await loadPublicTemplates({
|
||||
limit,
|
||||
sortBy: 'likeCount',
|
||||
sortOrder: 'desc',
|
||||
search: searchTextRef.current,
|
||||
})
|
||||
if (error || !data?.templates) {
|
||||
setHasMore(false)
|
||||
return
|
||||
}
|
||||
newItems = data.templates.map(transformTemplateToMediaItem)
|
||||
const { data, error } = await loadTemplates({
|
||||
limit,
|
||||
page: 1,
|
||||
sortBy: 'likeCount',
|
||||
sortOrder: 'desc',
|
||||
search: searchTextRef.current,
|
||||
})
|
||||
if (error || !data?.templates) {
|
||||
setHasMore(false)
|
||||
return
|
||||
}
|
||||
newItems = data.templates.map(transformTemplateToMediaItem)
|
||||
}
|
||||
|
||||
if (newItems.length < limit) {
|
||||
|
|
|
|||
4
bun.lock
4
bun.lock
|
|
@ -13,7 +13,7 @@
|
|||
"@react-navigation/elements": "^2.6.3",
|
||||
"@react-navigation/native": "^7.1.8",
|
||||
"@repo/core": "1.0.1",
|
||||
"@repo/sdk": "1.0.1",
|
||||
"@repo/sdk": "1.0.3",
|
||||
"@sentry/react-native": "^7.8.0",
|
||||
"@shopify/flash-list": "^2.2.0",
|
||||
"@stripe/react-stripe-js": "^5.4.1",
|
||||
|
|
@ -603,7 +603,7 @@
|
|||
|
||||
"@repo/core": ["@repo/core@1.0.1", "https://gitea.bowongai.com/api/packages/bowong/npm/%40repo%2Fcore/-/1.0.1/core-1.0.1.tgz", {}, "sha512-dzdae2NBT0L4GWCtz6PscmaRvElGFXWeJ46vQhDYc2z49wjnRYRxZgIcwB5bxXjfYZF3sj0cnbbs5mz8F16oAw=="],
|
||||
|
||||
"@repo/sdk": ["@repo/sdk@1.0.1", "https://gitea.bowongai.com/api/packages/bowong/npm/%40repo%2Fsdk/-/1.0.1/sdk-1.0.1.tgz", { "dependencies": { "@repo/core": "1.0.1", "reflect-metadata": "^0.2.1", "zod": "^4.2.1" } }, "sha512-jaBLNIiisMiHprbE2b8XyQyKANULHD13Q4PzGmgm5TFevVYhNJMpHTCxP5LIfm+sMXzJYcehJnB7Pok/qaoSeA=="],
|
||||
"@repo/sdk": ["@repo/sdk@1.0.3", "https://gitea.bowongai.com/api/packages/bowong/npm/%40repo%2Fsdk/-/1.0.3/sdk-1.0.3.tgz", { "dependencies": { "@repo/core": "1.0.1", "reflect-metadata": "^0.2.1", "zod": "^4.2.1" } }, "sha512-R/pYYruEakDbW3elM6KYxnrUU6cfrBxJL6vI1fspYfL4gAvBO3evXlHdkarY/m8Oxb6cyqKRg0SNcE36uFYKug=="],
|
||||
|
||||
"@rtsao/scc": ["@rtsao/scc@1.1.0", "", {}, "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g=="],
|
||||
|
||||
|
|
|
|||
|
|
@ -4,17 +4,36 @@ import {
|
|||
RunTemplateInput,
|
||||
TemplateController,
|
||||
TemplateGenerationController,
|
||||
RerunTemplateSchema
|
||||
} from '@repo/sdk'
|
||||
import { useCallback, useState } from 'react'
|
||||
|
||||
import { type ApiError } from '@/lib/types'
|
||||
|
||||
import { useError } from '../data/use-error'
|
||||
import z from 'zod'
|
||||
|
||||
export const useTemplateActions = () => {
|
||||
const [loading, setLoading] = useState(false)
|
||||
const [error, setError] = useState<ApiError | null>(null)
|
||||
|
||||
const reRunTemplate = useCallback(async (params: z.infer<typeof RerunTemplateSchema>) => {
|
||||
setLoading(true)
|
||||
setError(null)
|
||||
|
||||
const template = root.get(TemplateController)
|
||||
const { data, error } = await useError(async () => await template.rerun(params))
|
||||
|
||||
if (error) {
|
||||
setError(error)
|
||||
setLoading(false)
|
||||
return { generationId: null, error }
|
||||
}
|
||||
|
||||
setLoading(false)
|
||||
return { generationId: data?.generationId, error: null }
|
||||
}, [])
|
||||
|
||||
const runTemplate = useCallback(async (params: RunTemplateInput) => {
|
||||
setLoading(true)
|
||||
setError(null)
|
||||
|
|
@ -90,5 +109,6 @@ export const useTemplateActions = () => {
|
|||
createGeneration,
|
||||
deleteGeneration,
|
||||
batchDeleteGenerations,
|
||||
reRunTemplate
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@
|
|||
},
|
||||
"dependencies": {
|
||||
"@repo/core": "1.0.1",
|
||||
"@repo/sdk": "1.0.1",
|
||||
"@repo/sdk": "1.0.3",
|
||||
"@better-auth/expo": "^1.4.5",
|
||||
"@expo/vector-icons": "^15.0.3",
|
||||
"@react-native-async-storage/async-storage": "^2.2.0",
|
||||
|
|
|
|||
Loading…
Reference in New Issue