nexty-flux-kontext 版本更新
提示
- 本章是 nexty-flux-kontext 仓库的版本更新记录。
- 版本号请查看
package.json
文件的version
字段
1.1.0
优化用户权益获取链路,并实现可靠的 SSG 方案。
优化与修复
- 将
AuthProvider.tsx
里调用useSearchParams
下移到登录组件,保持 layout 服务端渲染,查看更新记录
- 更新
components/providers/AuthProvider.tsx
- 更新
app/[locale]/login/LoginPage.tsx
- 更新
app/[locale]/login/page.tsx
- 安装依赖
swr
:pnpm i swr
- 更新
app/[locale]/layout.tsx
- 更新
actions/usage/benefits.ts
,添加客户端获取用户权益的方法getClientUserBenefits
- 新增
hooks/useUserBenefits.ts
,共享用户权益请求、更新方法和数据状态 - 更新
app/[locale]/pricing/FlashSaleBanner.tsx
,由原来调用@/stores/benefitsStore
修改为调用@/hooks/useUserBenefits
,两个文件提供的方法名一样,所以该文件里其他代码无需修改 - 更新
components/layout/CurrentUserBenefitsDisplay.tsx
,由原来调用@/stores/benefitsStore
修改为调用@/hooks/useUserBenefits
,两个文件提供的方法名一样,所以该文件里其他代码无需修改 - 更新
components/header/UserInfo.tsx
- 更新
app/[locale]/(gen-image)/flux-kontext-pro/FluxKontextProClient.tsx
,使用新的乐观更新方法optimisticDeduct
和重新获取数据的方法mutate(revalidateBenefits)
- 更新
app/[locale]/(gen-image)/multi-image-kontext-pro/MultiImageKontextProClient.tsx
,同上 - 更新
app/[locale]/payment/success/page.tsx
,使用重新获取数据的方法mutate(revalidateBenefits)
立即更新权益 - 删除
components/layout/BenefitsErrorBoundary.tsx
- 删除
components/providers/BenefitsInitializer.tsx
- 删除
components/providers/BenefitsProvider.tsx
- 删除
stores/benefitsStore.ts
二开的功能,无论新增积分或者扣除积分,都应当调用 mutate(revalidateBenefits)
立即同步数据库的积分。
- 修复 SSG 实现,查看更新记录
- 更新
app/[locale]/layout.tsx
- 更新
app/[locale]/blogs/[slug]/page.tsx
,从params
取出locale
,而不是使用getLocale()
1.1.1
修复
components/auth/GoogleOneTap.tsx
1.1.2
优化
- 登录按钮、支付按钮重定向到登录页,携带页面路径到 URL,用于登录后重定向,查看更新记录
components/pricing/PricingCTA.tsx
修复
- 修复 URL 参数
next
为空字符串时无法登录的问题,该 bug 由 2.3.0 修改LoginForm.tsx
引起,本次变更做了兜底处理。查看更新记录
app/auth/callback/route.ts
app/auth/confirm/route.ts
1.2.0
升级数据库操作方式
- Supabase 操作升级,支持命令操作
优化
- 更新布局,Dashboard 使用 Shadcn Sidebar 组件重构左右布局,其他页面保持原有的上中下布局,查看更新记录
- 执行
pnpm dlx shadcn@latest add sidebar
- 创建文件夹
app/[locale]/(basic-layout)
,新增文件app/[locale]/(basic-layout)/layout.tsx
- 将
app/[locale]
文件夹下,除了app/[localte]/layout.tsx
和app/[locale]/(protected)
,其他文件和文件夹全部移入app/[localte]/(basic-layout)
- 更新
app/[locale]/layout.tsx
,删除其中的Header
和Footer
引用,删除<main>
标签(不要删除<main>
里面的childeen
) - 新增
app/[locale]/(protected)/dashboard/DashboardSidebar.tsx
- 新增
components/header/SidebarInsetHeader.tsx
- 更新
app/[locale]/(protected)/dashboard/layout.tsx
,使用新的 Sidebar - 在
i18n/message/en/common.json
、i18n/message/en/common.json
和i18n/message/en/common.json
给UserMenus
和AdminMenus
新增目录 icon - 删除
app/[locale]/(protected)/dashboard/Sidebar.tsx
- 删除
app/[locale]/(protected)/dashboard/MobileSidebar.tsx
- 组件样式优化:
components/header/UserInfo.tsx
components/header/UserAvatar.tsx
components/header/MobileMenu.tsx
components/header/HeaderLinks.tsx
components/header/Header.tsx
新增
- 添加管理员 overview 页面,查看更新记录
- 执行
pnpm dlx shadcn@latest add chart
- 迁移新 sql 文件:
supabase/migrations/20250813040158_create_order_stats_function.sql
,supabase/migrations/20250813041245_create_daily_growth_stats_function.sql
,查看更新方法 - 新增 Server Actions
actions/overview
- 新增页面
app/[locale]/(protected)/dashboard/(admin)/overview
- 更新
lib/supabase/middleware.ts
,将/dashboard/overview
添加到管理员权限页面 - 更新
lib/utils.ts
,新增数字格式化方法 - 更新多语言包
- 编辑目录:
i18n/messages/en/common.json
,i18n/messages/ja/common.json
,i18n/messages/zh/common.json
,新增新页面的目录项 - 新增新页面语言包:
i18n/messages/en/Dashboard/Admin/Overview.json
,i18n/messages/ja/Dashboard/Admin/Overview.json
,i18n/messages/zh/Dashboard/Admin/Overview.json
- 编辑
i18n/request.ts
,导入新页面语言包
- 编辑目录:
- 添加管理员查看 orders 页面,查看更新记录
- 新增 Server Actions
actions/orders
- 新增页面
app/[locale]/(protected)/dashboard/(admin)/orders
- 更新
lib/supabase/middleware.ts
,将/dashboard/orders
添加到管理员权限页面 - 更新多语言包
- 编辑目录:
i18n/messages/en/common.json
,i18n/messages/ja/common.json
,i18n/messages/zh/common.json
,新增新页面的目录项 - 新增新页面语言包:
i18n/messages/en/Dashboard/Admin/Orders.json
,i18n/messages/ja/Dashboard/Admin/Orders.json
,i18n/messages/zh/Dashboard/Admin/Orders.json
- 编辑
i18n/request.ts
,导入新页面语言包
- 编辑目录:
修复
- 修复移动端样式问题,查看更新记录
- 更新
components/sectionBG/index.tsx
,修复移动端宽度超出的问题
1.2.1
修复
- 修改谷歌模型环境变量和模型标识
.env.example
app/api/ai/replicate/flux-kontent/submit/prompt-optimizer.ts
app/api/admin/translate/route.ts
1.2.2
修复
- 修复 auth 表同步数据到 users 表的触发器
1.2.3
修复
- 修复一次性付款使用 100% 优惠码无法处理权益升级的问题,查看更新记录
lib/stripe/webhook-handlers.ts
app/api/payment/verify-success/route.ts
优化
进行一些样式和细节优化
1.2.4
修复
- 更新认证重定向URL,使用站点URL而非源URL,查看更新记录
app/auth/callback/route.ts
app/auth/confirm/route.ts