2026-03-23 Daily Log
Dependency Guards & Formula Builder Cleanup
Achievements
- Implemented Field Disabling Guard: Added a proactive check in
RightPanelStaticComponentto prevent disabling fields that are referenced in formulas, rules, or validation rules. This prevents runtime calculation errors in the renderer. - Improved Property Panel UX: Integrated
DynaformStateService.areAnyKeysReferencedto provide real-time feedback via toast notifications when a user attempts to disable a dependent field. - Formula Builder Cleanup: Removed the unused
@Output() validationResultfromFormulaBuilderComponent, reducing unnecessary event dispatches and improving code maintainability.
Decisions
- Proactive Property-Level Validation: Decided to block the "Disabled" toggle at the source (property panel) rather than waiting for a template-wide save validation. This provides a better authoring experience by preventing invalid states immediately.
- Dependency Detection: Used the existing state service to scan all expression types (formulas, rules, validation) to ensure comprehensive protection.
Files Modified
src/ifile-teapot-web-dynaforms/components/dynaform-builder/right-panel-static/right-panel-static.component.tssrc/ifile-teapot-web-dynaforms/components/dynaform-builder/formula-builder/formula-builder.component.tsdocs/dynaforms-history.md