-
Notifications
You must be signed in to change notification settings - Fork 1
Implement property-based reactivity engine and stabilize layout rendering #167
Copy link
Copy link
Closed
Labels
enhancementNew feature or requestNew feature or request
Description
Objective:
Modernize the Faz Core by replacing the current verbose reactivity model with a streamlined property-based engine and fixing the layout "blink"
issue during component initialization.
Technical Requirements:
- Reactivity Engine:
- Create a standalone utility bindReactive(target, key, value) that maps JS properties to SolidJS signals.
- Refactor FazElement, FazFormElement, and FazPaginator to use this new engine.
- Ensure type safety using keyof and Partial during initialization.
- Layout Stability:
- Initialize components with display: contents to prevent layout jumps.
- Ensure the rendering process remains synchronous relative to the microtask queue to avoid "un-retrofitted" states being painted.
- Cleanup:
- Remove legacy Accessor/Setter tuples and redundant helper methods (like addReactive).
- Standardize child collection logic to be independent of the loading state.
Definition of Done:
- Unit tests for the new reactivity engine passed.
- All existing core components (Form, Paginator) updated and tests passing.
- Proof of Concept (POC) verified: no layout blink and correct Bootstrap rendering.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request