Skip to content

Add collapsible component wrapper for Base UI#28

Closed
devin-ai-integration[bot] wants to merge 7 commits intomainfrom
devin/1752574646-add-collapsible-component
Closed

Add collapsible component wrapper for Base UI#28
devin-ai-integration[bot] wants to merge 7 commits intomainfrom
devin/1752574646-add-collapsible-component

Conversation

@devin-ai-integration
Copy link
Copy Markdown
Contributor

@devin-ai-integration devin-ai-integration bot commented Jul 15, 2025

Add prop descriptions for CollapsiblePanel hidden_until_found and keep_mounted

Summary

Added missing prop descriptions for hidden_until_found and keep_mounted properties in the CollapsiblePanel class. The descriptions were sourced directly from the official Base UI GitHub repository to ensure accuracy and consistency with the upstream component documentation.

Changes:

  • Added description for hidden_until_found: Explains browser's built-in page search functionality and hidden="until-found" behavior
  • Added description for keep_mounted: Explains DOM mounting behavior when panel is hidden
  • Updated both .py and .pyi files for consistency
  • Descriptions follow existing comment patterns in the codebase

Review & Testing Checklist for Human


Diagram

%%{ init : { "theme" : "default" }}%%
graph TD
    A["reflex_ui/components/base/collapsible.py"]:::major-edit
    B["reflex_ui/components/base/collapsible.pyi"]:::major-edit
    C["CollapsiblePanel class"]:::context
    D["hidden_until_found prop"]:::context
    E["keep_mounted prop"]:::context
    F["Base UI GitHub repo"]:::context

    A --> C
    B --> C
    C --> D
    C --> E
    F --> |"sourced descriptions"| D
    F --> |"sourced descriptions"| E

    subgraph Legend
        L1[Major Edit]:::major-edit
        L2[Minor Edit]:::minor-edit  
        L3[Context/No Edit]:::context
    end

    classDef major-edit fill:#90EE90
    classDef minor-edit fill:#87CEEB
    classDef context fill:#FFFFFF
Loading

Notes

  • This completes the prop documentation that was missing from the original collapsible component implementation
  • The demo and transition classes mentioned in the original task were already implemented in previous work
  • All pre-commit hooks passed (ruff check, ruff format, codespell, pyright)
  • Session requested by Carlos Cutillas (carlos@reflex.dev)
  • Link to Devin run: https://app.devin.ai/sessions/ddfe92d2015544f1b8bef1ec7c5f45da

- Implement CollapsibleRoot, CollapsibleTrigger, CollapsiblePanel components
- Add HighLevelCollapsible wrapper with trigger and content props
- Follow existing component patterns from dialog and menu components
- Add to lazy loading system in __init__.py
- Include component in demo app for testing
- All pre-commit hooks pass (ruff, codespell, pyright)

Co-Authored-By: Carlos Cutillas <carlos@reflex.dev>
@devin-ai-integration
Copy link
Copy Markdown
Contributor Author

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR. Add '(aside)' to your comment to have me ignore it.
  • Look at CI failures and help fix them

⚙️ Control Options:

  • Disable automatic comment and CI monitoring

devin-ai-integration bot and others added 6 commits July 15, 2025 10:25
- Remove unused Literal import from collapsible.py
- Remove unused Any and Literal imports from collapsible.pyi
- Fixes pre-commit check failures in CI

Co-Authored-By: Carlos Cutillas <carlos@reflex.dev>
- Apply ruff format changes to collapsible.py and collapsible.pyi
- Ensures all pre-commit hooks pass

Co-Authored-By: Carlos Cutillas <carlos@reflex.dev>
- Remove class_name prop declaration from CollapsiblePanel
- class_name is already inherited from BaseUIComponent
- Fixes 'overrides a field of the same name but is missing a default value' error

Co-Authored-By: Carlos Cutillas <carlos@reflex.dev>
- Add proper Base UI transition classes to PANEL with data-[ending-style]:h-0 data-[starting-style]:h-0
- Update demo to match Base UI example with chevron icon and recovery keys styling
- Component tested successfully in browser with smooth transitions and event handling
- Follows official Base UI collapsible example pattern

Co-Authored-By: Carlos Cutillas <carlos@reflex.dev>
- Add descriptions sourced from Base UI GitHub repository
- Update both .py and .pyi files for consistency
- Descriptions explain browser search functionality and DOM mounting behavior

Co-Authored-By: Carlos Cutillas <carlos@reflex.dev>
- Complete prop descriptions for CollapsiblePanel class
- Both hidden_until_found and keep_mounted now have descriptions from Base UI docs
- Ensures consistency between .py and .pyi files

Co-Authored-By: Carlos Cutillas <carlos@reflex.dev>
@devin-ai-integration
Copy link
Copy Markdown
Contributor Author

Closing due to inactivity for more than 7 days. Configure here.

@carlosabadia carlosabadia deleted the devin/1752574646-add-collapsible-component branch July 31, 2025 13:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants