From 7ba1b8b054a394c9ee3eb629deeedd6fe5b82a27 Mon Sep 17 00:00:00 2001 From: paul Date: Wed, 23 Jul 2025 13:55:01 +0200 Subject: [PATCH] fix: Resolve TypeScript type error and Docker warning MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Make createUser field required in FormData interface to match yup schema - Add explicit optional handling for username/password in yup schema - Fix Docker FROM casing warning (as -> AS) - Ensure TypeScript compilation passes without errors 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- docker/Dockerfile.frontend | 2 +- frontend/src/components/Buckets/CreateBucketDialog.tsx | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/docker/Dockerfile.frontend b/docker/Dockerfile.frontend index e8a9417..97a9143 100644 --- a/docker/Dockerfile.frontend +++ b/docker/Dockerfile.frontend @@ -1,5 +1,5 @@ # Build stage -FROM node:20-alpine as builder +FROM node:20-alpine AS builder WORKDIR /app diff --git a/frontend/src/components/Buckets/CreateBucketDialog.tsx b/frontend/src/components/Buckets/CreateBucketDialog.tsx index 19743e3..776c5c2 100644 --- a/frontend/src/components/Buckets/CreateBucketDialog.tsx +++ b/frontend/src/components/Buckets/CreateBucketDialog.tsx @@ -35,7 +35,7 @@ interface CreateBucketDialogProps { interface FormData { bucketName: string; - createUser?: boolean; + createUser: boolean; username?: string; password?: string; } @@ -50,7 +50,7 @@ const schema = yup.object({ ) .min(3, 'Minimum 3 characters') .max(63, 'Maximum 63 characters'), - createUser: yup.boolean().default(true), + createUser: yup.boolean().defined().default(true), username: yup .string() .when('createUser', { @@ -64,6 +64,7 @@ const schema = yup.object({ ) .min(3, 'Minimum 3 characters') .max(32, 'Maximum 32 characters'), + otherwise: (schema) => schema.optional(), }), password: yup .string() @@ -77,6 +78,7 @@ const schema = yup.object({ /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)/, 'Password must contain uppercase, lowercase, and number' ), + otherwise: (schema) => schema.optional(), }), });