Some checks failed
🚀 Build & Deploy Image / Determine Build Necessity (push) Failing after 10m14s
🚀 Build & Deploy Image / Build Runtime Base Image (push) Has been skipped
🚀 Build & Deploy Image / Build Docker Image (push) Has been skipped
🚀 Build & Deploy Image / Run Tests & Quality Checks (push) Has been skipped
🚀 Build & Deploy Image / Auto-deploy to Staging (push) Has been skipped
🚀 Build & Deploy Image / Auto-deploy to Production (push) Has been skipped
Security Vulnerability Scan / Check for Dependency Changes (push) Failing after 11m25s
Security Vulnerability Scan / Composer Security Audit (push) Has been cancelled
- Remove middleware reference from Gitea Traefik labels (caused routing issues) - Optimize Gitea connection pool settings (MAX_IDLE_CONNS=30, authentication_timeout=180s) - Add explicit service reference in Traefik labels - Fix intermittent 504 timeouts by improving PostgreSQL connection handling Fixes Gitea unreachability via git.michaelschiemer.de
72 lines
1.7 KiB
JavaScript
72 lines
1.7 KiB
JavaScript
/**
|
|
* Validation Module
|
|
*
|
|
* Provides standalone validation system for fields, forms, and data.
|
|
*
|
|
* Usage:
|
|
* - Import and use directly: import { Validator } from './modules/validation/index.js'
|
|
* - Or use with form-handling module
|
|
* - Or use with LiveComponents
|
|
*
|
|
* Features:
|
|
* - Schema-based validation
|
|
* - Field-level validation
|
|
* - Async validation
|
|
* - Custom validation rules
|
|
* - Integration with form-handling
|
|
* - Integration with LiveComponents
|
|
*/
|
|
|
|
import { Logger } from '../../core/logger.js';
|
|
import { Validator } from './Validator.js';
|
|
import { ValidationRule } from './ValidationRule.js';
|
|
|
|
const ValidationModule = {
|
|
name: 'validation',
|
|
|
|
init(config = {}, state = null) {
|
|
Logger.info('[ValidationModule] Module initialized');
|
|
|
|
// Expose globally for easy access
|
|
if (typeof window !== 'undefined') {
|
|
window.Validator = Validator;
|
|
window.ValidationRule = ValidationRule;
|
|
}
|
|
|
|
return this;
|
|
},
|
|
|
|
/**
|
|
* Create a validator from a schema
|
|
*/
|
|
create(schema = {}) {
|
|
return Validator.create(schema);
|
|
},
|
|
|
|
/**
|
|
* Create a validator from a form element
|
|
*/
|
|
fromForm(form) {
|
|
return Validator.fromForm(form);
|
|
},
|
|
|
|
destroy() {
|
|
if (typeof window !== 'undefined') {
|
|
delete window.Validator;
|
|
delete window.ValidationRule;
|
|
}
|
|
|
|
Logger.info('[ValidationModule] Module destroyed');
|
|
}
|
|
};
|
|
|
|
// Export for direct usage
|
|
export { Validator, ValidationRule };
|
|
|
|
// Export as default for module system
|
|
export default ValidationModule;
|
|
|
|
// Export init function for module system
|
|
export const init = ValidationModule.init.bind(ValidationModule);
|
|
|