Dispatcharr/frontend
Jim McBride c65df2de89
Add real-time validation for cron expressions
- Add validateCronExpression function with comprehensive validation:
  - Checks for exactly 5 parts (minute hour day month weekday)
  - Validates cron syntax (*, ranges, lists, steps)
  - Validates numeric ranges (minute 0-59, hour 0-23, etc.)
  - Returns detailed error messages for each validation failure

- Add cronError state to track validation errors
- Validate on input change with handleScheduleChange
- Display error message below input field
- Disable Save button when cron expression is invalid
- Auto-validate when switching to advanced mode
- Clear errors when switching back to simple mode

User gets immediate feedback on cron syntax errors before attempting to save.
2025-12-09 08:09:56 -06:00
..
public Attempting to fix favicons 2025-04-08 11:49:51 -04:00
src Add real-time validation for cron expressions 2025-12-09 08:09:56 -06:00
.gitignore full mantine refactor 2025-03-11 17:43:16 -04:00
eslint.config.js full mantine refactor 2025-03-11 17:43:16 -04:00
index.html more testing 2025-04-08 11:49:51 -04:00
package-lock.json Switch back to node 24, switch to npm for building frontend. Remove node_modules before starting frontend build. Fixes bug with NPM 2025-09-30 09:22:05 -05:00
package.json Switch back to node 24, switch to npm for building frontend. Remove node_modules before starting frontend build. Fixes bug with NPM 2025-09-30 09:22:05 -05:00
prettier.config.js full mantine refactor 2025-03-11 17:43:16 -04:00
README.md full mantine refactor 2025-03-11 17:43:16 -04:00
vite.config.js Add TV guide utility tests and vitest setup 2025-09-21 10:00:15 -05:00

React + Vite

This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.

Currently, two official plugins are available:

Expanding the ESLint configuration

If you are developing a production application, we recommend using TypeScript and enable type-aware lint rules. Check out the TS template to integrate TypeScript and typescript-eslint in your project.