feat: implement comprehensive Form UI library with React Hook Form integration, Zod validation, and i18n support.

This commit is contained in:
Firman Ramdhani
2026-06-15 18:40:22 +07:00
parent 00a2f218cc
commit a72b73bac4
45 changed files with 2064 additions and 10 deletions
@@ -0,0 +1,7 @@
{
"validation": {
"required": "{{field}} is required",
"min_length": "{{field}} must be at least {{min}} characters",
"invalid_email": "Invalid email format"
}
}
@@ -0,0 +1,7 @@
{
"validation": {
"required": "{{field}} wajib diisi",
"min_length": "{{field}} minimal {{min}} karakter",
"invalid_email": "Format email tidak valid"
}
}
+4 -2
View File
@@ -2,6 +2,8 @@ import i18n from 'i18next';
import { initReactI18next } from 'react-i18next';
import commonEn from './locales/en/common.json';
import commonId from './locales/id/common.json';
import validationEn from './locales/en/validation.json';
import validationId from './locales/id/validation.json';
const DEFAULT_LANGUAGE = 'id';
const SUPPORTED_LANGUAGES = ['en', 'id'] as const;
@@ -9,8 +11,8 @@ const SUPPORTED_LANGUAGES = ['en', 'id'] as const;
export type SupportedLanguage = (typeof SUPPORTED_LANGUAGES)[number];
export const resources = {
en: { common: commonEn.common },
id: { common: commonId.common },
en: { common: commonEn.common, validation: validationEn.validation },
id: { common: commonId.common, validation: validationId.validation },
} as const;
export interface I18nStorageAdapter {