UNPKG

@otitoju/formcraft-core

Version:

🚀 Lightweight, TypeScript-first form management library for React and React Native with built-in validation, zero dependencies, and excellent developer experience

91 lines (77 loc) • 1.47 kB
/* Default styles for web components */ .form-field { margin-bottom: 1rem; } .form-label { display: block; font-size: 0.875rem; font-weight: 500; color: #374151; margin-bottom: 0.5rem; } .form-input, .form-select, .form-textarea { width: 100%; padding: 0.5rem 0.75rem; border: 1px solid #d1d5db; border-radius: 0.375rem; font-size: 1rem; line-height: 1.5; background-color: #ffffff; transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; } .form-input:focus, .form-select:focus, .form-textarea:focus { outline: none; border-color: #3b82f6; box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1); } .form-input.error, .form-select.error, .form-textarea.error { border-color: #ef4444; } .form-input.error:focus, .form-select.error:focus, .form-textarea.error:focus { border-color: #ef4444; box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.1); } .form-textarea { resize: vertical; min-height: 4rem; } .form-checkbox { display: flex; align-items: flex-start; } .form-checkbox-label { display: flex; align-items: center; cursor: pointer; } .form-checkbox-input { width: 1rem; height: 1rem; margin-right: 0.5rem; accent-color: #3b82f6; } .form-checkbox-text { font-size: 0.875rem; color: #374151; } .form-error { display: block; font-size: 0.875rem; color: #ef4444; margin-top: 0.25rem; } /* Utility classes */ .text-red-500 { color: #ef4444; } .ml-1 { margin-left: 0.25rem; }