Closed jason-capsule42 closed 1 month ago
This pull request introduces a new auro-dropdown
component, which is a customizable dropdown element for interactive content. The implementation includes the main dropdown component, a separate bib (dropdown content) component, and integration with the FloatingUI library for positioning. The PR also includes necessary styles, documentation, and example usage.
sequenceDiagram
actor User
participant AuroDropdown
participant AuroFloatingUI
participant AuroDropdownBib
User->>AuroDropdown: Click on trigger
AuroDropdown->>AuroFloatingUI: handleClick()
AuroFloatingUI->>AuroDropdown: showBib()
AuroDropdown->>AuroDropdownBib: Display dropdown content
AuroFloatingUI->>AuroDropdown: setupHideHandlers()
User->>AuroDropdown: Click outside
AuroFloatingUI->>AuroDropdown: hideBib()
AuroDropdown->>AuroDropdownBib: Hide dropdown content
classDiagram
class AuroDropdown {
+Boolean bordered
+Boolean chevron
+Boolean disabled
+Boolean error
+Boolean inset
+Boolean matchWidth
+Boolean rounded
+Boolean noToggle
+Boolean noHideOnThisFocusLoss
+Boolean isPopoverVisible
+Boolean ready
+Number dropdownWidth
+String placement
+Number tabIndex
+void privateDefaults()
+void connectedCallback()
+void disconnectedCallback()
+void updated(changedProperties)
+void firstUpdated()
+void handleDefaultSlot()
+render()
}
class AuroDropdownBib {
+render()
}
class AuroFloatingUI {
+void position()
+void updateState()
+void setupHideHandlers()
+void handleUpdate(changedProperties)
+void updateCurrentExpandedDropdown()
+void showBib()
+void hideBib()
+void handleClick()
+void handleEvent(event)
+void handleTriggerTabIndex()
+void configure(elem)
}
AuroDropdown --> AuroDropdownBib
AuroDropdown --> AuroFloatingUI
Change | Details | Files |
---|---|---|
Implement main auro-dropdown component |
|
src/dropdown/auro-dropdown.js |
Create separate auro-dropdownBib component for dropdown content |
|
src/dropdown/auro-dropdownBib.js |
Implement FloatingUI integration |
|
src/dropdown/floatingUI.mjs |
Add styles for dropdown component |
|
src/dropdown/style.scss src/dropdown/color.scss src/dropdown/tokens.scss |
Create example select component using auro-dropdown |
|
src/dropdown/select.js |
Update project configuration and documentation |
|
README.md demo/index.md index.js |
Alaska Airlines Pull Request
Before Submitting this pull request:
Development
section note: all pull requests require at least one linked ticketReady For Review
, all ticket's linked underDevelopment
must have their status changed toReady For Review
as wellBy submitting this Pull Request, I confirm that my contribution is made under the terms of the Apache 2.0 license and I have performed a self-review of my own update.
Summary by Sourcery
Integrate FloatingUI and introduce a new dropdown component as a proof of concept. The 'auro-dropdown' component is designed to be interactive and customizable, supporting various features like chevron display and event-driven visibility toggling. Additionally, a 'MySelect' component is added to demonstrate the dropdown's usage in a selectable input context. Documentation is provided to guide users on installation and usage.
New Features:
Enhancements:
Documentation: