"use client"; import { Button, Input, Label, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Textarea, } from "@mdxui/primitives"; import * as React from "react"; import type { Secret } from "./types"; interface SecretFormProps { secret?: Secret; environment: string; environments: string[]; onSubmit: (secret: Omit) => void; onCancel: () => void; } export function SecretForm({ secret, environment: defaultEnvironment, environments, onSubmit, onCancel, }: SecretFormProps) { const [key, setKey] = React.useState(secret?.key || ""); const [value, setValue] = React.useState(secret?.value || ""); const [description, setDescription] = React.useState( secret?.description || "", ); const [environment, setEnvironment] = React.useState( secret?.environment || defaultEnvironment, ); const handleSubmit = (e: React.FormEvent) => { e.preventDefault(); if (!key.trim() || !value.trim()) return; onSubmit({ key: key.trim(), value: value.trim(), description: description.trim() || undefined, environment, }); }; return (
setKey(e.target.value.toUpperCase().replace(/[^A-Z0-9_]/g, "_")) } required autoFocus />

Use UPPER_CASE with underscores (e.g., API_KEY, DATABASE_URL)