Version 3 of the kit: - Radix UI replaced with Base UI (using the Shadcn UI patterns) - next-intl replaces react-i18next - enhanceAction deprecated; usage moved to next-safe-action - main layout now wrapped with [locale] path segment - Teams only mode - Layout updates - Zod v4 - Next.js 16.2 - Typescript 6 - All other dependencies updated - Removed deprecated Edge CSRF - Dynamic Github Action runner
37 lines
720 B
TypeScript
37 lines
720 B
TypeScript
'use server';
|
|
|
|
import { revalidatePath } from 'next/cache';
|
|
|
|
import * as z from 'zod';
|
|
|
|
import {
|
|
createKitEnvDeps,
|
|
createKitEnvService,
|
|
findWorkspaceRoot,
|
|
} from '@kit/mcp-server/env';
|
|
|
|
const Schema = z.object({
|
|
name: z.string().min(1),
|
|
value: z.string(),
|
|
mode: z.enum(['development', 'production']),
|
|
});
|
|
|
|
export async function updateEnvironmentVariableAction(
|
|
props: z.infer<typeof Schema>,
|
|
) {
|
|
const { name, mode, value } = Schema.parse(props);
|
|
|
|
const rootPath = findWorkspaceRoot(process.cwd());
|
|
const service = createKitEnvService(createKitEnvDeps(rootPath));
|
|
|
|
const result = await service.update({
|
|
key: name,
|
|
value,
|
|
mode,
|
|
});
|
|
|
|
revalidatePath('/variables');
|
|
|
|
return result;
|
|
}
|