diff --git a/app/client/components/ui/input-otp.tsx b/app/client/components/ui/input-otp.tsx index 11575d92..1b31c06a 100644 --- a/app/client/components/ui/input-otp.tsx +++ b/app/client/components/ui/input-otp.tsx @@ -1,6 +1,5 @@ import * as React from "react"; import { OTPInput, OTPInputContext } from "input-otp"; -import { MinusIcon } from "lucide-react"; import { cn } from "~/client/lib/utils"; @@ -55,12 +54,8 @@ function InputOTPSlot({ ); } -function InputOTPSeparator({ ...props }: React.ComponentProps<"div">) { - return ( -
- -
- ); +function InputOTPSeparator({ ...props }: React.ComponentProps<"hr">) { + return
; } export { InputOTP, InputOTPGroup, InputOTPSlot, InputOTPSeparator }; diff --git a/app/client/modules/auth/routes/__tests__/login.test.tsx b/app/client/modules/auth/routes/__tests__/login.test.tsx index 4c429d34..750ddde4 100644 --- a/app/client/modules/auth/routes/__tests__/login.test.tsx +++ b/app/client/modules/auth/routes/__tests__/login.test.tsx @@ -1,7 +1,7 @@ import { afterEach, describe, expect, test, vi } from "vitest"; import { HttpResponse, http, server } from "~/test/msw/server"; import { cleanup, render, screen, userEvent, waitFor } from "~/test/test-utils"; -import { PASSKEY_LOGIN_FAILED_ERROR } from "~/lib/sso-errors"; +import { getLoginErrorDescription, PASSKEY_LOGIN_FAILED_ERROR } from "~/lib/sso-errors"; const { mockGetLoginOptions, mockNavigate, mockPasskeySignIn } = vi.hoisted(() => ({ mockGetLoginOptions: vi.fn(async () => ({ hasPasskeySignIn: false })), @@ -125,11 +125,7 @@ describe("LoginPage", () => { render(, { withSuspense: true }); - expect( - await screen.findByText( - "Passkey sign-in failed. If 2FA is enabled, use a passkey protected by a PIN, biometrics, or screen lock, or sign in with your password and authenticator code.", - ), - ).toBeTruthy(); + expect(await screen.findByText(getLoginErrorDescription(PASSKEY_LOGIN_FAILED_ERROR))).toBeTruthy(); }); test("does not show error message for invalid error codes", async () => { diff --git a/app/client/modules/auth/routes/login.tsx b/app/client/modules/auth/routes/login.tsx index 2b18ef2e..a9081fe7 100644 --- a/app/client/modules/auth/routes/login.tsx +++ b/app/client/modules/auth/routes/login.tsx @@ -228,6 +228,7 @@ export function LoginPage({ error }: LoginPageProps = {}) { setTrustDevice(e.target.checked)} className="h-4 w-4" diff --git a/app/client/modules/volumes/components/volume-forms/nfs-form.tsx b/app/client/modules/volumes/components/volume-forms/nfs-form.tsx index b70e619a..a812151e 100644 --- a/app/client/modules/volumes/components/volume-forms/nfs-form.tsx +++ b/app/client/modules/volumes/components/volume-forms/nfs-form.tsx @@ -101,6 +101,7 @@ export const NFSForm = ({ form }: Props) => {
field.onChange(e.target.checked)} className="rounded border-gray-300" diff --git a/app/client/modules/volumes/components/volume-forms/rclone-form.tsx b/app/client/modules/volumes/components/volume-forms/rclone-form.tsx index 5f6aed13..e987bea7 100644 --- a/app/client/modules/volumes/components/volume-forms/rclone-form.tsx +++ b/app/client/modules/volumes/components/volume-forms/rclone-form.tsx @@ -108,6 +108,7 @@ export const RcloneForm = ({ form }: Props) => {
field.onChange(e.target.checked)} className="rounded border-gray-300" diff --git a/app/client/modules/volumes/components/volume-forms/smb-form.tsx b/app/client/modules/volumes/components/volume-forms/smb-form.tsx index 34130e9c..2b8d5b98 100644 --- a/app/client/modules/volumes/components/volume-forms/smb-form.tsx +++ b/app/client/modules/volumes/components/volume-forms/smb-form.tsx @@ -60,6 +60,7 @@ export const SMBForm = ({ form }: Props) => {
{ field.onChange(e.target.checked); @@ -179,6 +180,7 @@ export const SMBForm = ({ form }: Props) => {
field.onChange(e.target.checked)} className="rounded border-gray-300" @@ -187,8 +189,8 @@ export const SMBForm = ({ form }: Props) => {
- Keep the old behavior by forcing the SMB mount to present every file and directory as owned by the - container user and group instead of using server reported ownership. + Keep the old behavior by forcing the SMB mount to present every file and directory as owned + by the container user and group instead of using server reported ownership. @@ -205,6 +207,7 @@ export const SMBForm = ({ form }: Props) => {
field.onChange(e.target.checked)} className="rounded border-gray-300" diff --git a/app/client/modules/volumes/components/volume-forms/webdav-form.tsx b/app/client/modules/volumes/components/volume-forms/webdav-form.tsx index 3d43892b..d61e4cbf 100644 --- a/app/client/modules/volumes/components/volume-forms/webdav-form.tsx +++ b/app/client/modules/volumes/components/volume-forms/webdav-form.tsx @@ -105,6 +105,7 @@ export const WebDAVForm = ({ form }: Props) => {
field.onChange(e.target.checked)} className="rounded border-gray-300" @@ -128,6 +129,7 @@ export const WebDAVForm = ({ form }: Props) => {
field.onChange(e.target.checked)} className="rounded border-gray-300" diff --git a/bun.lock b/bun.lock index a6aa7db0..a2c30f7e 100644 --- a/bun.lock +++ b/bun.lock @@ -140,7 +140,7 @@ "class-variance-authority": "^0.7.1", "clsx": "^2.1.1", "fumadocs-core": "^16.9.3", - "fumadocs-mdx": "^14.3.2", + "fumadocs-mdx": "^15.0.10", "fumadocs-ui": "^16.9.3", "lucide-react": "^1.17.0", "react": "^19.2.6",