1.1 KiB
1.1 KiB
Fix Properties Panel Element Detection
To fix the element detection issue, reread CLAUDE.md first.
Problem Analysis
The properties panel has timing issues detecting rendered elements because:
- Elements are rendered asynchronously via lit's
render()in the dashboard - Properties panel tries to find elements immediately without waiting for render completion
- Element search only looks at direct children, missing nested/shadow DOM elements
Implementation Plan
1. Add proper synchronization
- Add a delay or await render completion before element detection
- Use MutationObserver or lit's updateComplete promises
2. Improve element search algorithm
- Search recursively through all descendants, not just direct children
- Handle shadow DOM boundaries properly
- Support elements wrapped in containers
3. Add retry mechanism
- If element not found, retry after a delay
- Add maximum retry attempts to prevent infinite loops
- Clear error state when element is eventually found
Code Changes Required
- Modify
wcc-properties.tscreateProperties() method - Add element search utility function
- Improve error handling and user feedback